Interoperabilita bezpečnostních funkcí
Cloudflare aplikuje na každý příchozí požadavek více bezpečnostních funkcí. Každá funkce běží v konkrétní fázi a jejich pořadí určuje, která funkce zasáhne první. Pochopení tohoto pořadí vám pomůže předejít konfliktům a omezit falešně pozitivní výsledky.
Pořadí vykonávání
Bezpečnostní funkce Cloudflare poháněné Ruleset Engine běží v pevné posloupnosti fází. Když dorazí požadavek, prochází jednotlivými fázemi v pořadí. Pokud pravidlo provede ukončující akce (například Block nebo Managed Challenge), požadavek se zastaví a nedostane se do pozdějších fází.
Bezpečnostní fáze požadavku, v pořadí vykonávání, jsou:
| Název fáze | Produkt |
|---|---|
ddos_l7 |
HTTP DDoS Attack Protection |
http_request_firewall_custom |
Vlastní pravidla |
http_ratelimit |
Pravidla rate limitingu |
http_request_firewall_managed |
Managed Rules |
http_request_sbfm |
Super Bot Fight Mode |
V rámci každé fáze běží rulesety na úrovni účtu před rulesety na úrovni zóny.
Ruleset Engine pohání mnoho produktů Cloudflare i mimo oblast bezpečnosti. Viz Seznam fází pro úplný seznam fází požadavků a odpovědí.
Funkce mimo Ruleset Engine
Následující bezpečnostní funkce nejsou poháněny enginem Ruleset Engine a vyhodnocují se nezávisle:
- IP Access Rules
- Zone Lockdown
- User Agent Blocking
- Browser Integrity Check
- Hotlink Protection
- Security Level
Protože tyto funkce běží nezávisle, neřídí se výše popsaným pořadím fází.
Přehled bezpečnostních funkcí
Ochrana proti DDoS
Ochrana proti DDoS je vždy zapnutá na všech Cloudflare plánech. L7 HTTP DDoS Attack Protection detekuje a mitiguje DDoS útoky na aplikační vrstvě. L3/4 Network-layer DDoS Attack Protection řeší útoky na síťové vrstvě. Aby DDoS ochrana fungovala, nemusíte nic zapínat ani konfigurovat.
Vlastní pravidla
Vlastní pravidla jsou pravidla, která definujete vy. Běží ve fázi http_request_firewall_custom fázi a podporují akce jako Block, Managed Challenge, Skip a Log. Můžete odkazovat na bot score pole, Skóre útoku WAF pole a všechna standardní pole požadavku.
Pravidla rate limitingu
Pravidla rate limitingu omezují (throttle) nebo blokují provoz překračující definovanou frekvenci požadavků. Běží ve fázi http_ratelimit fázi, po vlastních pravidlech.
Managed Rules
Managed Rules jsou předkonfigurované sady pravidel udržované Cloudflarem. Patří mezi ně Cloudflare Managed Ruleset a OWASP Core Ruleset. Běží ve fázi http_request_firewall_managed fáze.
Bot Fight Mode
Bot Fight Mode je k dispozici v plánech Free. Jde o jednoduchý přepínač zapnuto/vypnuto, který vystavuje challenge provozu odpovídajícímu vzorcům známých botů. Jeho chování nelze přizpůsobit ani jej přeskočit vlastními pravidly.
Super Bot Fight Mode
Super Bot Fight Mode (SBFM) je k dispozici v plánech Pro, Business a Enterprise (bez doplňku Bot Management). Běží v http_request_sbfm fázi a nabízí větší kontrolu než Bot Fight Mode. Můžete nakonfigurovat samostatné akce pro Definitely automated, Pravděpodobně automatizovaný a Ověření boti provoz. SBFM můžete pro konkrétní požadavky přeskočit pomocí Skip akce ve vlastních pravidlech.
Bot Management
Bot Management je doplněk pro plán Enterprise. Generuje bot skóre od 1 na 99 pro každý požadavek. Nižší skóre znamená více automatizovaný provoz. Vlastní pravidla píšete pomocí cf.bot_management.score pole k provedení akce na základě tohoto skóre. Více informací najdete v Proměnné Bot Managementu.
Klíčová pravidla interakce
Tato pravidla určují, jak spolu bezpečnostní funkce interagují:
- Ukončující (terminating) akce zastaví průběh vyhodnocování požadavku. Pokud pravidlo požadavek zablokuje nebo mu předloží challenge, Cloudflare pro tento požadavek nevyhodnocuje pozdější fáze.
- Vlastní pravidla běží před SBFM. Terminující akce ve vlastních pravidlech zabrání Super Bot Fight Mode ve vyhodnocení požadavku.
- Skip akce obcházejí pozdější fáze. Můžete použít Skip akce ve vlastních pravidlech k obejití pravidel rate limitingu (
http_ratelimit), Super Bot Fight Mode (http_request_sbfm) a Managed Rules (http_request_firewall_managed). - Bot Fight Mode nelze přeskočit. Protože Bot Fight Mode není součástí Ruleset Engine, vlastní pravidla jej nemohou přeskočit. Pokud potřebujete vyjmout provoz z ochrany proti botům, přejděte na Super Bot Fight Mode nebo Bot Management.
- Skóre Bot Managementu jsou dostupná ve vlastních pravidlech. Zákazníci s plánem Enterprise a Bot Managementem mohou použít
cf.bot_management.scoreve výrazech vlastních pravidel k definování vlastních prahů podle cesty, user agenta nebo jakékoli jiné vlastnosti požadavku.
Běžné scénáře
Web malé firmy (plán Free)
Plán Free zahrnuje ochranu proti DDoS a Bot Fight Mode.
- Ochrana proti DDoS běží automaticky u každého požadavku.
- Zapněte Bot Fight Mode v části Security > Settings k vystavení challenge známým vzorcům botů.
- Zapněte Block AI Bots abyste zabránili AI crawlerům ve scrapování vašeho obsahu.
Protože Bot Fight Mode nelze přeskočit ani přizpůsobit, nemůžete vytvářet výjimky pro konkrétní boty. Pokud Bot Fight Mode způsobuje falešně pozitivní detekce u legitimního automatizovaného provozu (například monitorovacích služeb nebo platebních procesorů), zvažte upgrade na plán Pro nebo Business, který zahrnuje Super Bot Fight Mode.
E-commerce web (plán Pro nebo Business)
Plán Pro nebo Business přidává Super Bot Fight Mode, vlastní pravidla a Managed Rules.
- Ochrana proti DDoS běží automaticky.
- Zapněte Super Bot Fight Mode k blokování automatizovaného a pravděpodobně automatizovaného provozu.
- Nasaďte Managed Rules pro ochranu před známými zranitelnostmi, jako jsou SQL injection a cross-site scripting.
- Vytvářejte vlastní pravidla s Skip akci k povolení legitimního automatizovaného provozu, zatímco SBFM blokuje škodlivé boty všude jinde. Použijte následující konfiguraci pravidla:
- Nastavte výraz pravidla tak, aby odpovídal IP adresám nebo user agentům vašeho platebního procesora.
- Nastavte akci na Skip, a vyberte Super Bot Fight Mode.
Enterprise API a web (plán Enterprise)
Plán Enterprise s doplňkem Bot Management poskytuje největší flexibilitu.
- Ochrana proti DDoS běží automaticky.
- Bot Management generuje bot score u každého požadavku.
- Vytvářejte vlastní pravidla odkazující na
cf.bot_management.scorek definování vlastních prahů. Například blokujte požadavky s bot skóre pod 30 na cestách webu a zároveň povolte všechna skóre na API cestách, které používají ověření partneři. - Pomocí pravidel rate limitingu omezte zneužívající vzorce provozu.
- Nasazení Managed Rules pro ochranu před známými zranitelnostmi.
Řešení konfliktů
Když bezpečnostní funkce zasahují do legitimního provozu, použijte následující kroky k identifikaci a vyřešení problému.
Zjištění, která funkce požadavek zablokovala
Použijte Security Events k identifikaci funkce, která zablokovala požadavek:
-
V Cloudflare dashboardu přejděte na Analytics stránku.
Přejděte na Analytics ↗ -
Vyberte Události záložku.
-
Najděte zablokovaný požadavek v logu.
-
Zkontrolujte Služba pole zjistíte, který produkt akci provedl. Toto pole vám řekne, kterou funkci upravit.
Řešení falešně pozitivních detekcí Bot Fight Mode
Bot Fight Mode nepodporuje výjimky. Máte dvě možnosti:
- Úplně vypněte Bot Fight Mode v části Security > Settings.
- Přejděte na plán se Super Bot Fight Mode, který podporuje skip pravidla.
Další informace viz Řešení falešně pozitivních výsledků z Bot Fight Mode nebo Super Bot Fight Mode.
Řešení falešně pozitivních detekcí Super Bot Fight Mode
Vytvořte vlastní pravidlo s Skip pro obejití SBFM u dotčeného provozu:
-
V Cloudflare dashboardu přejděte na Bezpečnostní pravidla stránku.
Přejděte na Bezpečnostní pravidla ↗ -
Vyberte Create rule > Vlastní pravidla.
-
Definujte výraz, který odpovídá legitimnímu provozu (například konkrétní rozsah IP adres nebo user agent).
-
Nastavte akci na Skip a vyberte Super Bot Fight Mode.
Další informace viz Řešení falešně pozitivních výsledků z Bot Fight Mode nebo Super Bot Fight Mode.
Řešení falešně pozitivních detekcí Managed Rules
Pokud spravované pravidlo blokuje legitimní provoz:
- Vytvořte Výjimka WAF k přeskočení konkrétních pravidel nebo sad pravidel pro odpovídající požadavky.
- Zakažte jednotlivá pravidla ve spravované sadě, pokud se na vaši aplikaci nevztahují.
Podrobný návod viz Řešení potíží se spravovanými pravidly.