Uncovering CloudFlare

Impara l'hacking AWS da zero a eroe con htARTE (Esperto Red Team AWS di HackTricks)!

Altri modi per supportare HackTricks:

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

# 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:

# 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.

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.

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:

Browser Headless Fortificati

Utilizzare un browser headless che non venga rilevato come un browser automatizzato (potrebbe essere necessario personalizzarlo per questo). Alcune opzioni sono:

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:

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:

Last updated