13 KiB
Descobrindo o CloudFlare
☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥
- Você trabalha em uma empresa de segurança cibernética? Você quer ver sua empresa anunciada no HackTricks? Ou você quer ter acesso à última versão do PEASS ou baixar o HackTricks em PDF? Verifique os PLANOS DE ASSINATURA!
- Descubra A Família PEASS, nossa coleção exclusiva de NFTs
- Adquira o swag oficial do PEASS & HackTricks
- Junte-se ao 💬 grupo Discord ou ao grupo telegram ou siga-me no Twitter 🐦@carlospolopm.
- Compartilhe suas técnicas de hacking enviando PRs para o repositório hacktricks e repositório hacktricks-cloud.
Técnicas para tentar descobrir servidores web por trás do CloudFlare:
Técnicas
- Você também pode usar algum serviço que forneça os registros históricos de DNS do domínio. Talvez a página da web esteja sendo executada em um endereço IP usado anteriormente.
- O mesmo pode ser alcançado verificando os certificados SSL históricos que podem estar apontando para o endereço IP de origem.
- Verifique também os registros DNS de outros subdomínios que apontam diretamente para IPs, pois é possível que outros subdomínios estejam apontando para o mesmo servidor (talvez para oferecer FTP, e-mail ou qualquer outro serviço).
- Se você encontrar um SSRF dentro da aplicação web, pode abusar dele para obter o endereço IP do servidor.
Procure uma string única da página da web em navegadores como shodan (e talvez google e similares?). Talvez você possa encontrar um endereço IP com esse conteúdo.
- De maneira semelhante, em vez de procurar uma string única, você pode procurar pelo ícone do favicon com a ferramenta: https://github.com/karma9874/CloudFlare-IP ou com https://github.com/pielco11/fav-up
- Isso não funcionará com muita frequência porque o servidor deve enviar a mesma resposta quando acessado pelo endereço IP, mas nunca se sabe.
Ferramentas
- Procure o domínio em http://www.crimeflare.org:82/cfs.html ou https://crimeflare.herokuapp.com. Ou use a ferramenta CloudPeler (que usa essa API)
- Procure o domínio em https://leaked.site/index.php?resolver/cloudflare.0/
- CloudFlair é uma ferramenta que pesquisará usando certificados Censys que contenham o nome de domínio, em seguida, procurará por IPv4s dentro desses certificados e, finalmente, tentará acessar a página da web nesses IPs.
- Censys
- Shodan
- Bypass-firewalls-by-DNS-history
- Se você tiver um conjunto de IPs potenciais onde a página da web está localizada, você pode usar https://github.com/hakluke/hakoriginfinder
# You can check if the tool is working with
prips 1.0.0.0/30 | hakoriginfinder -h one.one.one.one
# If you know the company is using AWS you could use the previous tool to search the
## web page inside the EC2 IPs
DOMAIN=something.com
WIDE_REGION=us
for ir in `curl https://ip-ranges.amazonaws.com/ip-ranges.json | jq -r '.prefixes[] | select(.service=="EC2") | select(.region|test("^us")) | .ip_prefix'`; do
echo "Checking $ir"
prips $ir | hakoriginfinder -h "$DOMAIN"
done
Descobrindo o Cloudflare a partir de máquinas AWS
Para uma descrição mais detalhada desse processo, consulte:
{% embed url="https://trickest.com/blog/cloudflare-bypass-discover-ip-addresses-aws/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}
# Find open ports
sudo masscan --max-rate 10000 -p80,443 $(curl -s https://ip-ranges.amazonaws.com/ip-ranges.json | jq -r '.prefixes[] | select(.service=="EC2") | .ip_prefix' | tr '\n' ' ') | grep "open" > all_open.txt
# Format results
cat all_open.txt | sed 's,.*port \(.*\)/tcp on \(.*\),\2:\1,' | tr -d " " > all_open_formated.txt
# Search actual web pages
httpx -silent -threads 200 -l all_open_formated.txt -random-agent -follow-redirects -json -no-color -o webs.json
# Format web results and remove eternal redirects
cat webs.json | jq -r "select((.failed==false) and (.chain_status_codes | length) < 9) | .url" | sort -u > aws_webs.json
# Search via Host header
httpx -json -no-color -list aws_webs.json -header Host: cloudflare.malwareworld.com -threads 250 -random-agent -follow-redirects -o web_checks.json
Bypassando o Cloudflare através do Cloudflare
Autenticação de Origem Autorizada
Esse mecanismo depende de certificados SSL do cliente para autenticar as conexões entre os servidores de proxy reverso do Cloudflare e o servidor de origem, o que é chamado de mTLS.
Em vez de configurar seu próprio certificado, o cliente pode simplesmente usar o certificado do Cloudflare para permitir qualquer conexão do Cloudflare, independentemente do locatário.
{% hint style="danger" %} Portanto, um atacante pode simplesmente definir um domínio no Cloudflare usando o certificado do Cloudflare e apontá-lo para o endereço IP do domínio da vítima. Dessa forma, definindo seu domínio completamente desprotegido, o Cloudflare não protegerá as solicitações enviadas. {% endhint %}
Mais informações aqui.
Lista de Permissões de Endereços IP do Cloudflare
Isso irá rejeitar conexões que não se originam dos intervalos de endereços IP do Cloudflare. Isso também é vulnerável à configuração anterior, onde um atacante simplesmente aponta seu próprio domínio no Cloudflare para o endereço IP da vítima e a ataca.
Mais informações aqui.
Bypass do Cloudflare para scraping
Cache
Às vezes, você só quer ignorar o Cloudflare para fazer o scraping da página da web. Existem algumas opções para isso:
- Usar o cache do Google:
https://webcache.googleusercontent.com/search?q=cache:https://www.petsathome.com/shop/en/pets/dog
- Usar outros serviços de cache, como https://archive.org/web/
Solucionadores do Cloudflare
Foram desenvolvidos vários solucionadores do Cloudflare:
- FlareSolverr
- cloudscraper Guia aqui
- cloudflare-scrape
- CloudflareSolverRe
- Cloudflare-IUAM-Solver
- cloudflare-bypass [Arquivado]
- CloudflareSolverRe
Navegadores Headless Reforçados
A outra opção é fazer todo o trabalho de scraping com um navegador headless que foi reforçado para se parecer com um navegador de usuário real:
- Puppeteer: O plugin stealth para puppeteer.
- Playwright: O plugin stealth está chegando em breve para o Playwright. Acompanhe os desenvolvimentos aqui e aqui.
- Selenium: O undetected-chromedriver, um patch otimizado do Selenium Chromedriver.
Proxy Inteligente com Bypass Integrado do Cloudflare
A alternativa ao uso de bypasses do Cloudflare de código aberto é usar proxies inteligentes que desenvolvem e mantêm seus próprios bypasses privados do Cloudflare.
Esses proxies geralmente são mais confiáveis, pois é mais difícil para o Cloudflare desenvolver correções para eles, e são desenvolvidos por empresas de proxy que têm motivação financeira para ficar um passo à frente do Cloudflare e corrigir seus bypasses assim que pararem de funcionar.
A maioria dos provedores de proxy inteligentes (ScraperAPI, Scrapingbee, Oxylabs, Smartproxy) possuem algum tipo de bypass do Cloudflare que funcionam em diferentes graus e variam em custo.
No entanto, uma das melhores opções é usar o Agregador de Proxy do ScrapeOps, pois ele integra mais de 20 provedores de proxy na mesma API de proxy e encontra o provedor de proxy melhor/mais barato para seus domínios de destino.
Engenharia Reversa da Proteção Anti-Bot do Cloudflare
Essa abordagem funciona (e é o que muitas soluções de proxy inteligentes fazem), no entanto, não é para os fracos de coração.
Vantagens: A vantagem dessa abordagem é que, se você estiver fazendo scraping em grande escala e não quiser executar centenas (se não milhares) de instâncias caras de navegadores completos sem cabeça, você pode desenvolver o bypass do Cloudflare mais eficiente em termos de recursos possível. Um que seja projetado exclusivamente para passar nos testes de impressão digital do Cloudflare JS, TLS e IP.
Desvantagens: As desvantagens dessa abordagem são que você terá que mergulhar fundo em um sistema anti-bot que foi propositalmente difícil de entender do lado de fora e testar diferentes técnicas para enganar seu sistema de verificação. Em seguida, manter esse sistema à medida que o Cloudflare continua a desenvolver sua proteção anti-bot.
Referências
☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥
- Você trabalha em uma empresa de cibersegurança? Você quer ver sua empresa anunciada no HackTricks? Ou você quer ter acesso à última versão do PEASS ou baixar o HackTricks em PDF? Verifique os PLANOS DE ASSINATURA!
- Descubra A Família PEASS, nossa coleção exclusiva de NFTs
- Adquira o swag oficial do PEASS & HackTricks
- Junte-se ao 💬 grupo do Discord ou ao grupo do Telegram ou siga-me no Twitter 🐦@carlospolopm.
- Compartilhe suas técnicas de hacking enviando PRs para o repositório hacktricks e o repositório hacktricks-cloud.