← Dokumentace WAF / custom-rules / use-cases
Vyzývání k ověření škodlivých botů
Funkce Cloudflare Bot Management hodnotí pravděpodobnost, že požadavek pochází od bota.
Nastavení botů
Před vytvořením vlastních pravidel pro ochranu před boty zkontrolujte nastavení v sekci Security Settings stránce v sekci Provoz botů. Vestavěné funkce se automaticky aktualizují o nové signatury botů, nezapočítávají se do limitů vlastních pravidel a jejich správa je jednodušší.
| Případ použití | Nastavení botů |
|---|---|
| Blokování AI crawlerů (GPTBot, ClaudeBot atd.) | Block AI bots |
| Blokování jednoznačně automatizovaného provozu (skóre bota 1) | Definitely automated |
| Vyzývání k ověření pravděpodobně automatizovaného provozu (bot score 2 až 29) | Likely automated |
| Povolit ověřené boty (Googlebot, Bingbot atd.) | Ověření roboti |
| Rozšíření ochrany proti botům na statické zdroje | Static resource protection |
| Povolit loopback požadavky WordPress | Optimalizace pro WordPress |
Vlastní pravidla jsou stále užitečná, pokud potřebujete ochranu specifickou pro danou cestu (odlišné zpracování pro /api/ oproti /login/), vlastní prahové hodnoty skóre (například skóre nižší než 20 místo 30), podmíněnou logiku kombinující bot score s dalšími poli nebo vlastní akce, které nejsou dostupné ve výchozím nastavení.
Skóre bota se pohybuje v rozmezí od 1 do 99. Nízké skóre znamená, že požadavek pochází ze skriptu, API služby nebo automatizovaného agenta. Vysoké skóre znamená, že požadavek vydal člověk ze standardního počítačového nebo mobilního prohlížeče.
Tyto příklady používají:
cf.bot_management.score, abyste cílili na požadavky od botůcf.bot_management.verified_botk identifikaci požadavků z známí dobří roboti ↗cf.bot_management.ja3_hash, abyste cílili na konkrétní JA3 Fingerprints
Doporučená pravidla
Pro nejlepší výsledky:
- Použijte Bot Analytics k tomu, abyste se seznámili se svým provozem před použitím pravidel.
- Začněte s nízkou hodnotou a práh pro boty postupně zvyšujte.
Vaše pravidla se také mohou lišit v závislosti na povaha vašeho webu a vaší toleranci vůči falešně pozitivním výsledkům.
Obecná ochrana
Následující tři vlastní pravidla poskytují základní ochranu proti škodlivým botům:
Pravidlo 1: Přeskočit ověřené boty
- Výraz:
(cf.bot_management.verified_bot) - Akce: Přeskočit:
- Všechna zbývající vlastní pravidla
- Známí dobří boti (Googlebot, Bingbot, monitorovací služby) obcházejí všechna vlastní pravidla. Podívejte se na seznam ověřených botů a Adresář botů Radar ↗.
Pravidlo 2: Blokovat jednoznačně automatizovaný provoz
- Výraz:
(cf.bot_management.score eq 1) - Akce: Block
- Provoz se skóre 1 je jednoznačně automatizovaný. Jeho blokování nese jen minimální riziko falešně pozitivních výsledků.
Pravidlo 3: Vyzvat pravděpodobně automatizovaný provoz k ověření
- Výraz:
(cf.bot_management.score gt 1 and cf.bot_management.score lt 30) - Akce: Managed Challenge
- Skóre 2 až 29 znamená pravděpodobně automatizované chování. Výzva k ověření propustí legitimní uživatele a zároveň zastaví boty.
Specifická ochrana prohlížeče, API a mobilního provozu
Chránit koncové body prohlížeče
Když je požadavek jednoznačně automatizovaný (skóre 1) nebo pravděpodobně automatizovaný (skóre 2 až 29) a je ne na seznamu známých dobrých botů, Cloudflare požadavek zablokuje.
- Výraz:
(cf.bot_management.score lt 30 and not cf.bot_management.verified_bot) - Akce: Block
Vyjmutí provozu API
Bot Management detekuje automatizované uživatele, proto musíte výslovně povolit své dobré automatizovaný provoz: to zahrnuje váš API ↗ a partnerská API.
Tento příklad nabízí stejnou ochranu jako pravidlo pouze pro prohlížeče, ale umožňuje automatizovaný provoz do vašeho API.
- Výraz:
(cf.bot_management.score lt 30 and not cf.bot_management.verified_bot and not starts_with(http.request.uri.path, "/api")) - Akce: Block
Přizpůsobit mobilnímu provozu
Bot Management může být na mobilní provoz citlivější, proto je vhodné doplnit další logiku, aby nedocházelo k blokování legitimních požadavků.
Pokud zpracováváte požadavky z vlastní mobilní aplikace, můžete je případně povolit na základě konkrétního JA3 fingerprint.
- Výraz:
(cf.bot_management.ja3_hash eq "df669e7ea913f1ac0c0cce9a201a2ec1") - Akce: Přeskočit:
- Všechna zbývající vlastní pravidla
V opačném případě můžete nastavit nižší prahové hodnoty pro mobilní provoz. Následující pravidla by blokovala jednoznačně automatizovaný mobilní provoz a prováděla by challenge u pravděpodobně automatizovaného provozu.
Pravidlo 1:
- Výraz:
(cf.bot_management.score lt 2 and http.user_agent contains "App_Name 2.0") - Akce: Block
Pravidlo 2:
- Výraz:
(cf.bot_management.score lt 30 and http.user_agent contains "App_Name 2.0") - Akce: Managed Challenge
Kombinujte různá pravidla
Pokud vaše doména zpracovává mobilní, prohlížečový a API provoz, budete chtít tato ukázková pravidla seřadit v následujícím pořadí:
- Pravidlo pro Provoz API
- Pravidlo(a) pro mobilní provoz
- Pravidlo pro provoz prohlížečů
Static resource protection
Statické zdroje jsou ve výchozím nastavení chráněny, když vytváříte vlastní pravidla pomocí cf.bot_management.score .
Chcete-li vyloučit statické prostředky, zahrňte not (cf.bot_management.static_resource) ve výrazu svého pravidla. Podrobnosti naleznete v Static resource protection.
Další aspekty
Odtud pak můžete přizpůsobit svá vlastní pravidla na základě konkrétních cest požadavků (/login nebo /signup), běžných vzorů provozu nebo mnoha dalších charakteristik.
Nezapomeňte zkontrolovat Bot Analytics a Security Events ke kontrole, zda vaše pravidla potřebují další doladění.