Internet,  Segurança

CAPTCHA reverso ou negativo. Protegendo-se contra SPAMs

CAPTCHA é um acrônimo do inglês Completely Automated Public Turing Test To Tell Computers and Humans Apart que identifica sistemas automatizados de diferenciação de humanos e máquinas. Ele serve para evitar SPAM, automatização de consultas de sistemas terceiros, chupação de conteúdo online, etc. A idéia principal do CAPTCHA é exibir um desafio que apenas um ser humano seja capaz de resolver, barrando um computador.

captcha-registrobr-fail

Os mecanismos mais conhecidos são as exibições de uma imagem contendo uma sequência alfanumérica para que seja transcrita em uma caixa de texto normal. Depois que os robôs se tornaram capazes de “ler” imagens, os CAPTCHAs tem se adequado, tornando-se um pouco mais complexos, desde colocando imagens borradas (que dificultam até a leitura humana. #FAIL) até escrevendo desafios, como os do Registro.BR. Exemplos: Quais os caracteres em amarelo? Quais dos caracteres não são consoantes? Quais dos caracteres são números? Infelizmente, no caso do Registro.br, existe um link direto para consultas sem passar pelo CAPTCHA! #FAIL2.

A lógica do CAPTCHA

captcha-sample-01Ao acessar uma página de formulário, qualquer visitante (um ser humano ou um robô indexador) pode preenchê-lo e enviar os dados para o destinatário. Como a maioria desses formulários é de contato por e-mail, isso acaba sendo mais uma porta de entrada para SPAM, potencializado pelo poder computacional, através dos robôs.

Quando existe um CAPTCHA no formulário, as chances dessa mensagem SPAM ser barrada é muito grande e depende da complexidade do mecanismo. O robô preenche o campo necessário do CAPTCHA e o sistema checa se esse valor preenchido é o correto, o que ele disponibilizou para consulta. Isso é controlado por sessão ou cookies criptografados.

Dependendo do CAPTCHA, ele pode exibir uma mensagem de erro ou simplesmente ignorar a mensagem, evitando que lixo seja encaminhado por e-mail ou gravado em um banco de dados de suporte, por exemplo.

O problema do CAPTCHA que é resolvido pelo CAPTCHA REVERSO

captcha-scrambledCada vez que os robôs melhoram a sua tecnologia e conseguem identificar as imagens, a solução mais imediata é detonar um pouco mais a visualização dessas imagens, pra dificultar a leitura por uma máquina. O grande problema é que, muitas vezes, nem nós, os humanos, conseguimos decifrar os caracteres que nos mostram e ficamos impedidos de utilizar aquele sistema ou formulário.

A utilização de um CAPTCHA REVERSO é perfeita para esses casos, pois além de ser limpa e não intrusiva, não penaliza os humanos, só as máquinas.

Com essa solução, nós inserimos um campo texto qualquer, com um nome genérico e escondemos ele via JavaScript ou CSS. Como a grande maioria dos usuários possui essa tecnologia disponí­vel e habilitada e os robôs não, somente os robôs verão e preencherão o campo genérico. No lado do servidor, como sabemos que o campo não será exibido e preenchido por humanos, ignoramos toda e qualquer submissão que venha com tal campo não-nulo.

Qual o problema que isso pode gerar? Aqueles usuários que por algum motivo não utilizam um navegador que suporte CSS ou JavaScript (acredite, são poucos, mas existem) irão ver o campo. Como resolver? Colocar junto ao mesmo, um texto dizendo que o campo abaixo não deve ser preenchido. 😉

Existem vários programinhas prontos, extensões de linguagens, etc., que geram o mecanismo automaticamente, mas não encontrei um plugin de WordPress para isso. Se você conhece, por favor, indique aqui nos comentários. Ou quem sabe você não esteja disposto a fazer um? 😉

Subscribe
Notify of
guest
16 Comentários
Newest
Oldest Most Voted
Inline Feedbacks
View all comments