# Uncovering CloudFlare
{% hint style="success" %}
Learn & practice AWS Hacking:[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)\
Learn & practice GCP Hacking: [**HackTricks Training GCP Red Team Expert (GRTE)**](https://training.hacktricks.xyz/courses/grte)
Support HackTricks
* Check the [**subscription plans**](https://github.com/sponsors/carlospolop)!
* **Join the** 馃挰 [**Discord group**](https://discord.gg/hRep4RUj7f) or the [**telegram group**](https://t.me/peass) or **follow** us on **Twitter** 馃惁 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
* **Share hacking tricks by submitting PRs to the** [**HackTricks**](https://github.com/carlospolop/hacktricks) and [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
{% endhint %}
## Common Techniques to Uncover Cloudflare
* Mo偶esz u偶y膰 us艂ugi, kt贸ra daje ci **historyczne rekordy DNS** domeny. Mo偶e strona internetowa dzia艂a na adresie IP u偶ywanym wcze艣niej.
* To samo mo偶na osi膮gn膮膰 **sprawdzaj膮c historyczne certyfikaty SSL**, kt贸re mog膮 wskazywa膰 na oryginalny adres IP.
* Sprawd藕 r贸wnie偶 **rekordy DNS innych subdomen wskazuj膮cych bezpo艣rednio na IP**, poniewa偶 mo偶liwe, 偶e inne subdomeny wskazuj膮 na ten sam serwer (mo偶e aby oferowa膰 FTP, poczt臋 lub jak膮kolwiek inn膮 us艂ug臋).
* Je艣li znajdziesz **SSRF wewn膮trz aplikacji webowej**, mo偶esz to wykorzysta膰, aby uzyska膰 adres IP serwera.
* Wyszukaj unikalny ci膮g ze strony internetowej w przegl膮darkach takich jak shodan (a mo偶e google i podobne?). Mo偶e znajdziesz adres IP z t膮 tre艣ci膮.
* W podobny spos贸b, zamiast szuka膰 unikalnego ci膮gu, mo偶esz wyszukiwa膰 ikon臋 favicon za pomoc膮 narz臋dzia: [https://github.com/karma9874/CloudFlare-IP](https://github.com/karma9874/CloudFlare-IP) lub z [https://github.com/pielco11/fav-up](https://github.com/pielco11/fav-up)
* To nie b臋dzie dzia艂a膰 zbyt cz臋sto, poniewa偶 serwer musi wysy艂a膰 t臋 sam膮 odpowied藕, gdy jest dost臋pny przez adres IP, ale nigdy nie wiadomo.
## Tools to uncover Cloudflare
* Wyszukaj domen臋 w [http://www.crimeflare.org:82/cfs.html](http://www.crimeflare.org:82/cfs.html) lub [https://crimeflare.herokuapp.com](https://crimeflare.herokuapp.com). Lub u偶yj narz臋dzia [CloudPeler](https://github.com/zidansec/CloudPeler) (kt贸re u偶ywa tego API)
* Wyszukaj domen臋 w [https://leaked.site/index.php?resolver/cloudflare.0/](https://leaked.site/index.php?resolver/cloudflare.0/)
* [**CloudFlair**](https://github.com/christophetd/CloudFlair) to narz臋dzie, kt贸re b臋dzie wyszukiwa膰 za pomoc膮 certyfikat贸w Censys, kt贸re zawieraj膮 nazw臋 domeny, nast臋pnie wyszuka IPv4 w tych certyfikatach, a na koniec spr贸buje uzyska膰 dost臋p do strony internetowej na tych IP.
* [**CloakQuest3r**](https://github.com/spyboy-productions/CloakQuest3r): CloakQuest3r to pot臋偶ne narz臋dzie Python, starannie zaprojektowane, aby odkry膰 prawdziwy adres IP stron internetowych chronionych przez Cloudflare i inne alternatywy, szeroko stosowan膮 us艂ug臋 zabezpiecze艅 internetowych i poprawy wydajno艣ci. Jego g艂贸wn膮 misj膮 jest dok艂adne rozpoznanie rzeczywistego adresu IP serwer贸w internetowych, kt贸re s膮 ukryte za ochron膮 Cloudflare.
* [Censys](https://search.censys.io/)
* [Shodan](https://shodan.io/)
* [Bypass-firewalls-by-DNS-history](https://github.com/vincentcox/bypass-firewalls-by-DNS-history)
* Je艣li masz zestaw potencjalnych IP, gdzie znajduje si臋 strona internetowa, mo偶esz u偶y膰 [https://github.com/hakluke/hakoriginfinder](https://github.com/hakluke/hakoriginfinder)
```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
```
## Uncovering Cloudflare from Cloud infrastructure
Zauwa偶, 偶e nawet je艣li to zosta艂o zrobione dla maszyn AWS, mo偶na to zrobi膰 dla dowolnego innego dostawcy chmury.
Aby uzyska膰 lepszy opis tego procesu, sprawd藕:
{% 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
```
## Obej艣cie Cloudflare przez Cloudflare
### Uwierzytelnione pobieranie z serwera 藕r贸d艂owego
Ten mechanizm opiera si臋 na **certyfikatach SSL** **klienta** [**SSL certificates**](https://socradar.io/how-to-monitor-your-ssl-certificates-expiration-easily-and-why/) **do uwierzytelniania po艂膮cze艅** mi臋dzy serwerami **proxy odwrotnym Cloudflare** a serwerem **藕r贸d艂owym**, co nazywa si臋 **mTLS**.
Zamiast konfigurowa膰 w艂asny certyfikat, klienci mog膮 po prostu u偶y膰 certyfikatu Cloudflare, aby umo偶liwi膰 ka偶de po艂膮czenie z Cloudflare, **bez wzgl臋du na najemc臋**.
{% hint style="danger" %}
Dlatego atakuj膮cy mo偶e po prostu ustawi膰 **domen臋 w Cloudflare, u偶ywaj膮c certyfikatu Cloudflare i skierowa膰** j膮 na adres **IP** domeny **ofiary**. W ten spos贸b, ustawiaj膮c swoj膮 domen臋 ca艂kowicie niechronion膮, Cloudflare nie ochroni wysy艂anych 偶膮da艅.
{% endhint %}
Wi臋cej informacji [**tutaj**](https://socradar.io/cloudflare-protection-bypass-vulnerability-on-threat-actors-radar/).
### Lista dozwolonych adres贸w IP Cloudflare
To **odrzuci po艂膮czenia, kt贸re nie pochodz膮 z zakres贸w** adres贸w IP **Cloudflare**. To r贸wnie偶 jest podatne na wcze艣niejsze ustawienie, w kt贸rym atakuj膮cy po prostu **skieruje swoj膮 w艂asn膮 domen臋 w Cloudflare** na adres **IP ofiary** i zaatakuje j膮.
Wi臋cej informacji [**tutaj**](https://socradar.io/cloudflare-protection-bypass-vulnerability-on-threat-actors-radar/).
## Obej艣cie Cloudflare w celu skrobania
### Cache
Czasami chcesz po prostu obej艣膰 Cloudflare, aby tylko skroba膰 stron臋 internetow膮. Istnieje kilka opcji na to:
* U偶yj pami臋ci podr臋cznej Google: `https://webcache.googleusercontent.com/search?q=cache:https://www.petsathome.com/shop/en/pets/dog`
* U偶yj innych us艂ug pami臋ci podr臋cznej, takich jak [https://archive.org/web/](https://archive.org/web/)
### Narz臋dzia
Niekt贸re narz臋dzia, takie jak poni偶sze, mog膮 obej艣膰 (lub by艂y w stanie obej艣膰) ochron臋 Cloudflare przed skrobaniem:
* [https://github.com/sarperavci/CloudflareBypassForScraping](https://github.com/sarperavci/CloudflareBypassForScraping)
### Rozwi膮zania Cloudflare
Opracowano szereg rozwi膮za艅 Cloudflare:
* [FlareSolverr](https://github.com/FlareSolverr/FlareSolverr)
* [cloudscraper](https://github.com/VeNoMouS/cloudscraper) [Przewodnik tutaj](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) \[Zarchiwizowane]
* [CloudflareSolverRe](https://github.com/RyuzakiH/CloudflareSolverRe)
### Wzmocnione przegl膮darki bez interfejsu graficznego
U偶yj przegl膮darki bez interfejsu graficznego, kt贸ra nie jest wykrywana jako zautomatyzowana przegl膮darka (mo偶esz potrzebowa膰 j膮 dostosowa膰 do tego). Niekt贸re opcje to:
* **Puppeteer:** Wtyczka [stealth](https://github.com/berstend/puppeteer-extra/tree/master/packages/puppeteer-extra-plugin-stealth) dla [puppeteer](https://github.com/puppeteer/puppeteer).
* **Playwright:** Wtyczka [stealth](https://www.npmjs.com/package/playwright-stealth) wkr贸tce pojawi si臋 w Playwright. 艢led藕 rozw贸j [tutaj](https://github.com/berstend/puppeteer-extra/issues/454) i [tutaj](https://github.com/berstend/puppeteer-extra/tree/master/packages/playwright-extra).
* **Selenium:** [undetected-chromedriver](https://github.com/ultrafunkamsterdam/undetected-chromedriver) to zoptymalizowana 艂atka do Selenium Chromedriver.
### Inteligentny proxy z wbudowanym obej艣ciem Cloudflare
**Inteligentne proxy** s膮 ci膮gle aktualizowane przez wyspecjalizowane firmy, maj膮ce na celu przechytrzenie 艣rodk贸w bezpiecze艅stwa Cloudflare (to ich biznes).
Niekt贸re z nich to:
* [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) s膮 znane z w艂asnych mechanizm贸w obej艣cia Cloudflare.
Dla tych, kt贸rzy szukaj膮 zoptymalizowanego rozwi膮zania, [ScrapeOps Proxy Aggregator](https://scrapeops.io/proxy-aggregator/) wyr贸偶nia si臋. Ta us艂uga integruje ponad 20 dostawc贸w proxy w jednym API, automatycznie wybieraj膮c najlepsze i najbardziej op艂acalne proxy dla Twoich docelowych domen, oferuj膮c w ten spos贸b lepsz膮 opcj臋 nawigacji przez zabezpieczenia Cloudflare.
### In偶ynieria wsteczna ochrony przed botami Cloudflare
In偶ynieria wsteczna 艣rodk贸w ochrony przed botami Cloudflare to taktyka stosowana przez dostawc贸w inteligentnych proxy, odpowiednia do rozleg艂ego skrobania sieci bez wysokich koszt贸w uruchamiania wielu przegl膮darek bez interfejsu graficznego.
**Zalety:** Ta metoda pozwala na stworzenie niezwykle efektywnego obej艣cia, kt贸re celuje w kontrole Cloudflare, idealne do operacji na du偶膮 skal臋.
**Wady:** Wad膮 jest z艂o偶ono艣膰 zwi膮zana z rozumieniem i oszukiwaniem celowo niejasnego systemu ochrony przed botami Cloudflare, co wymaga ci膮g艂ego wysi艂ku w testowaniu r贸偶nych strategii i aktualizacji obej艣cia, gdy Cloudflare wzmacnia swoje zabezpieczenia.
Znajd藕 wi臋cej informacji na temat tego, jak to zrobi膰 w [oryginalnym artykule](https://scrapeops.io/web-scraping-playbook/how-to-bypass-cloudflare/).
## Odno艣niki
* [https://scrapeops.io/web-scraping-playbook/how-to-bypass-cloudflare/](https://scrapeops.io/web-scraping-playbook/how-to-bypass-cloudflare/)
{% hint style="success" %}
Ucz si臋 i 膰wicz Hacking AWS:[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)\
Ucz si臋 i 膰wicz Hacking GCP: [**HackTricks Training GCP Red Team Expert (GRTE)**](https://training.hacktricks.xyz/courses/grte)
Wsparcie dla HackTricks
* Sprawd藕 [**plany subskrypcyjne**](https://github.com/sponsors/carlospolop)!
* **Do艂膮cz do** 馃挰 [**grupy Discord**](https://discord.gg/hRep4RUj7f) lub [**grupy telegram**](https://t.me/peass) lub **艣led藕** nas na **Twitterze** 馃惁 [**@hacktricks_live**](https://twitter.com/hacktricks_live)**.**
* **Dziel si臋 sztuczkami hackingowymi, przesy艂aj膮c PR-y do** [**HackTricks**](https://github.com/carlospolop/hacktricks) i [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repozytori贸w github.
{% endhint %}