13 KiB
Scoprire CloudFlare
Impara l'hacking AWS da zero a eroe con htARTE (Esperto Red Team AWS di HackTricks)!
Altri modi per supportare HackTricks:
- Se desideri vedere la tua azienda pubblicizzata su HackTricks o scaricare HackTricks in PDF Controlla i PIANI DI ABBONAMENTO!
- Ottieni il merchandising ufficiale di PEASS & HackTricks
- Scopri La Famiglia PEASS, la nostra collezione esclusiva di NFT
- Unisciti al 💬 gruppo Discord o al gruppo telegram o seguici su Twitter 🐦 @carlospolopm.
- Condividi i tuoi trucchi di hacking inviando PR a HackTricks e HackTricks Cloud github repos.
Tecniche Comuni per Scoprire Cloudflare
- Puoi utilizzare un servizio che ti fornisce i record DNS storici del dominio. Forse la pagina web è in esecuzione su un indirizzo IP utilizzato in precedenza.
- Lo stesso potrebbe essere ottenuto controllando i certificati SSL storici che potrebbero puntare all'indirizzo IP di origine.
- Controlla anche i record DNS di altri sottodomini che puntano direttamente agli IP, poiché è possibile che altri sottodomini puntino allo stesso server (forse per offrire FTP, posta o qualsiasi altro servizio).
- Se trovi un SSRF all'interno dell'applicazione web puoi abusarne per ottenere l'indirizzo IP del server.
- Cerca una stringa univoca della pagina web nei browser come shodan (e forse google e simili?). Forse puoi trovare un indirizzo IP con quel contenuto.
- In modo simile, anziché cercare una stringa univoca, potresti cercare l'icona favicon con lo strumento: https://github.com/karma9874/CloudFlare-IP o con https://github.com/pielco11/fav-up
- Questo non funzionerà molto frequentemente perché il server deve inviare la stessa risposta quando viene accesso dall'indirizzo IP, ma non si sa mai.
Strumenti per Scoprire Cloudflare
- Cerca il dominio all'interno di http://www.crimeflare.org:82/cfs.html o https://crimeflare.herokuapp.com. Oppure usa lo strumento CloudPeler (che utilizza quella API)
- Cerca il dominio in https://leaked.site/index.php?resolver/cloudflare.0/
- CloudFlair è uno strumento che cercherà utilizzando i certificati Censys che contengono il nome di dominio, quindi cercherà gli IPv4 all'interno di quei certificati e infine proverà ad accedere alla pagina web in quegli IP.
- CloakQuest3r: CloakQuest3r è uno strumento Python potente e attentamente progettato per scoprire il vero indirizzo IP dei siti web protetti da Cloudflare e altre alternative, un ampiamente adottato servizio di sicurezza web e miglioramento delle prestazioni. La sua missione principale è discernere con precisione l'effettivo indirizzo IP dei server web che sono nascosti dietro lo scudo protettivo di Cloudflare.
- Censys
- Shodan
- Bypass-firewalls-by-DNS-history
- Se hai un insieme di potenziali IP dove si trova la pagina web, potresti utilizzare 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
Scoprire Cloudflare dall'infrastruttura cloud
Nota che anche se questo è stato fatto per le macchine AWS, potrebbe essere fatto per qualsiasi altro fornitore di servizi cloud.
Per una descrizione più dettagliata di questo processo controlla:
{% 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
Eludere Cloudflare tramite Cloudflare
Autenticazione delle Origini
Questo meccanismo si basa su certificati SSL del client per autenticare le connessioni tra i server reverse-proxy di Cloudflare e il server origine, chiamato mTLS.
Invece di configurare il proprio certificato, i clienti possono semplicemente utilizzare il certificato di Cloudflare per consentire qualsiasi connessione da Cloudflare, indipendentemente dal tenant.
{% hint style="danger" %} Pertanto, un attaccante potrebbe semplicemente impostare un dominio in Cloudflare utilizzando il certificato di Cloudflare e puntarlo all'indirizzo IP del dominio della vittima. In questo modo, impostando il suo dominio completamente non protetto, Cloudflare non proteggerà le richieste inviate. {% endhint %}
Maggiori informazioni qui.
Consentire solo gli Indirizzi IP di Cloudflare
Questo respingerà le connessioni che non provengono dagli intervalli di indirizzi IP di Cloudflare. Anche questo è vulnerabile alla configurazione precedente in cui un attaccante punta il proprio dominio in Cloudflare all'indirizzo IP della vittima e lo attacca.
Maggiori informazioni qui.
Eludere Cloudflare per lo scraping
Cache
A volte si desidera semplicemente eludere Cloudflare per fare lo scraping della pagina web. Ci sono alcune opzioni per farlo:
- Utilizzare la cache di Google:
https://webcache.googleusercontent.com/search?q=cache:https://www.petsathome.com/shop/en/pets/dog
- Utilizzare altri servizi di cache come https://archive.org/web/
Strumenti
Alcuni strumenti come i seguenti possono eludere (o sono stati in grado di eludere) la protezione di Cloudflare contro lo scraping:
Risolutori di Cloudflare
Sono stati sviluppati diversi risolutori di Cloudflare:
- FlareSolverr
- cloudscraper Guida qui
- cloudflare-scrape
- CloudflareSolverRe
- Cloudflare-IUAM-Solver
- cloudflare-bypass [Archiviato]
- CloudflareSolverRe
Browser Headless Fortificati
Utilizzare un browser headless che non venga rilevato come un browser automatizzato (potrebbe essere necessario personalizzarlo per questo). Alcune opzioni sono:
- Puppeteer: Il plugin stealth per puppeteer.
- Playwright: Il plugin stealth arriverà presto su Playwright. Segui gli sviluppi qui e qui.
- Selenium: Il undetected-chromedriver è un'ottimizzazione del patch di Selenium Chromedriver.
Proxy Intelligente con Elusione Integrata di Cloudflare
I proxy intelligenti sono continuamente aggiornati da aziende specializzate, con l'obiettivo di superare le misure di sicurezza di Cloudflare (poiché è il loro business).
Alcuni di essi sono:
- ScraperAPI
- Scrapingbee
- Oxylabs
- Smartproxy sono noti per i loro meccanismi di elusione proprietari di Cloudflare.
Per coloro che cercano una soluzione ottimizzata, spicca il ScrapeOps Proxy Aggregator. Questo servizio integra oltre 20 fornitori di proxy in un'unica API, selezionando automaticamente il proxy migliore e più conveniente per i tuoi domini di destinazione, offrendo così un'opzione superiore per navigare le difese di Cloudflare.
Ingegneria Inversa della Protezione Anti-Bot di Cloudflare
L'ingegneria inversa delle misure anti-bot di Cloudflare è una tattica utilizzata dai fornitori di proxy intelligenti, adatta per lo scraping web estensivo senza l'alto costo di eseguire molti browser headless.
Vantaggi: Questo metodo consente la creazione di un'elusione estremamente efficiente che mira specificamente ai controlli di Cloudflare, ideale per operazioni su larga scala.
Svantaggi: Il downside è la complessità coinvolta nel comprendere e ingannare il sistema anti-bot di Cloudflare deliberatamente oscuro, richiedendo uno sforzo continuo per testare diverse strategie e aggiornare l'elusione man mano che Cloudflare potenzia le sue protezioni.
Trova ulteriori informazioni su come fare ciò nell'articolo originale.
Riferimenti
Impara l'hacking di AWS da zero a eroe con htARTE (HackTricks AWS Red Team Expert)!
Altri modi per supportare HackTricks:
- Se desideri vedere la tua azienda pubblicizzata in HackTricks o scaricare HackTricks in PDF Controlla i PIANI DI ABBONAMENTO!
- Ottieni il merchandising ufficiale PEASS & HackTricks
- Scopri The PEASS Family, la nostra collezione di esclusivi NFT
- Unisciti al 💬 gruppo Discord o al gruppo telegram o seguici su Twitter 🐦 @carlospolopm.
- Condividi i tuoi trucchi di hacking inviando PR a HackTricks e HackTricks Cloud github repos.