hacktricks/network-services-pentesting/pentesting-web/uncovering-cloudflare.md
2024-02-11 01:46:25 +00:00

12 KiB

Odkrywanie CloudFlare

Dowiedz się, jak hakować AWS od zera do bohatera z htARTE (HackTricks AWS Red Team Expert)!

Inne sposoby wsparcia HackTricks:

Wspólne techniki odkrywania Cloudflare

  • Możesz użyć usługi, która udostępnia historyczne rekordy DNS domeny. Być 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 adres IP źródłowy.
  • Sprawdź również rekordy DNS innych subdomen wskazujących bezpośrednio na adresy IP, ponieważ możliwe jest, że inne subdomeny wskazują na ten sam serwer (być może w celu udostępnienia FTP, poczty lub innej usługi).
  • Jeśli znajdziesz SSRF wewnątrz aplikacji internetowej, możesz go wykorzystać, aby uzyskać adres IP serwera.
  • Wyszukaj unikalny ciąg znaków ze strony internetowej w przeglądarkach, takich jak shodan (a być może google i podobne?). Być może znajdziesz adres IP zawierający ten treść.
  • W podobny sposób, zamiast szukać unikalnego ciągu znaków, możesz wyszukać ikonę favicon za pomocą narzędzia: https://github.com/karma9874/CloudFlare-IP lub https://github.com/pielco11/fav-up
  • To nie będzie działać bardzo często, ponieważ serwer musi wysyłać tę samą odpowiedź, gdy jest odwoływany przez adres IP, ale nigdy nie wiesz.

Narzędzia do odkrywania Cloudflare

# 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

Odkrywanie Cloudflare z maszyn w chmurze

Należy zauważyć, że nawet jeśli to zostało wykonane 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" %}

# 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

Omijanie Cloudflare za pomocą Cloudflare

Uwierzytelnione Origin Pulls

Ten mechanizm polega na użyciu certyfikatów SSL klienta do uwierzytelniania połączeń między serwerami odwrotnego proxy Cloudflare a serwerem pochodzenia, co nazywane jest mTLS.

Zamiast konfigurować własny certyfikat, klienci mogą po prostu użyć certyfikatu Cloudflare, aby umożliwić dowolne połączenie z Cloudflare, bez względu na najemcę.

{% hint style="danger" %} W związku z tym, atakujący może po prostu ustawić domenę w Cloudflare, używając certyfikatu Cloudflare i skierować ją na adres IP ofiary. W ten sposób, ustawiając swoją domenę całkowicie niechronioną, Cloudflare nie będzie chronić wysyłanych żądań. {% endhint %}

Więcej informacji tutaj.

Dozwolone adresy IP Cloudflare

Spowoduje to odrzucenie połączeń, które nie pochodzą z zakresu adresów IP Cloudflare. Jest to również podatne na wcześniejszą konfigurację, w której atakujący po prostu skierowuje swoją własną domenę w Cloudflare na adres IP ofiary i atakuje go.

Więcej informacji tutaj.

Omijanie Cloudflare dla scrapingu

Pamięć podręczna

Czasami chcesz po prostu ominąć Cloudflare, aby tylko przeszukiwać stronę internetową. Istnieją pewne opcje:

  • 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/

Rozwiązania Cloudflare

Opracowano wiele rozwiązań Cloudflare:

Wzmocnione przeglądarki bez głowy

Użyj przeglądarki bez głowy, która nie jest wykrywana jako automatyczna przeglądarka (może być konieczne dostosowanie jej do tego). Oto kilka opcji:

Inteligentny proxy z wbudowanym mechanizmem bypassu Cloudflare

Inteligentne proxy są ciągle aktualizowane przez wyspecjalizowane firmy, które mają na celu obejście środków bezpieczeństwa Cloudflare (ponieważ to jest ich działalność).

Niektóre z nich to:

Dla tych, którzy szukają zoptymalizowanego rozwiązania, wyróżnia się ScrapeOps Proxy Aggregator. Ta usługa integruje ponad 20 dostawców proxy w jedno API, automatycznie wybierając najlepsze i najbardziej opłacalne proxy dla Twoich domen docelowych, oferując tym samym doskonałą opcję do omijania obrony Cloudflare.

Reverse Engineering ochrony przed botami Cloudflare

Reverse engineering środków anty-botowych Cloudflare to taktyka stosowana przez dostawców inteligentnych proxy, odpowiednia do rozległego przeszukiwania stron internetowych bez wysokich kosztów związanych z uruchamianiem wielu przeglądarek bez głowy.

Zalety: Ta metoda pozwala na stworzenie niezwykle wydajnego bypassu, który specjalnie celuje w kontrole Cloudflare, idealny do operacji na dużą skalę.

Wady: Wada polega na złożoności związanej z zrozumieniem i oszukiwaniem celowo niejasnego systemu anty-botowego Cloudflare, wymagającym ciągłego wysiłku w celu testowania różnych strategii i aktualizacji bypassu w miarę udoskonalania ochrony Cloudflare.

Dowiedz się więcej na temat tego, jak to zrobić w oryginalnym artykule.

Odwołania

Naucz się hakować AWS od zera do bohatera z htARTE (HackTricks AWS Red Team Expert)!

Inne sposoby wsparcia HackTricks: