Como detectar web bots 101
(antoinevastel.com)Reconhecimento por comportamento:
-
No lado do servidor: páginas por sessão, número de requisições, diferença de tempo por página
-
No lado do cliente: diferença de tempo em movimento do mouse/cliques/rolagem/entrada de teclado
Reconhecimento por fingerprint:
-
TCP ou TLS passivo
-
Navegador: verificar propriedades específicas de navegadores headless (PhantomJS, Puppeteer etc.), verificar se o UA e o real são diferentes. Red Pills (verificar se é um ambiente de VM)
E, por fim, CAPTCHAs
3 comentários
Como esperado, o último é o mais certeiro.
Parece que em breve vai surgir um bot que também resolve os problemas apontados neste artigo kkk
A parte de verificar se o UA é de verdade é interessante.
Ao chamar
eval.toString().length, o Firefox e o Safari retornam 37, o Chrome 33 e o IE 39,então eles verificam se a informação enviada no UA corresponde mesmo a um navegador real e, se os dois forem diferentes, consideram que é um bot.