# Cloudflare Security {{#include ../../banners/hacktricks-training.md}} U Cloudflare nalogu postoje neka **opšta podešavanja i usluge** koja se mogu konfigurisati. Na ovoj stranici ćemo **analizirati podešavanja vezana za sigurnost svake sekcije:**
## Websites Pregledajte svako sa: {{#ref}} cloudflare-domains.md {{#endref}} ### Domain Registration - [ ] U **`Transfer Domains`** proverite da li nije moguće preneti bilo koji domen. Pregledajte svako sa: {{#ref}} cloudflare-domains.md {{#endref}} ## Analytics _Nisam mogao pronaći ništa za proveru bezbednosti konfiguracije._ ## Pages Na svakoj Cloudflare stranici: - [ ] Proverite za **osetljive informacije** u **`Build log`**. - [ ] Proverite za **osetljive informacije** u **Github repozitorijumu** dodeljenom stranicama. - [ ] Proverite za potencijalno kompromitovanje github repozitorijuma putem **workflow command injection** ili `pull_request_target` kompromitovanja. Više informacija na [**Github Security page**](../github-security/). - [ ] Proverite za **ranjive funkcije** u direktorijumu `/fuctions` (ako ih ima), proverite **preusmeravanja** u datoteci `_redirects` (ako ih ima) i **pogrešno konfigurisane zaglavlja** u datoteci `_headers` (ako ih ima). - [ ] Proverite za **ranjivosti** na **web stranici** putem **blackbox** ili **whitebox** ako možete **pristupiti kodu** - [ ] U detaljima svake stranice `//pages/view/blocklist/settings/functions`. Proverite za **osetljive informacije** u **`Environment variables`**. - [ ] U detaljima stranice proverite takođe **build command** i **root directory** za **potencijalne injekcije** koje bi mogle kompromitovati stranicu. ## **Workers** Na svakom Cloudflare radniku proverite: - [ ] Okidače: Šta pokreće radnika? Može li **korisnik poslati podatke** koji će biti **korišćeni** od strane radnika? - [ ] U **`Settings`**, proverite za **`Variables`** koje sadrže **osetljive informacije** - [ ] Proverite **kod radnika** i tražite **ranjivosti** (posebno na mestima gde korisnik može upravljati unosom) - Proverite za SSRFs koji vraćaju označenu stranicu koju možete kontrolisati - Proverite XSS koji izvršavaju JS unutar svg slike - Moguće je da radnik komunicira sa drugim internim uslugama. Na primer, radnik može komunicirati sa R2 bucket-om koji čuva informacije dobijene iz unosa. U tom slučaju, potrebno je proveriti koje mogućnosti radnik ima nad R2 bucket-om i kako bi to moglo biti zloupotrebljeno iz korisničkog unosa. > [!WARNING] > Imajte na umu da po defaultu **Radniku se dodeljuje URL** kao što je `..workers.dev`. Korisnik može postaviti na **subdomen** ali uvek možete pristupiti sa tim **originalnim URL-om** ako ga znate. ## R2 Na svakom R2 bucket-u proverite: - [ ] Konfigurišite **CORS Policy**. ## Stream TODO ## Images TODO ## Security Center - [ ] Ako je moguće, pokrenite **`Security Insights`** **skaniranje** i **`Infrastructure`** **skaniranje**, jer će **istaknuti** zanimljive informacije **vezane za sigurnost**. - [ ] Samo **proverite ove informacije** za bezbednosne pogrešne konfiguracije i zanimljive informacije ## Turnstile TODO ## **Zero Trust** {{#ref}} cloudflare-zero-trust-network.md {{#endref}} ## Bulk Redirects > [!NOTE] > Za razliku od [Dynamic Redirects](https://developers.cloudflare.com/rules/url-forwarding/dynamic-redirects/), [**Bulk Redirects**](https://developers.cloudflare.com/rules/url-forwarding/bulk-redirects/) su suštinski statični — ne podržavaju **nikakve operacije zamene stringova** ili regularne izraze. Međutim, možete konfigurisati parametre URL preusmeravanja koji utiču na njihovo ponašanje u vezi sa usklađivanjem URL-a i njihovim ponašanjem tokom izvršavanja. - [ ] Proverite da **izrazi** i **zahtevi** za preusmeravanja **ima smisla**. - [ ] Proverite takođe za **osetljive skrivene krajnje tačke** koje sadrže zanimljive informacije. ## Notifications - [ ] Proverite **obaveštenja.** Ova obaveštenja se preporučuju 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 **odredišne tačke**, jer može biti **osetljivih informacija** (osnovna http autentifikacija) u webhook URL-ovima. Takođe se pobrinite da webhook URL-ovi koriste **HTTPS** - [ ] Kao dodatnu proveru, mogli biste pokušati da **imitirate Cloudflare obaveštenje** trećoj strani, možda možete nekako **ubaciti nešto opasno** ## Manage Account - [ ] Moguće je videti **poslednje 4 cifre kreditne kartice**, **datum isteka** i **adresu za naplatu** u **`Billing` -> `Payment info`**. - [ ] Moguće je videti **tip plana** koji se koristi u nalogu u **`Billing` -> `Subscriptions`**. - [ ] U **`Members`** moguće je videti sve članove naloga i njihovu **ulogu**. Imajte na umu da ako tip plana nije Enterprise, postoje samo 2 uloge: Administrator i Super Administrator. Ali ako je korišćen **plan Enterprise**, [**više uloga**](https://developers.cloudflare.com/fundamentals/account-and-billing/account-setup/account-roles/) može se koristiti da se prati princip minimalnih privilegija. - Stoga, kada god je to moguće, **preporučuje se** korišćenje **Enterprise plana**. - [ ] U članovima je moguće proveriti koji **članovi** imaju **2FA omogućeno**. **Svaki** korisnik bi trebao imati omogućeno. > [!NOTE] > Imajte na umu da srećom uloga **`Administrator`** ne daje dozvole za upravljanje članstvima (**ne može povećati privilegije ili pozvati** nove članove) ## DDoS Investigation [Proverite ovaj deo](cloudflare-domains.md#cloudflare-ddos-protection). {{#include ../../banners/hacktricks-training.md}}