8 pontos por xguru 2020-02-11 | 3 comentários | Compartilhar no WhatsApp

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

 
gwanryo 2020-02-13

Como esperado, o último é o mais certeiro.

 
sduck4 2020-02-11

Parece que em breve vai surgir um bot que também resolve os problemas apontados neste artigo kkk

 
xguru 2020-02-11

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.