A terceira versão do reCAPTCHA funciona em segundo plano despercebida pelos usuários

Em maio deste ano, na conferência da Google, o Google I / O 2018 apresentou a terceira versão da tecnologia reCAPTCHA - reCAPTCHA v3 (beta) . Como você sabe, esse é o sistema mais popular, como o CAPTCHA, criado para bloquear bots, ou seja, ações automatizadas em diferentes serviços.

O sistema foi criticado por explorar o trabalho humano gratuito (no caso da primeira versão, que o Google costumava digitalizar livros), por complicar a vida de pessoas com deficiência visual e outras doenças como dislexia. Ainda assim, o reCAPTCHA é criticado por ser muito complicado : é difícil ou impossível para as pessoas responderem corretamente à pergunta: o teste se torna simplesmente absurdo. A ilustração à esquerda mostra alguns exemplos da primeira versão do reCAPTCHA. A situação não melhorou muito com o lançamento da segunda versão (onde você precisa selecionar as imagens que contêm o objeto especificado).

Mas a terceira versão é uma questão completamente diferente. Certamente não machucará ninguém, porque funciona perfeitamente para usuários que usam métodos de análise comportamental.

Primeiro, um pouco de história. A primeira versão do reCAPTCHA apareceu em 2007 e serviu a um bom objetivo: ao mesmo tempo em que bloqueia spam e bots, também ajudou na digitalização de livros. Em 2011, foi usado para refinar os resultados do OCR na digitalização dos arquivos do The New York Times (mais de 13 milhões de artigos desde 1851) e do Google Livros.

Desde 2012, fragmentos de fotos de casas do serviço Google Street View foram adicionados ao sistema. Desde 2013, o Google começou a aplicar a análise comportamental das ações do usuário no navegador ( análise de risco avançada ) e, em 2014, foi implementada uma segunda versão do sistema, na qual era necessário selecionar várias imagens "corretas" de um conjunto de nove imagens, mas ao mesmo tempo foi possível passar no teste em um clique. Se as ações eram como uma pessoa, o usuário passou no teste sem resolver nenhum problema: basta clicar no botão "Eu não sou um robô" (o chamado NoCAPTCHA). Se as ações são semelhantes a um bot, ele recebeu um teste sofisticado com reconhecimento de objetos em imagens.


NoCAPTCHA

Aqui o problema era que, além da análise comportamental, os cookies também eram verificados no computador - e o NoCAPTCHA era praticamente inacessível aos navegadores no modo anônimo ou àqueles que limpam os cookies no final da sessão.

Terceira versão



Apresentação da terceira versão do sistema na conferência Google I / O 2018

Na terceira versão do reCAPTCHA, a análise comportamental é aprimorada (ou o Google rastreia os usuários, se alguém apresentar isso dessa maneira), ou seja, o mesmo sistema de análise de risco avançada, análise de risco avançada.

Agora, o sistema funciona em segundo plano e fica invisível para os usuários. É suficiente fazer o download da biblioteca reCAPTCHA junto com a página e executar grecaptcha.execute em um determinado momento ou imediatamente no momento em que a página é carregada. E isso é tudo. O usuário não percebe nada - e você receberá uma avaliação desse usuário do servidor reCAPTCHA por meio da API JavaScript com base em sua interação com o site e outros parâmetros.

  <script src="https://www.google.com/recaptcha/api.js?render=reCAPTCHA_site_key"></script> <script> grecaptcha.ready(function() { grecaptcha.execute('reCAPTCHA_site_key', {action: 'homepage'}).then(function(token) { ... }); }); </script> 

Há sugestões de que, além de mover o cursor do mouse, o sistema começou a rastrear outros parâmetros, como cliques no mouse. Só se pode adivinhar sobre isso. O Google não fornece nenhuma informação sobre o trabalho interno do sistema para não ajudar spammers e proprietários de bots.

Do ponto de vista do webmaster, talvez a principal diferença entre a terceira versão seja que, mediante solicitação pela API, o servidor reCAPTCHA não produz um valor binário, mas uma estimativa no intervalo de 0,0 (provável bot) a 1,0 (provável pessoa) para essa solicitação específica. A resposta é enviada no formato JSON:

 { "success": true|false, // whether this request was a valid reCAPTCHA token for your site "score": number // the score for this request (0.0 - 1.0) "action": string // the action name for this request (important to verify) "challenge_ts": timestamp, // timestamp of the challenge load (ISO format yyyy-MM-dd'T'HH:mm:ssZZ) "hostname": string, // the hostname of the site where the reCAPTCHA was solved "error-codes": [...] // optional } 

Como você pode ver na resposta do servidor, o reCAPTCHA v3 apresenta um novo conceito de "ações". Se você definir nomes diferentes de ações em locais diferentes do site, o sistema começará a se "adaptar" a diferentes necessidades: ele se tornará adaptável (análise de risco).

Em outras palavras, o proprietário do site escolhe o "nível de recorte" e quais ações executar para usuários acima ou abaixo desse nível em páginas diferentes. Por padrão, o nível é definido como 0,5. Por exemplo, na página principal, é recomendável bloquear apenas raspadores explícitos (digamos, apenas 0,0). No formulário de autorização, você pode filtrar todos abaixo de 0,5, oferecendo autenticação de dois fatores ou verificação do endereço para correspondência, a fim de se proteger de ataques de força bruta. Agora, o teste pode ser executado várias vezes em uma página, no momento certo e de forma invisível para o usuário.

Para participar do teste beta da terceira versão do sistema, você deve se registrar nesta página .



Source: https://habr.com/ru/post/pt415075/


All Articles