13 KiB
Uncovering CloudFlare
{% hint style="success" %}
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Support HackTricks
- Check the subscription plans!
- Join the 💬 Discord group or the telegram group or follow us on Twitter 🐦 @hacktricks_live.
- Share hacking tricks by submitting PRs to the HackTricks and HackTricks Cloud github repos.
Common Techniques to Uncover Cloudflare
- Sie können einen Dienst nutzen, der Ihnen die historischen DNS-Einträge der Domain gibt. 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 zeigen (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 einer einzigartigen Zeichenfolge nach dem 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 to uncover 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 verwendet).
- 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, wo sich die Webseite befindet, 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
Uncovering Cloudflare from Cloud infrastructure
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:
{% 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
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.
{% hint style="danger" %} 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. {% endhint %}
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-Domain 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. Folgen Sie den 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 Navigation durch 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 obskurem 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
{% hint style="success" %}
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.