Como o Turnstile e o Cloudflare Bot Challenge protegem o tráfego da Web

Specialist in Anti-Bot Strategies
Com o crescimento contínuo da tecnologia na Internet, a segurança dos recursos da web se torna uma preocupação para proprietários e desenvolvedores de sites. É cada vez mais importante usar medidas de proteção que funcionem contra ataques automatizados e bots.
Turnstile e Bot Challenge, duas das tecnologias inovadoras da Cloudflare, combinam usabilidade e segurança confiável. Vamos dar uma olhada mais profunda em seus processos operacionais.
O principal objetivo do desenvolvimento dessas tecnologias, segundo os desenvolvedores, é reduzir ataques de bots prejudiciais sem prejudicar usuários reais.
Como a Cloudflare encontra bots
O serviço utiliza técnicas de detecção de bots ativas (lado do cliente) e passivas (lado do servidor).
Métodos passivos
Identificação de botnet
Dispositivos, endereços IP e comportamentos vinculados a botnets perigosas são catalogados pela Cloudflare. Qualquer dispositivo que se acredita estar conectado a uma dessas redes é imediatamente bloqueado ou apresenta mais problemas do lado do cliente que precisam ser resolvidos.
Reputação do IP
A reputação do endereço IP de um usuário é determinada por uma série de variáveis, incluindo sua localização, ISP e histórico de reputação. Por exemplo, um endereço IP de um data center ou de um serviço VPN confiável será menos confiável do que um de uma residência. Como o tráfego do cliente real nunca deve originar-se de fora de sua área de serviço, o site também pode impor restrições ao acesso de tais áreas.
Cabeçalhos para solicitações HTTP
A Cloudflare usa cabeçalhos de solicitação HTTP para verificação. Se seu analisador tiver um agente de usuário que não seja de navegador, ele pode ser confundido com um bot. Se um bot enviar uma solicitação sem nenhum cabeçalho, o serviço pode bloqueá-lo. ou se, com base em seu agente de usuário, houver cabeçalhos que não correspondem.
Impressão digital TLS
Quando você se conecta ao servidor, uma impressão digital TLS é gerada. Para determinar o hash de impressão digital, o sistema examina curvas elípticas, extensões e conjuntos de cifras.
Se o cabeçalho do agente de usuário da solicitação do cliente corresponder ao agente de usuário associado ao hash de impressão digital gravado, o sistema de segurança conclui que a solicitação originou-se de um navegador normal. Caso esses dados não correspondam, a solicitação será negada.
Impressão digital HTTP/2
Toda solicitação do cliente terá uma impressão digital HTTP/2 estática, como acontece com a impressão digital TLS. A Cloudflare sempre verifica a autenticidade de uma solicitação comparando o par de impressão digital e agente de usuário da solicitação com o par da lista branca armazenada no banco de dados.
A impressão digital TLS e HTTP/2 são quase as mesmas. Essas duas são tecnicamente as mais difíceis de monitorar com base em solicitações, de todas as técnicas de detecção de bots passivas que a Cloudflare emprega. No entanto, são as mais cruciais.
Métodos ativos
Escutando eventos
As páginas da web podem ter uma função addEventListener adicionada pela Cloudflare usando JavaScript, o que permite que o site monitore a entrada do usuário, como cliques do mouse, teclas digitadas e movimentos. Há uma grande chance de o usuário ser um bot se eles não estiverem sendo usados.
Solicitação de API
APIs exclusivas de um determinado navegador. Esses requisitos estão presentes em certos navegadores, mas podem não estar em outros.
Por exemplo, a propriedade window.chrome é exclusiva do navegador da web Chrome. Ficará claro que algo está errado se os dados que você está transmitindo indicam que você está usando o Chrome, mas você está enviando-os usando o agente de usuário do Firefox.
API para carimbos de data e hora
O serviço acompanha as métricas de velocidade do usuário usando APIs de carimbo de data e hora, como Date.now() e window.performance.timing.navigationStart. O usuário será bloqueado se as tags não corresponderem ao seu comportamento online típico.
Detecção de navegador automática
Somente configurações automatizadas possuem as qualidades que a Cloudflare exige. PhantomJS e Selenium são usados, por exemplo, quando window.document.__selenium_unwrapped ou window.callPhantom estão presentes. Se isso for descoberto, você será banido por razões óbvias.
Identificação do SandBox
Verificações, como as do NodeJS que usam JSDOM, interrompem contextos de navegador simulados. O script tem a capacidade de procurar o arquivo de objeto de processo, que é exclusivo do NodeJS.
Function.prototype.toString.call(functionName) também pode ser usado para descobrir se as funções foram modificadas.
Cloudflare Turnstile
O Cloudflare Turnstile é uma substituição inteligente para o CAPTCHA. Ele pode ser incluído em qualquer recurso do site sem exigir que os usuários enviem um captcha ou direcionem o tráfego por meio da Cloudflare.
Chame o servidor de origem para corrigir o Cloudflare CDN
Seria preferível se pudéssemos enviar a solicitação diretamente para o servidor de origem, pois a Cloudflare só pode bloquear solicitações que passam por sua rede. Sem segurança no caminho de seus dados necessários!
Você deve seguir duas etapas:
1. Localize o endereço IP da fonte.
Os registros DNS são mascarados em sites seguros. No entanto, isso provavelmente não é o caso em todos os lugares: mensagens de e-mail, serviços desatualizados e subdomínios desprotegidos podem ainda fazer referência ao servidor de origem, mesmo que sejam acessíveis sob o mesmo nome de domínio.
2. Faça uma solicitação de dados ao servidor de origem.
Fantástico, você ainda tem o endereço IP original! O que devo fazer com ele agora, no entanto? Embora possa não funcionar, você pode tentar colá-lo na barra de URL do seu navegador. Esta é uma configuração padrão do servidor para aceitar conexões apenas usando um nome de domínio legítimo e não um endereço IP. Devemos ficar longe deles, pois o DNS é usado com nomes de domínio.
Como o Cloudflare realmente emprega medidas de segurança como salas de espera, essa abordagem frequentemente falha.
Uma sala de espera: o que é? Para verificar se você não é um robô, seu navegador deve concluir algumas tarefas. Uma mensagem "Acesso negado" aparecerá se você for sinalizado como um bot. Caso contrário, ocorrerá um redirecionamento automático para o site real.
Por um breve período, você estará na área de espera do Cloudflare. O nível de segurança do destino e o quão bem seu analisador passa nos testes determinarão o tempo preciso. Você terá algum tempo para navegar no site depois de concluir a tarefa.
Como posso corrigir a sala de espera no Cloudflare? Idealmente, demonstre sua humanidade completando tarefas de JavaScript. Analisar o desafio JavaScript do Cloudflare para compreender o algoritmo responsável por gerar a tarefa e confirmar a resposta é uma estratégia viável, no entanto. para que o script possa ser redesenhado.
Selecionar um Agente de Usuário com cautela e usar proxies residenciais premium são essenciais ao entrar em contato com Bot Challenge e Turnstile.
Conclusão
Levando em consideração tudo o que foi dito acima, a abordagem mais simples é ter fé nas tecnologias criadas para passar o Cloudflare Bot Challenge e Turnstile para recursos como Scrapeless, que oferece uma solução eficiente para esses tipos de segurança a um custo significativamente menor que os outros.
Está cansado de CAPTCHAs e bloqueios contínuos de web scraping?
Scrapeless: a melhor solução de scraping online tudo-em-um disponível!
Utilize nosso formidável conjunto de ferramentas para liberar todo o potencial da sua extração de dados:
Melhor resolvedor de CAPTCHA
Resolução automatizada de CAPTCHAs complexos para garantir o scraping contínuo e suave.
Experimente gratuitamente!
Na Scrapeless, acessamos apenas dados disponíveis publicamente, cumprindo rigorosamente as leis, regulamentos e políticas de privacidade do site aplicáveis. O conteúdo deste blog é apenas para fins de demonstração e não envolve quaisquer atividades ilegais ou infratoras. Não oferecemos garantias e nos isentamos de qualquer responsabilidade pelo uso de informações deste blog ou de links de terceiros. Antes de se envolver em qualquer atividade de scraping, consulte seu consultor jurídico e revise os termos de serviço do site de destino ou obtenha as permissões necessárias.