# Uncovering CloudFlare {{#include ../../banners/hacktricks-training.md}} ## Häufige Techniken zur Aufdeckung von 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](https://github.com/karma9874/CloudFlare-IP) oder mit [https://github.com/pielco11/fav-up](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](http://www.crimeflare.org:82/cfs.html) oder [https://crimeflare.herokuapp.com](https://crimeflare.herokuapp.com). Oder verwenden Sie das Tool [CloudPeler](https://github.com/zidansec/CloudPeler) (das diese API nutzt). - Suchen Sie die Domain in [https://leaked.site/index.php?resolver/cloudflare.0/](https://leaked.site/index.php?resolver/cloudflare.0/). - [**CF-Hero**](https://github.com/musana/CF-Hero) ist ein umfassendes Aufklärungstool, das entwickelt wurde, um die echten IP-Adressen von Webanwendungen zu entdecken, die durch Cloudflare geschützt sind. Es führt eine mehrquellenbasierte Informationssammlung durch verschiedene Methoden durch. - [**CloudFlair**](https://github.com/christophetd/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**](https://github.com/spyboy-productions/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](https://search.censys.io/) - [Shodan](https://shodan.io/) - [Bypass-firewalls-by-DNS-history](https://github.com/vincentcox/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](https://github.com/hakluke/hakoriginfinder) verwenden. ```bash # 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 überprüfen Sie bitte: {{#ref}} https://trickest.com/blog/cloudflare-bypass-discover-ip-addresses-aws/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks {{#endref}} ```bash # 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**](https://socradar.io/how-to-monitor-your-ssl-certificates-expiration-easily-and-why/) **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**](https://socradar.io/cloudflare-protection-bypass-vulnerability-on-threat-actors-radar/). ### 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**](https://socradar.io/cloudflare-protection-bypass-vulnerability-on-threat-actors-radar/). ## Umgehen von Cloudflare zum Scraping ### Cache Manchmal möchte man Cloudflare einfach 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/](https://archive.org/web/) ### Tools Einige Tools wie die folgenden können Cloudflares Schutz gegen Scraping umgehen (oder konnten es umgehen): - [https://github.com/sarperavci/CloudflareBypassForScraping](https://github.com/sarperavci/CloudflareBypassForScraping) ### Cloudflare-Löser Es wurden eine Reihe von Cloudflare-Lösern entwickelt: - [FlareSolverr](https://github.com/FlareSolverr/FlareSolverr) - [cloudscraper](https://github.com/VeNoMouS/cloudscraper) [Leitfaden hier](https://scrapeops.io/python-web-scraping-playbook/python-cloudscraper/) - [cloudflare-scrape](https://github.com/Anorov/cloudflare-scrape) - [CloudflareSolverRe](https://github.com/RyuzakiH/CloudflareSolverRe) - [Cloudflare-IUAM-Solver](https://github.com/ninja-beans/cloudflare-iuam-solver) - [cloudflare-bypass](https://github.com/devgianlu/cloudflare-bypass) \[Archiviert] - [CloudflareSolverRe](https://github.com/RyuzakiH/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](https://github.com/berstend/puppeteer-extra/tree/master/packages/puppeteer-extra-plugin-stealth) für [puppeteer](https://github.com/puppeteer/puppeteer). - **Playwright:** Das [Stealth-Plugin](https://www.npmjs.com/package/playwright-stealth) kommt bald zu Playwright. Folgen Sie den Entwicklungen [hier](https://github.com/berstend/puppeteer-extra/issues/454) und [hier](https://github.com/berstend/puppeteer-extra/tree/master/packages/playwright-extra). - **Selenium:** Der [undetected-chromedriver](https://github.com/ultrafunkamsterdam/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](https://www.scraperapi.com/?fp_ref=scrapeops) - [Scrapingbee](https://www.scrapingbee.com/?fpr=scrapeops) - [Oxylabs](https://oxylabs.go2cloud.org/aff_c?offer_id=7&aff_id=379&url_id=32) - [Smartproxy](https://prf.hn/click/camref:1100loxdG/[p_id:1100l442001]/destination:https%3A%2F%2Fsmartproxy.com%2Fscraping%2Fweb) sind bekannt für ihre proprietären Cloudflare-Bypass-Mechanismen. Für diejenigen, die eine optimierte Lösung suchen, sticht der [ScrapeOps Proxy Aggregator](https://scrapeops.io/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 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](https://scrapeops.io/web-scraping-playbook/how-to-bypass-cloudflare/). ## Referenzen - [https://scrapeops.io/web-scraping-playbook/how-to-bypass-cloudflare/](https://scrapeops.io/web-scraping-playbook/how-to-bypass-cloudflare/) {{#include ../../banners/hacktricks-training.md}}