Dokumentace Domluvit pilot

Detekce škodlivých nahrávaných souborů

Detekce škodlivých nahrávek je detekce provozu které prohledává soubory a další obsah nahraný do vaší aplikace na výskyt malwaru.

Když tuto detekci zapnete, WAF kontroluje příchozí nahrávané soubory a prověřuje je na škodlivé signatury. Výsledky kontroly jsou dostupné jako pole které můžete použít v vlastní pravidla a pravidla rate limitingu k reakci na požadavky obsahující škodlivý obsah.

Jak to funguje

Jakmile tuto detekci zapnete, Cloudflare kontroluje veškerý příchozí provoz a identifikuje objekty obsahu automaticky.

Když Cloudflare v požadavku zjistí jeden nebo více objektů obsahu, odešle je k analýze antivirovému (AV) skeneru. Jde o stejný AV skener, jaký se používá v Cloudflare Zero Trust.

Na základě výsledků skenování detekce naplní pole na které se můžete odkazovat ve výrazech pravidel. Můžete si například vytvořit pravidlo, které blokuje požadavky se škodlivými soubory, nebo konkrétnější pravidlo, které navíc porovnává velikost souboru, typ souboru nebo cestu URI.

Co je objekt obsahu?

Objekt obsahu je soubor nebo binární payload v požadavku, který Cloudflare identifikuje jako obsah vhodný k prohledání. Detekce škodlivých nahrávek používá heuristiky k automatickému nalezení objektů obsahu, aniž by vycházela z požadavku Content-Type hlavičku (protože tuto hlavičku lze zmanipulovat).

Z kontroly jsou vyloučeny následující typy obsahu: text/html, text/x-shellscript, application/json, text/csv, a text/xml. Veškerý ostatní detekovaný obsah se považuje za objekt obsahu. Mezi běžné příklady patří:

Pokud Cloudflare zjistí škodlivý objekt, ale nedokáže určit jeho přesný typ obsahu, nahlásí objekt jako application/octet-stream.

Prohledaný obsah

Skenování obsahu může kontrolovat následující objekty obsahu na škodlivý obsah:

Zkontrolovány budou všechny objekty obsahu v příchozím požadavku, konkrétně u požadavků s více nahranými soubory (například odeslaný formulář HTML s několika vstupy pro soubory).

Skener obsahu důkladně zkontroluje objekty obsahu o velikosti do 50 MB. U větších objektů obsahu skener analyzuje prvních 50 MB a výsledky kontroly poskytne na základě této části objektu.

Vlastní skenovací výrazy

Někdy budete chtít určit, kde se mají hledat objekty obsahu, například pokud je obsah řetězcem zakódovaným v Base64 uvnitř payloadu JSON. Například:

{ "file": "<BASE64_ENCODED_STRING>" }

V těchto situacích nakonfigurujte vlastní výraz skenování, který skeneru obsahu řekne, kde má objekty obsahu hledat. Další informace najdete v Konfigurace vlastního výrazu pro kontrolu.

Další informace a další příklady vyhledávání polí ve vnořených JSON payloadech najdete v lookup_json_string() dokumentaci k funkci.

Pole skenování obsahu

Když je povolena kontrola obsahu, můžete v pravidlech WAF použít následující pole:

Pole Popis
Obsahuje objekt obsahu
cf.waf.content_scan.has_obj
Boolean
Udává, zda požadavek obsahuje alespoň jeden objekt obsahu.
Obsahuje škodlivý objekt obsahu
cf.waf.content_scan.has_malicious_obj
Boolean
Udává, zda požadavek obsahuje alespoň jeden škodlivý objekt obsahu.
Počet škodlivých objektů obsahu
cf.waf.content_scan.num_malicious_obj
Integer
Počet škodlivých objektů obsahu zjištěných v požadavku (nula nebo více).
Skenování obsahu selhalo
cf.waf.content_scan.has_failed
Boolean
Udává, zda skener souborů nedokázal zkontrolovat žádný z objektů obsahu zjištěných v požadavku.
Počet objektů obsahu
cf.waf.content_scan.num_obj
Integer
Počet objektů obsahu zjištěných v požadavku (nula nebo více).
Velikost objektu obsahu
cf.waf.content_scan.obj_sizes
Array<Integer>
Pole velikostí souborů v bajtech v pořadí, ve kterém byly objekty obsahu v požadavku zjištěny.
Typ objektu obsahu
cf.waf.content_scan.obj_types
Array<String>
Pole typů souborů v pořadí, ve kterém byly objekty obsahu v požadavku zjištěny.
Výsledek objektu obsahu
cf.waf.content_scan.obj_results
Array<String>
Pole výsledků skenování v pořadí, ve kterém byly objekty obsahu v požadavku zjištěny.
Možné hodnoty: clean, suspicious, infected, a not scanned.

Příklady výrazů pravidel využívajících tato pole najdete v Příklady pravidel.

Požádejte o pilot zdarma

Domluvit pilot