Uncovering CloudFlare
Reading time: 8 minutes
tip
Lernen & üben Sie AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Lernen & üben Sie GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Unterstützen Sie HackTricks
- Überprüfen Sie die Abonnementpläne!
- Treten Sie der 💬 Discord-Gruppe oder der Telegram-Gruppe bei oder folgen Sie uns auf Twitter 🐦 @hacktricks_live.
- Teilen Sie Hacking-Tricks, indem Sie PRs an die HackTricks und HackTricks Cloud GitHub-Repos senden.
Häufige Techniken zur Aufdeckung von Cloudflare
- Sie können einen Dienst nutzen, der Ihnen die historischen DNS-Einträge der Domain bereitstellt. Vielleicht läuft die Webseite auf einer IP-Adresse, die zuvor verwendet wurde.
- Dasselbe könnte erreicht werden, indem man historische SSL-Zertifikate überprüft, die auf die ursprüngliche IP-Adresse verweisen könnten.
- Überprüfen Sie auch die DNS-Einträge anderer Subdomains, die direkt auf IPs zeigen, da es möglich ist, dass andere Subdomains auf denselben Server verweisen (vielleicht um FTP, Mail oder einen anderen Dienst anzubieten).
- Wenn Sie eine SSRF innerhalb der Webanwendung finden, können Sie diese ausnutzen, um die IP-Adresse des Servers zu erhalten.
- Suchen Sie eine einzigartige Zeichenfolge der Webseite in Browsern wie Shodan (und vielleicht Google und ähnlichen?). Vielleicht finden Sie eine IP-Adresse mit diesem Inhalt.
- In ähnlicher Weise könnten Sie anstelle der Suche nach einer einzigartigen Zeichenfolge das Favicon-Icon mit dem Tool: https://github.com/karma9874/CloudFlare-IP oder mit https://github.com/pielco11/fav-up suchen.
- Dies wird nicht sehr häufig funktionieren, da der Server dieselbe Antwort senden muss, wenn er über die IP-Adresse aufgerufen wird, aber man weiß ja nie.
Tools zur Aufdeckung von Cloudflare
- Suchen Sie die Domain auf http://www.crimeflare.org:82/cfs.html oder https://crimeflare.herokuapp.com. Oder verwenden Sie das Tool CloudPeler (das diese API nutzt).
- Suchen Sie die Domain in https://leaked.site/index.php?resolver/cloudflare.0/.
- CloudFlair ist ein Tool, das mit Censys-Zertifikaten sucht, die den Domainnamen enthalten, dann nach IPv4s innerhalb dieser Zertifikate sucht und schließlich versucht, die Webseite auf diesen IPs zuzugreifen.
- CloakQuest3r: CloakQuest3r ist ein leistungsstarkes Python-Tool, das sorgfältig entwickelt wurde, um die wahre IP-Adresse von Webseiten aufzudecken, die durch Cloudflare und andere Alternativen geschützt sind, einem weit verbreiteten Web-Sicherheits- und Leistungsverbesserungsdienst. Seine Hauptmission ist es, die tatsächliche IP-Adresse von Webservern, die hinter Cloudflares Schutzschild verborgen sind, genau zu erkennen.
- Censys
- Shodan
- Bypass-firewalls-by-DNS-history
- Wenn Sie eine Reihe potenzieller IPs haben, auf denen die Webseite gehostet wird, könnten Sie https://github.com/hakluke/hakoriginfinder verwenden.
# 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
Cloudflare von Cloud-Infrastruktur aufdecken
Beachten Sie, dass dies, auch wenn es für AWS-Maschinen durchgeführt wurde, für jeden anderen Cloud-Anbieter durchgeführt werden kann.
Für eine bessere Beschreibung dieses Prozesses siehe:
# 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
Umgehen von Cloudflare durch Cloudflare
Authentifizierte Ursprungsabrufe
Dieser Mechanismus basiert auf Client SSL-Zertifikaten zur Authentifizierung von Verbindungen zwischen Cloudflares Reverse-Proxy-Servern und dem Ursprungs-Server, was als mTLS bezeichnet wird.
Anstatt ein eigenes Zertifikat zu konfigurieren, können Kunden einfach Cloudflares Zertifikat verwenden, um jede Verbindung von Cloudflare zuzulassen, unabhängig vom Mandanten.
caution
Daher könnte ein Angreifer einfach eine Domain in Cloudflare mit Cloudflares Zertifikat einrichten und sie auf die IP-Adresse der Opfer-Domain zeigen. Auf diese Weise, indem er seine Domain völlig ungeschützt einrichtet, wird Cloudflare die gesendeten Anfragen nicht schützen.
Weitere Informationen hier.
Erlaubte Cloudflare-IP-Adressen
Dies wird Verbindungen ablehnen, die nicht von Cloudflares IP-Adressbereichen stammen. Dies ist auch anfällig für die vorherige Konfiguration, bei der ein Angreifer einfach seine eigene Domain in Cloudflare auf die IP-Adresse der Opfer zeigt und sie angreift.
Weitere Informationen hier.
Umgehen von Cloudflare zum Scraping
Cache
Manchmal möchte man einfach Cloudflare umgehen, um nur die Webseite zu scrapen. Es gibt einige Optionen dafür:
- Verwenden Sie den Google-Cache:
https://webcache.googleusercontent.com/search?q=cache:https://www.petsathome.com/shop/en/pets/dog
- Verwenden Sie andere Cache-Dienste wie https://archive.org/web/
Tools
Einige Tools wie die folgenden können Cloudflares Schutz gegen Scraping umgehen (oder konnten es umgehen):
Cloudflare-Löser
Es wurden eine Reihe von Cloudflare-Lösern entwickelt:
- FlareSolverr
- cloudscraper Leitfaden hier
- cloudflare-scrape
- CloudflareSolverRe
- Cloudflare-IUAM-Solver
- cloudflare-bypass [Archiviert]
- CloudflareSolverRe
Verstärkte Headless-Browser
Verwenden Sie einen Headless-Browser, der nicht als automatisierter Browser erkannt wird (möglicherweise müssen Sie ihn dafür anpassen). Einige Optionen sind:
- Puppeteer: Das Stealth-Plugin für puppeteer.
- Playwright: Das Stealth-Plugin kommt bald zu Playwright. Verfolgen Sie die Entwicklungen hier und hier.
- Selenium: Der undetected-chromedriver ist ein optimierter Selenium Chromedriver-Patch.
Intelligenter Proxy mit integriertem Cloudflare-Bypass
Intelligente Proxys werden kontinuierlich von spezialisierten Unternehmen aktualisiert, die darauf abzielen, Cloudflares Sicherheitsmaßnahmen zu überlisten (da dies ihr Geschäft ist).
Einige von ihnen sind:
- ScraperAPI
- Scrapingbee
- Oxylabs
- Smartproxy sind bekannt für ihre proprietären Cloudflare-Bypass-Mechanismen.
Für diejenigen, die eine optimierte Lösung suchen, sticht der ScrapeOps Proxy Aggregator hervor. Dieser Dienst integriert über 20 Proxy-Anbieter in eine einzige API, die automatisch den besten und kostengünstigsten Proxy für Ihre Ziel-Domains auswählt und somit eine überlegene Option für die Umgehung von Cloudflares Verteidigungen bietet.
Reverse Engineering von Cloudflare Anti-Bot-Schutz
Das Reverse Engineering von Cloudflares Anti-Bot-Maßnahmen ist eine Taktik, die von intelligenten Proxy-Anbietern verwendet wird und sich für umfangreiches Web-Scraping eignet, ohne die hohen Kosten für den Betrieb vieler Headless-Browser.
Vorteile: Diese Methode ermöglicht die Erstellung eines äußerst effizienten Bypasses, der speziell auf Cloudflares Prüfungen abzielt, ideal für großangelegte Operationen.
Nachteile: Der Nachteil ist die Komplexität, die mit dem Verständnis und der Täuschung von Cloudflares absichtlich undurchsichtigem Anti-Bot-System verbunden ist, was fortlaufende Anstrengungen erfordert, um verschiedene Strategien zu testen und den Bypass zu aktualisieren, während Cloudflare seine Schutzmaßnahmen verbessert.
Weitere Informationen dazu finden Sie im ursprünglichen Artikel.
Referenzen
tip
Lernen & üben Sie AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Lernen & üben Sie GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Unterstützen Sie HackTricks
- Überprüfen Sie die Abonnementpläne!
- Treten Sie der 💬 Discord-Gruppe oder der Telegram-Gruppe bei oder folgen Sie uns auf Twitter 🐦 @hacktricks_live.
- Teilen Sie Hacking-Tricks, indem Sie PRs an die HackTricks und HackTricks Cloud GitHub-Repos senden.