Esta postagem refere-se ao Google ReCaptcha v2 (não a versão mais recente)
Recentemente, o Google introduziu um sistema de verificação "captcha" simplificado ( vídeo ) que permite que os usuários passem o "captcha" apenas clicando nele.
Mas como ele pode diferenciar um bot de uma pessoa com apenas um clique?
De acordo com esta resposta (assumindo uma implementação semelhante), no início "recaptcha" gera uma chave oculta e a anexa a um elemento de entrada oculto, além de preguiçosamente renderizar uma caixa de seleção (não uma caixa de seleção real, input
mas a div
) com a mesma chave que quando clicada, envia uma solicitação assíncrona (XHR) aos servidores de back-end do Google para marcá-la como uma chave de verificação válida (ou seja, uma chave que precisa ser validada quando o formulário é enviado).
Mas por que os robôs não podem automatizar esse clique (pelo menos, robôs baseados em navegador)?
Como isso pode funcionar?
Respostas:
Isso é especulação, mas com base na referência do Google ao "mecanismo de análise de risco" que eles usam ( http://googleonlinesecurity.blogspot.com/2014/12/are-you-robot-introducing-no-captcha.html )
Eu suponho que ele analise como você se comportou antes de clicar, como o cursor se moveu para a verificação (caminho orgânico / aceleração), em que parte da caixa de seleção foi clicada (locais aleatórios ou sempre no centro), navegador impressão digital, cookies e conteúdo do Google, clique no histórico de localização vinculado à sua impressão digital ou conta, se detectar uma etc.
É bastante difícil falsificar o comportamento "orgânico" de tal maneira que enganaria um mecanismo de detecção de padrões de aprendizado contínuo. Nos casos em que não há certeza, ele ainda solicita que você corresponda a uma sequência CAPTCHA real.
fonte
Um novo artigo foi lançado com vários testes contra o reCAPTCHA:
https://www.blackhat.com/docs/asia-16/materials/asia-16-Sivakorn-Im-Not-a-Human-Breaking-the-Google-reCAPTCHA-wp.pdf
Alguns destaques:
O Google já corrigiu a vulnerabilidade dos cookies e provavelmente está restringindo alguns comportamentos baseados em IPs.
Outra descoberta interessante é que o Google executa uma VM em JavaScript que ofusca grande parte do código e comportamento do reCAPTCHA. Esta VM é conhecida como botguard e é usada para proteger outros serviços além do reCAPTCHA:
https://github.com/neuroradiology/InsideReCaptcha
ATUALIZAÇÃO 2017
Um artigo recente (de agosto) foi publicado no WOOT 2017, atingindo 85% de precisão na solução dos desafios de áudio noCAPTCHA reCAPTCHA:
http://uncaptcha.cs.umd.edu/papers/uncaptcha_woot17.pdf
ATUALIZAÇÃO 2018
O Google está introduzindo o reCAPTCHA v3, que parece um "mecanismo de previsão de pontuação humana" calibrado por site. Ele pode ser instalado em diferentes páginas de um site (funcionando como um script do Google Analytics) para ajudar o reCAPTCHA e o proprietário do site a entender o comportamento de humanos versus bots antes de preencher um reCAPTCHA.
https://www.google.com/recaptcha/intro/v3beta.html
fonte
mouse events don't affect the results
Isso é interessante, pois eu (e acredito que muitos outros) achamos que era a principal coisa que afetava os resultados. Pensei no celular, em vez da caixa de seleção, os usuários foram solicitados a selecionar todas as imagens semelhantes, porque não há movimentos do mouse na tela sensível ao toque. No entanto, olhando para o post introdutório novamente, parece que pode não ser o caso. Talvez selecionar imagens seja em vez de digitar texto distorcido, não em vez de marcar uma caixa. Você (ou alguém) sabe se o reCAPTCHA permite simplesmente marcar uma caixa no celular?Tab
eEnter
para marcar a caixa de seleção, ele mostrará as imagens captcha para você selecioná-las com base em um critério.Tab
eEnter
não mostrará a captura de imagem o tempo todo. Na maioria das vezes pressionandoTab
eEnter
é aceitoMeus Bots estão rodando bem contra o ReCaptcha.
Aqui está a minha solução.
Deixe seu bot fazer isso Passos:
Primeiro, escreva uma função de movimentação do mouse humano para mover o mouse como um B-Spline (solicite o código-fonte). Este é o ponto mais importante.
Use também para obter melhores resultados uma VPN como https://www.purevpn.com
Para cada Recpatcha, siga estas etapas:
Se você usar o IP do switch VPN primeiro
Limpar todos os cookies do navegador
Limpar tudo Cache do navegador
Defina um destes Useragents por Random:
uma. Mozilla / 5.0 (compatível; MSIE 9.0; Windows NT 6.1; Trident / 5.0)
b. Mozilla / 5.0 (Windows NT 6.1; WOW64; rv: 44.0) Gecko / 20100101 Firefox / 44.0
5 Mova o mouse com o mouse humano Mova a função de um RandomPoint para a imagem Eu não sou um robô toda vez com diferentes intervalos aleatórios de 10x10
Então clique sempre com atraso aleatório entre
WM_LBUTTONDOWN
e
WM_LBUTTONUP
Capturar captura de tela do Image Captcha
Enviar captura de tela para
http://www.deathbycaptcha.com
ou
https://2captcha.com
e deixá-los resolver.
Depois de receber o clique cooridado do captcha solver, use o mouse humano mover Funktion para mover e clique em Recaptcha Images
Use a função Mover do mouse humano para mover e clique no botão Verificar novamente.
Em 75%, todos os trys Recaptcha serão resolvidos
Chears Google
Tom
fonte
Posso apresentar meu palpite, já que essa não é uma tecnologia aberta.
O Google diz que é sobre pentear informações de antes, durante e depois para distinguir humano de robô. Mas estou mais interessado no clique final na caixa de seleção.
Digamos, os dados do POST (CAPTCHA resolvido) possuem um campo chamado impressão digital, uma sequência calculada a partir do comportamento do usuário. Eu acho que pode haver um campo sobre esse local da caixa de seleção. Acho que essa caixa de seleção está em um sistema de coordenadas gerado aleatoriamente pelo back-end do Google e criptografado pela chave pública do meu site. Portanto, um robô pode "adivinhar / calcular" um local sobre essa caixa, mas quando o proprietário do site faz a consulta GET com chave privada para verificar a identidade do usuário, o Google descriptografa o sistema de coordenadas e diz se o usuário clica no lugar certo. Portanto, apenas um clique com o botão direito do mouse (com algumas compensações, é uma caixa quadrada) neste sistema de coordenadas aleatório de propriedade apenas do Google e dos proprietários do site.
fonte
Lembre-se de que o Google também usa o reCaptcha junto com
reconhecer exclusivamente Usuários / Navegadores sem cookies!
fonte