mirror of
https://github.com/carlospolop/hacktricks
synced 2024-12-23 19:43:31 +00:00
159 lines
12 KiB
Markdown
159 lines
12 KiB
Markdown
# Aufdecken von CloudFlare
|
|
|
|
<details>
|
|
|
|
<summary><strong>Lernen Sie AWS-Hacking von Grund auf mit</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
|
|
|
Andere Möglichkeiten, HackTricks zu unterstützen:
|
|
|
|
* Wenn Sie Ihr **Unternehmen in HackTricks bewerben möchten** oder **HackTricks als PDF herunterladen möchten**, überprüfen Sie die [**ABONNEMENTPLÄNE**](https://github.com/sponsors/carlospolop)!
|
|
* Holen Sie sich das [**offizielle PEASS & HackTricks-Merchandise**](https://peass.creator-spring.com)
|
|
* Entdecken Sie [**The PEASS Family**](https://opensea.io/collection/the-peass-family), unsere Sammlung exklusiver [**NFTs**](https://opensea.io/collection/the-peass-family)
|
|
* **Treten Sie der** 💬 [**Discord-Gruppe**](https://discord.gg/hRep4RUj7f) oder der [**Telegram-Gruppe**](https://t.me/peass) bei oder **folgen** Sie uns auf **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
|
|
* **Teilen Sie Ihre Hacking-Tricks, indem Sie PRs an die** [**HackTricks**](https://github.com/carlospolop/hacktricks) und [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub-Repositories senden.
|
|
|
|
</details>
|
|
|
|
|
|
## Gemeinsame Techniken zur Aufdeckung von Cloudflare
|
|
|
|
* Sie können einen Dienst verwenden, der Ihnen die **historischen DNS-Einträge** der Domain gibt. Möglicherweise läuft die Webseite auf einer zuvor verwendeten IP-Adresse.
|
|
* Das Gleiche könnte erreicht werden, indem Sie **historische SSL-Zertifikate überprüfen**, die auf die Ursprungs-IP-Adresse verweisen könnten.
|
|
* Überprüfen Sie auch **DNS-Einträge anderer Subdomains, die direkt auf IPs verweisen**, da es möglich ist, dass andere Subdomains auf denselben Server verweisen (vielleicht um FTP, E-Mail oder einen anderen Dienst anzubieten).
|
|
* Wenn Sie eine **SSRF in der Webanwendung** finden, können Sie sie missbrauchen, um die IP-Adresse des Servers zu erhalten.
|
|
* Suchen Sie nach einer eindeutigen Zeichenfolge der Webseite in Browsern wie Shodan (und vielleicht Google und ähnlichen?). Möglicherweise finden Sie eine IP-Adresse mit diesem Inhalt.
|
|
* Auf ähnliche Weise könnten Sie anstelle einer eindeutigen Zeichenfolge nach dem Favicon-Symbol mit dem Tool suchen: [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)
|
|
* Dies funktioniert nicht sehr häufig, da der Server dieselbe Antwort senden muss, wenn er über die IP-Adresse aufgerufen wird, aber man weiß nie.
|
|
|
|
## Tools zur Aufdeckung von Cloudflare
|
|
|
|
* Suchen Sie nach der Domain in [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 verwendet)
|
|
* Suchen Sie nach der Domain in [https://leaked.site/index.php?resolver/cloudflare.0/](https://leaked.site/index.php?resolver/cloudflare.0/)
|
|
* [**CloudFlair**](https://github.com/christophetd/CloudFlair) ist ein Tool, das mit Censys-Zertifikaten sucht, die den Domainnamen enthalten. Anschließend sucht es nach IPv4-Adressen in diesen Zertifikaten und versucht schließlich, die Webseite unter diesen IPs aufzurufen.
|
|
* [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, auf denen sich die Webseite befindet, können 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
|
|
```
|
|
## Aufdecken von Cloudflare von Cloud-Maschinen
|
|
|
|
Beachten Sie, dass dies auch für AWS-Maschinen durchgeführt werden kann, aber auch für andere Cloud-Anbieter.
|
|
|
|
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" %}
|
|
```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
|
|
```
|
|
## Umgehung von Cloudflare über Cloudflare
|
|
|
|
### Authentifizierte Origin Pulls
|
|
|
|
Dieser Mechanismus basiert auf **Client**-[**SSL-Zertifikaten**](https://socradar.io/how-to-monitor-your-ssl-certificates-expiration-easily-and-why/), um Verbindungen zwischen den Reverse-Proxy-Servern von Cloudflare und dem Ursprungsserver, der als **mTLS** bezeichnet wird, zu authentifizieren.
|
|
|
|
Anstatt ein eigenes Zertifikat zu konfigurieren, können Kunden einfach das Zertifikat von Cloudflare verwenden, um eine Verbindung von Cloudflare zu ermöglichen, **unabhängig vom Mieter**.
|
|
|
|
{% 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 lassen. Auf diese Weise, indem er seine Domain vollständig ungeschützt einrichtet, schützt Cloudflare die gesendeten Anfragen nicht.
|
|
{% endhint %}
|
|
|
|
Weitere Informationen finden Sie [**hier**](https://socradar.io/cloudflare-protection-bypass-vulnerability-on-threat-actors-radar/).
|
|
|
|
### Zulassen von Cloudflare-IP-Adressen
|
|
|
|
Dadurch werden Verbindungen abgelehnt, die nicht von den IP-Adressbereichen von Cloudflare 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 des Opfers zeigen lässt und es angreift.
|
|
|
|
Weitere Informationen finden Sie [**hier**](https://socradar.io/cloudflare-protection-bypass-vulnerability-on-threat-actors-radar/).
|
|
|
|
## Umgehung von Cloudflare für das Scraping
|
|
|
|
### Cache
|
|
|
|
Manchmal möchten Sie Cloudflare umgehen, um nur die Webseite zu scrapen. Hierfür gibt es einige Optionen:
|
|
|
|
* 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/)
|
|
|
|
### Cloudflare Solvers
|
|
|
|
Es wurden verschiedene Cloudflare Solvers entwickelt:
|
|
|
|
* [FlareSolverr](https://github.com/FlareSolverr/FlareSolverr)
|
|
* [cloudscraper](https://github.com/VeNoMouS/cloudscraper) [Anleitung 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 <a href="#option-4-scrape-with-fortified-headless-browsers" id="option-4-scrape-with-fortified-headless-browsers"></a>
|
|
|
|
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) wird bald für Playwright verfügbar sein. Verfolgen Sie die 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), ein optimierter Selenium Chromedriver-Patch.
|
|
|
|
### Intelligenter Proxy mit integrierter Cloudflare-Umgehung <a href="#option-5-smart-proxy-with-cloudflare-built-in-bypass" id="option-5-smart-proxy-with-cloudflare-built-in-bypass"></a>
|
|
|
|
**Intelligente Proxies** werden kontinuierlich von spezialisierten Unternehmen aktualisiert, um die Sicherheitsmaßnahmen von Cloudflare zu umgehen (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-Umgehungsmethoden.
|
|
|
|
Für diejenigen, die eine optimierte Lösung suchen, sticht der [ScrapeOps Proxy Aggregator](https://scrapeops.io/proxy-aggregator/) heraus. Dieser Service integriert über 20 Proxy-Anbieter in eine einzige API und wählt automatisch den besten und kostengünstigsten Proxy für Ihre Ziel-Domains aus, was eine überlegene Option zum Navigieren durch Cloudflares Verteidigung bietet.
|
|
|
|
### Reverse Engineering des Cloudflare Anti-Bot-Schutzes <a href="#option-6-reverse-engineer-cloudflare-anti-bot-protection" id="option-6-reverse-engineer-cloudflare-anti-bot-protection"></a>
|
|
|
|
Das Reverse Engineering der Anti-Bot-Maßnahmen von Cloudflare 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 einer äußerst effizienten Umgehung, die speziell auf die Überprüfungen von Cloudflare abzielt und sich ideal für groß angelegte Operationen eignet.
|
|
|
|
**Nachteile:** Der Nachteil besteht in der Komplexität, die mit dem Verständnis und der Täuschung des bewusst undurchsichtigen Anti-Bot-Systems von Cloudflare verbunden ist. Es erfordert fortlaufende Anstrengungen, um verschiedene Strategien zu testen und die Umgehung zu aktualisieren, während Cloudflare seinen Schutz verbessert.
|
|
|
|
Weitere Informationen dazu finden Sie im [Originalartikel](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/)
|
|
|
|
<details>
|
|
|
|
<summary><strong>Lernen Sie das Hacken von AWS von Grund auf mit</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
|
|
|
|
Weitere Möglichkeiten, HackTricks zu unterstützen:
|
|
|
|
* Wenn Sie Ihr **Unternehmen in HackTricks bewerben möchten** oder **HackTricks als PDF herunterladen** möchten, überprüfen Sie die [**ABONNEMENTPLÄNE**](https://github.com/sponsors/carlospolop)!
|
|
* Holen Sie sich das [**offizielle PEASS & HackTricks-Merchandise**](https://peass.creator-spring.com)
|
|
* Entdecken Sie [**The PEASS Family**](https://opensea.io/collection/the-peass-family), unsere Sammlung exklusiver [**NFTs**](https://opensea.io/collection/the-peass-family)
|
|
* **Treten Sie der** 💬 [**Discord-Gruppe**](https://discord.gg/hRep4RUj7f) oder der [**Telegramm-Gruppe**](https://t.me/peass) bei oder folgen Sie uns auf **Twitter** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.**
|
|
* **Teilen Sie Ihre Hacking-Tricks, indem Sie PRs an die** [**HackTricks**](https://github.com/carlospolop/hacktricks) und [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub-Repositories senden.
|
|
|
|
</details>
|