Cloudflare Security

Tip

Učite i vežbajte AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Učite i vežbajte GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Učite i vežbajte Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Podržite HackTricks

U Cloudflare nalogu postoje neke opšte postavke i servisi koji se mogu konfigurisati. Na ovoj stranici ćemo analizirati bezbednosne postavke svake sekcije:

Veb sajtovi

Pregledajte svaki koristeći:

Cloudflare Domains

Registracija domena

  • U Transfer Domains proverite da nije moguće transferovati nijedan domen.

Pregledajte svaki koristeći:

Cloudflare Domains

Analytics

Izgleda da nisam našao ništa što bi se proveravalo pri sigurnosnom pregledu konfiguracije.

Pages

Na svakoj Cloudflare Pages:

  • Proverite da li ima osetljivih informacija u Build log.
  • Proverite da li ima osetljivih informacija u Github repository dodeljenom Pages.
  • Proverite moguć kompromitovanje github repozitorijuma kroz workflow command injection ili kompromitovanje pull_request_target. Više informacija na Github Security page.
  • Proverite da li postoje vulnerable functions u direktorijumu /fuctions (ako postoji), proverite redirects u fajlu _redirects (ako postoji) i misconfigured headers u fajlu _headers (ako postoji).
  • Proverite ranjivosti na web stranici preko blackbox ili whitebox testiranja ako imate pristup kodu.
  • U detaljima svake stranice /<page_id>/pages/view/blocklist/settings/functions. Proverite da li ima osetljivih informacija u Environment variables.
  • Na stranici sa detaljima proverite takođe build command i root directory zbog potencijalnih injekcija koje bi kompromitovale stranicu.

Workers

Na svakom Cloudflare Worker-u proverite:

  • Triggere: Šta pokreće worker? Može li korisnik poslati podatke koji će biti iskorišćeni od strane workera?
  • U Settings, proverite da li Variables sadrže osetljive informacije
  • Proverite kod workera i tražite vulnerabilities (posebno na mestima gde korisnik može kontrolisati input)
  • Proverite SSRF-ove koji vraćaju stranicu koju možete kontrolisati
  • Proverite XSS-e koji izvršavaju JS unutar svg slike
  • Moguće je da worker komunicira sa drugim internim servisima. Na primer, worker može da radi sa R2 bucket-om koji skladišti informacije dobijene iz inputa. U tom slučaju, potrebno je proveriti kakve privilegije worker ima nad R2 bucket-om i kako se to može zloupotrebiti preko korisničkog inputa.

Warning

Imajte na umu da je po defaultu Worker dobija URL kao što je <worker-name>.<account>.workers.dev. Korisnik može postaviti subdomain, ali uvek mu možete pristupiti preko tog original URL-a ako ga znate.

Za praktičnu zloupotrebu Workers kao pass-through proxies (IP rotation, FireProx-style), pogledajte:

Cloudflare Workers Pass Through Proxy Ip Rotation

R2

Na svakom R2 bucket-u proverite:

  • Konfigurišite CORS Policy.

Stream

TODO

Images

TODO

Security Center

  • Ako je moguće, pokrenite Security Insights scan i Infrastructure scan, jer će ista istaći interesantne informacije u vezi sa bezbednošću.
  • Jednostavno proverite ove informacije zbog sigurnosnih pogrešnih konfiguracija i interesantnih podataka

Turnstile

TODO

Zero Trust

Cloudflare Zero Trust Network

Bulk Redirects

Note

Za razliku od Dynamic Redirects, Bulk Redirects su suštinski statični — one ne podržavaju nikakve operacije zamene stringova ili regularne izraze. Međutim, možete konfigurisati URL parametre za redirect koji utiču na njihovo ponašanje pri poklapanju i izvršavanju.

  • Proverite da li expressions i requirements za redirects imaju smisla.
  • Proverite takođe za osetljive skrivene endpoint-e koji mogu sadržati interesantne informacije.

Notifications

  • Proverite obaveštenja. Ova obaveštenja su preporučljiva za bezbednost:
  • Usage Based Billing
  • HTTP DDoS Attack Alert
  • Layer 3/4 DDoS Attack Alert
  • Advanced HTTP DDoS Attack Alert
  • Advanced Layer 3/4 DDoS Attack Alert
  • Flow-based Monitoring: Volumetric Attack
  • Route Leak Detection Alert
  • Access mTLS Certificate Expiration Alert
  • SSL for SaaS Custom Hostnames Alert
  • Universal SSL Alert
  • Script Monitor New Code Change Detection Alert
  • Script Monitor New Domain Alert
  • Script Monitor New Malicious Domain Alert
  • Script Monitor New Malicious Script Alert
  • Script Monitor New Malicious URL Alert
  • Script Monitor New Scripts Alert
  • Script Monitor New Script Exceeds Max URL Length Alert
  • Advanced Security Events Alert
  • Security Events Alert
  • Proverite sve destinacije, jer webhook URL-ovi mogu sadržati osetljive informacije (basic http auth). Takođe se postarajte da webhook URL-ovi koriste HTTPS
  • Kao dodatnu proveru, možete pokušati da impersonate a cloudflare notification trećoj strani — možda možete nekako inject nešto opasno

Manage Account

  • Moguće je videti poslednje 4 cifre kreditne kartice, datum isteka i billing address u Billing -> Payment info.
  • Moguće je videti tip plana korišćenog u nalogu u Billing -> Subscriptions.
  • U Members je moguće videti sve članove naloga i njihove role. Imajte na umu da ako tip plana nije Enterprise, postoje samo 2 role: Administrator i Super Administrator. Ali ako je korišćen plan Enterprise, više role mogu biti korišćene da se primeni princip najmanjih privilegija.
  • Dakle, kad god je moguće, preporučuje se korišćenje Enterprise plana.
  • U Members je moguće proveriti koji members imaju 2FA enabled. Svaki korisnik bi trebalo da ima 2FA omogućen.

Note

Imajte na umu da, srećom, uloga Administrator ne daje dozvole za upravljanje članstvom (ne može eskalirati privilegije niti pozvati nove članove)

DDoS Investigation

Check this part.

Tip

Učite i vežbajte AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Učite i vežbajte GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE) Učite i vežbajte Azure Hacking: HackTricks Training Azure Red Team Expert (AzRTE)

Podržite HackTricks