Skupiny pravidel a pravidla pro počítačový rezervační Firewall webových aplikací

Brána Firewall webových aplikací Application Gateway (WAF) chrání webové aplikace před běžnými chybami zabezpečení a zneužitím. To se provádí prostřednictvím pravidel, která jsou definovaná na základě sad pravidel OWASP Core 3,2, 3,1, 3,0 nebo 2.2.9. Tato pravidla je možné zakázat na základě pravidla podle pravidel. Tento článek obsahuje nabízená současná pravidla a sady pravidel. Ve výjimečných případech, kdy je potřeba aktualizovat publikovaný RuleSet, se tady bude zdokumentovat.

Základní sady pravidel

Ve výchozím nastavení je Application Gateway WAF předem nakonfigurovaný pomocí počítačového rezervačního systému 3,0. Místo toho se ale můžete rozhodnout pro použití počítačového rezervačního systému 3,2, 3,1 nebo 2.2.9.

Počítačový počítač 3,2 (Public Preview) nabízí nový modul a nové sady pravidel, které chrání před infekcí Java, počáteční sada kontrol odesílání souborů, pevná falešně pozitivní a další.

Počítačový rezervační 3,1 nabízí nižší falešně pozitivní výsledky v porovnání s počítačovými rezervačními 3,0 a 2.2.9. Můžete také přizpůsobit pravidla tak, aby vyhovovala vašim potřebám.

Spravuje pravidla

WAF chrání před následujícími webovými ohroženími zabezpečení:

  • útoky prostřednictvím injektáže SQL
  • Útoky skriptování mezi weby
  • Další běžné útoky, jako je vkládání příkazů, podkládání požadavků HTTP, rozdělování odpovědí HTTP a zahrnutí vzdálených souborů
  • Porušení protokolu HTTP
  • Anomálie protokolu HTTP, jako například chybějící uživatel – agent a potvrzovací hlavičky
  • Roboty, prohledávací moduly a skenery
  • Běžné konfigurace neobvyklých aplikací (například Apache a IIS)

OWASP počítač 3,2 (Public Preview)

POČÍTAČOVÝ systém 3,2 obsahuje 13 skupin pravidel, jak je znázorněno v následující tabulce. Každá skupina obsahuje více pravidel, která je možné zakázat.

Poznámka

Počítačový rezervační 3,2 je k dispozici pouze pro WAF_v2 SKU.

Skupina pravidla Popis
Obecné Obecná skupina
REQUEST-911-METHOD-ENFORCEMENT Metody uzamčení (PUT, PATCH)
REQUEST-913-SCANNER-DETECTION Ochrana před skenery portů a prostředí
REQUEST-920-PROTOCOL-ENFORCEMENT Ochrana proti problémům s protokolem a kódováním
REQUEST-921-PROTOCOL-ATTACK Ochrana proti vkládání hlaviček, vkládání požadavků a rozdělování odpovědí
REQUEST-930-APPLICATION-ATTACK-LFI Ochrana proti útokům pomocí souborů a cest
REQUEST-931-APPLICATION-ATTACK-RFI Ochrana proti útokům na vzdálené zahrnutí souborů (RFI)
REQUEST-932-APPLICATION-ATTACK-RCE Ochrana před útoky vzdáleného spuštění kódu
REQUEST-933-APPLICATION-ATTACK-PHP Ochrana proti útokům prostřednictvím injektáže PHP
REQUEST-941-APPLICATION-ATTACK-XSS Ochrana proti útokům prostřednictvím skriptování mezi weby
REQUEST-942-APPLICATION-ATTACK-SQLI ochrana proti útokům pomocí injektáže SQL
REQUEST-943-APPLICATION-ATTACK-SESSION-FIXATION Ochrana proti útokům při fixace relací
POŽADAVEK – 944 – APLIKAČNÍ – ÚTOK – SESSION-JAVA Ochrana proti útokům v jazyce JAVA

OWASP POČÍTAČOVÝ POČÍTAČ 3,1

POČÍTAČOVÝ systém 3,1 obsahuje 13 skupin pravidel, jak je znázorněno v následující tabulce. Každá skupina obsahuje více pravidel, která je možné zakázat.

Poznámka

Počítačový rezervační 3,1 je k dispozici pouze pro WAF_v2 SKU.

Skupina pravidla Popis
Obecné Obecná skupina
REQUEST-911-METHOD-ENFORCEMENT Metody uzamčení (PUT, PATCH)
REQUEST-913-SCANNER-DETECTION Ochrana před skenery portů a prostředí
REQUEST-920-PROTOCOL-ENFORCEMENT Ochrana proti problémům s protokolem a kódováním
REQUEST-921-PROTOCOL-ATTACK Ochrana proti vkládání hlaviček, vkládání požadavků a rozdělování odpovědí
REQUEST-930-APPLICATION-ATTACK-LFI Ochrana proti útokům pomocí souborů a cest
REQUEST-931-APPLICATION-ATTACK-RFI Ochrana proti útokům na vzdálené zahrnutí souborů (RFI)
REQUEST-932-APPLICATION-ATTACK-RCE Ochrana před útoky vzdáleného spuštění kódu
REQUEST-933-APPLICATION-ATTACK-PHP Ochrana proti útokům prostřednictvím injektáže PHP
REQUEST-941-APPLICATION-ATTACK-XSS Ochrana proti útokům prostřednictvím skriptování mezi weby
REQUEST-942-APPLICATION-ATTACK-SQLI ochrana proti útokům pomocí injektáže SQL
REQUEST-943-APPLICATION-ATTACK-SESSION-FIXATION Ochrana proti útokům při fixace relací
POŽADAVEK – 944 – APLIKAČNÍ – ÚTOK – SESSION-JAVA Ochrana proti útokům v jazyce JAVA

OWASP POČÍTAČOVÝ POČÍTAČ 3,0

POČÍTAČOVÝ systém 3,0 zahrnuje 12 skupin pravidel, jak je znázorněno v následující tabulce. Každá skupina obsahuje více pravidel, která je možné zakázat.

Skupina pravidla Popis
Obecné Obecná skupina
REQUEST-911-METHOD-ENFORCEMENT Metody uzamčení (PUT, PATCH)
REQUEST-913-SCANNER-DETECTION Ochrana před skenery portů a prostředí
REQUEST-920-PROTOCOL-ENFORCEMENT Ochrana proti problémům s protokolem a kódováním
REQUEST-921-PROTOCOL-ATTACK Ochrana proti vkládání hlaviček, vkládání požadavků a rozdělování odpovědí
REQUEST-930-APPLICATION-ATTACK-LFI Ochrana proti útokům pomocí souborů a cest
REQUEST-931-APPLICATION-ATTACK-RFI Ochrana proti útokům na vzdálené zahrnutí souborů (RFI)
REQUEST-932-APPLICATION-ATTACK-RCE Ochrana před útoky vzdáleného spuštění kódu
REQUEST-933-APPLICATION-ATTACK-PHP Ochrana proti útokům prostřednictvím injektáže PHP
REQUEST-941-APPLICATION-ATTACK-XSS Ochrana proti útokům prostřednictvím skriptování mezi weby
REQUEST-942-APPLICATION-ATTACK-SQLI ochrana proti útokům pomocí injektáže SQL
REQUEST-943-APPLICATION-ATTACK-SESSION-FIXATION Ochrana proti útokům při fixace relací

OWASP POČÍTAČOVÝ 2.2.9

POČÍTAČOVÝ 2.2.9 zahrnuje 10 skupin pravidel, jak je znázorněno v následující tabulce. Každá skupina obsahuje více pravidel, která je možné zakázat.

Skupina pravidla Popis
crs_20_protocol_violations Ochrana proti narušením protokolu (například neplatné znaky nebo zpráva GET s textem žádosti)
crs_21_protocol_anomalies Ochrana před nesprávnými informacemi v hlavičce
crs_23_request_limits Ochrana před argumenty nebo soubory, které překračují omezení
crs_30_http_policy Ochrana proti neomezeným metodám, hlavičkám a typům souborů
crs_35_bad_robots Ochrana proti webovým prohledávacím modulům a skenerům
crs_40_generic_attacks Ochrana proti obecným útokům (jako je třeba fixace relace, zahrnutí vzdáleného souboru a vkládání PHP)
crs_41_sql_injection_attacks ochrana proti útokům pomocí injektáže SQL
crs_41_xss_attacks Ochrana proti útokům prostřednictvím skriptování mezi weby
crs_42_tight_security Ochrana proti útokům pomocí cest – procházení
crs_45_trojans Ochrana před trojskými koni zadní vrátka

Následující skupiny pravidel a pravidla jsou k dispozici při použití firewallu webových aplikací v Application Gateway.

sady pravidel 3,2

Všeobecně

RuleId Popis
200004 Možná nespárovaná hranice na více částí.

POŽADAVEK-911-METODA – VYNUCENÍ

RuleId Popis
911100 Metoda není u zásad povolená.

POŽADAVEK-913-DETEKCE SKENERU

RuleId Popis
913100 Nalezené User-Agent přidružené ke skeneru zabezpečení
913101 Nalezené User-Agent přidružené ke skriptování nebo obecnému klientovi HTTP
913102 Nalezené User-Agent přidružené k webovému crawleru/bot
913110 Našla se Hlavička požadavku přidružená ke skeneru zabezpečení.
913120 Našel se název souboru/argument pro požadavek přidružený ke skeneru zabezpečení.

POŽADAVEK-920-PROTOKOL – VYNUCENÍ

RuleId Popis
920100 Neplatný řádek požadavku HTTP
920120 Došlo k pokusu o vynechání dat v částech/formuláři.
920121 Došlo k pokusu o vynechání dat v částech/formuláři.
920160 Hlavička Content-Length protokolu HTTP není číselná.
920170 Získá nebo vrátí požadavek HEAD s obsahem textu.
920171 GET nebo HEAD Request s přenosovým kódováním.
920180 V požadavku POST chybí hlavička Content-Length.
920190 Range: Neplatná hodnota posledního bajtu.
920200 Rozsah: příliš mnoho polí (6 nebo více)
920201 Rozsah: moc velký počet polí pro požadavek PDF (35 nebo více)
920202 Rozsah: moc velký počet polí pro požadavek PDF (6 nebo více)
920210 Bylo nalezeno více nebo konfliktních dat záhlaví připojení.
920220 Pokus o útok zneužití kódování adresy URL
920230 Bylo zjištěno více kódování URL.
920240 Pokus o útok zneužití kódování adresy URL
920250 Pokus o útok zneužití kódování UTF8
920260 Pokus o útok proti zneužití Unicode s plnou/poloviční šířkou
920270 Neplatný znak v žádosti (znak null)
920271 Neplatný znak v žádosti (netisknutelné znaky)
920272 Neplatný znak v žádosti (mimo tisknutelné znaky pod ASCII 127)
920273 Neplatný znak v žádosti (mimo velmi striktní sadu)
920274 Neplatný znak v záhlavích žádostí (mimo velmi striktní sadu)
920280 V požadavku chybí Hlavička hostitele.
920290 Prázdná Hlavička hostitele
920310 Požadavek má prázdnou hlavičku Accept.
920311 Požadavek má prázdnou hlavičku Accept.
920320 Chybí záhlaví uživatelského agenta.
920330 Prázdné záhlaví uživatelského agenta
920340 Požadavek obsahující obsah, ale chybějící záhlaví Content-Type
920341 Požadavek obsahující obsah vyžaduje hlavičku Content-Type.
920350 Hlavička hostitele je numerická IP adresa.
920420 Typ obsahu žádosti není povolený zásadou.
920430 Verze protokolu HTTP není v zásadě povolená.
920440 Přípona souboru adresy URL je omezená zásadami.
920450 Záhlaví HTTP je omezené zásadami (% {MATCHED_VAR}).
920460 Neobvyklé řídicí znaky
920470 Neplatné záhlaví Content-Type
920480 Omezení parametru charset v hlavičce Content-Type

POŽADAVEK-921-PROTOKOL – ÚTOK

RuleId Popis
921110 Útok proti podvržení požadavku HTTP
921120 Útok na rozdělení HTTP odpovědi
921130 Útok na rozdělení HTTP odpovědi
921140 Útok prostřednictvím injektáže záhlaví HTTP prostřednictvím hlaviček
921150 Útok injektáže záhlaví HTTP prostřednictvím datové části (počet zjištěných znaků CR/LF)
921151 Útok injektáže záhlaví HTTP prostřednictvím datové části (počet zjištěných znaků CR/LF)
921160 Útok na injektáže záhlaví HTTP prostřednictvím datové části (CR/LF a záhlaví-název byl zjištěn)
921170 Znečištění parametru HTTP
921180 Znečišťování parametru HTTP (% {TX. 1})

POŽADAVEK-930-APLIKACE – ÚTOK – LFI

RuleId Popis
930100 Útok procházením cest (/.. /)
930110 Útok procházením cest (/.. /)
930120 Pokus o přístup k souboru operačního systému
930130 Omezený pokus o přístup k souboru

POŽADAVEK-931-APLIKACE – ÚTOK – RFI

RuleId Popis
931100 Možný útok vzdáleného začlenění souborů (RFI): parametr adresy URL s použitím IP adresy
931110 Možný útok vzdáleného začlenění souborů (RFI): běžný název parametru s chybou RFI, který používal datovou část adresy URL
931120 Možný útok vzdáleného začlenění souborů (RFI): datová část adresy URL použité pro znak otazníku (?)
931130 Možný útok na vzdálený soubor k zahrnutí (RFI): odkaz na Off-Domain nebo odkaz

POŽADAVEK – 932 – APLIKAČNÍ – ÚTOK – RCE

RuleId Popis
932100 Vzdálené spuštění příkazu: vkládání příkazů ze systému UNIX
932105 Vzdálené spuštění příkazu: vkládání příkazů ze systému UNIX
932106 Vzdálené spuštění příkazu: vkládání příkazů ze systému UNIX
932110 vzdálené spuštění příkazu: vkládání příkazů Windows
932115 Vzdálené spuštění příkazu: Windows injektáž příkazu
932120 Vzdálené spuštění příkazu: Windows PowerShell příkaz
932130 Vzdálené spuštění příkazu: Našel se výraz prostředí Unix
932140 Vzdálené spuštění příkazu: Windows příkazu FOR/IF
932150 Vzdálené spuštění příkazu: Přímé spuštění příkazu unixového systému
932160 Vzdálené spuštění příkazu: Nalezen kód prostředí Unix
932170 Vzdálené spuštění příkazu: Shellshock (CVE-2014-6271)
932171 Vzdálené spuštění příkazu: Shellshock (CVE-2014-6271)
932180 Pokus o Upload souborů s omezeným přístupem
932190 Vzdálené spuštění příkazu: Pokus o techniku obejití zástupných znaků

REQUEST-933-APPLICATION-ATTACK-PHP

ID pravidla Popis
933100 Útok injektáží PHP: Byla nalezena úvodní/uzavírací značka
933110 Útok injektáží PHP: Soubor skriptu PHP Upload nalezen
933111 Útok injektáží PHP: Soubor skriptu PHP Upload nalezen
933120 Útok injektáží PHP: Byla nalezena direktiva konfigurace
933130 Útok injektáží PHP: Nalezeny proměnné
933131 Útok injektáží PHP: Nalezeny proměnné
933140 Útok injektáží PHP: Zjistil se I/O stream
933150 Útok injektáží PHP: High-Risk název funkce PHP
933151 Útok injektáží PHP: Medium-Risk název funkce PHP
933160 Útok injektáží PHP: High-Risk volání funkce PHP
933161 Útok injektáží PHP: Low-Value volání funkce PHP
933170 Útok injektáží PHP: Injektáž serializovaného objektu
933180 Útok injektáží PHP: Zjistilo se volání proměnné funkce
933190 Útok injektáží PHP: Nalezena uzavírací značka PHP
933200 Útok injektáží PHP: Zjistilo se schéma obálky
933210 Útok injektáží PHP: Zjistilo se volání proměnné funkce

REQUEST-941-APPLICATION-ATTACK-XSS

ID pravidla Popis
941100 Zjištění útoku XSS prostřednictvím příkazu libinjection
941101 Útok XSS byl zjištěn prostřednictvím příkazu libinjection.
941110 Filtr XSS – kategorie 1: Vektor značky skriptu
941120 Filtr XSS – kategorie 2: Vektor obslužné rutiny události
941130 Filtr XSS – kategorie 3: Vektor atributu
941140 Filtr XSS – kategorie 4: Vektor identifikátoru URI Jazyka JavaScript
941150 Filtr XSS – kategorie 5: Nepovolené atributy HTML
941160 NoScript XSS InjectionChecker: Injektáž HTML
941170 NoScript XSS InjectionChecker: Injektáž atributů
941180 Node-Validator klíčová slova seznamu povolených
941190 XSS s využitím stylů
941200 XSS využívající rámce VML
941210 XSS s využitím obfuskovaného JavaScriptu
941220 XSS s použitím obfuskovaného skriptu VB
941230 XSS s využitím značky embed
941240 XSS s použitím atributu import nebo implementation
941250 Filtry IE XSS – Byl zjištěn útok.
941260 XSS využívající značku meta
941270 XSS s využitím odkazu href
941280 XSS využívající značku base
941290 XSS s využitím značky applet
941300 XSS využívající značku object
941310 Filtr XSS poškozených kódování US-ASCII – Byl zjištěn útok.
941320 Byl zjištěn možný útok XSS – obslužná rutina značky HTML
941330 Filtry IE XSS – Byl zjištěn útok.
941340 Filtry IE XSS – Byl zjištěn útok.
941350 Utf-7 Encoding IE XSS – Byl zjištěn útok.
941360 Bylo zjištěno obfuskace JavaScriptu.

REQUEST-942-APPLICATION-ATTACK-SQLI

ID pravidla Popis
942100 SQL Útok prostřednictvím injektáže zjištěný prostřednictvím libinjection
942110 SQL Útok injektáží: Zjistilo se běžné testování injektáže
942120 SQL Útok injektáží: SQL byl zjištěn operátor útoku
942130 SQL Útok injektáží: SQL zjištěná nehotologie.
942140 SQL Útok injektáží: Zjištění běžných názvů db
942150 SQL Útok injektáží
942160 Detekuje testy sqli pro nevidomé pomocí sleep() nebo benchmark().
942170 Zjistí SQL srovnávacích testů a injektáže do režimu spánku, včetně podmíněných dotazů.
942180 Detekuje základní SQL pokusů o obejití ověřování 1/3.
942190 Zjišťuje spouštění kódu MSSQL a pokusy o shromáždění informací.
942200 Detekuje obfuskované injektáže MySQL comment-/space-obfuscated a ukončení nástroje backtick.
942210 Detekuje zřetězené SQL pokusy o injektáž 1/2.
942220 Při hledání útoků na přetečení celých čísel jsou tyto útoky převzaty z skipfish s výjimkou 3.0.00738585072007e-308 je "magické číslo".
942230 Rozpozná pokusy o SQL injektáže podmíněného přístupu.
942240 Zjišťuje přepnutí znakové sady MySQL a pokusy MSSQL DoS
942250 Zjistí shodu proti, sloučení a provedení okamžitých injektáží.
942251 Detekuje injektáže HAVING.
942260 Detekuje základní SQL pokusů o obejití ověřování 2/3.
942270 Hledáte základní injektáž SQL. Běžný řetězec útoku pro mysql, oracle a další.
942280 Zjistí injektáž pg_sleep Postgres, čekání na zpoždění útoků a pokusy o vypnutí databáze.
942290 Najde základní pokusy o SQL MongoDB.
942300 Detekuje komentáře, podmínky a injektáže ch(a)r v MySQL.
942310 Detekuje zřetězené SQL pokusy o injektáž 2/2.
942320 Detekuje injektáže uložených procedur nebo funkcí MySQL a PostgreSQL.
942330 Detekce klasických SQL injektáže 1/2
942340 Detekuje základní SQL pokusů o obejití ověřování 3/3.
942350 Detekuje injektáž UDF MySQL a další pokusy o manipulaci s daty nebo strukturou.
942360 Detekuje zřetězené základní SQL injektáže a pokusy o sqllfi
942361 Zjistí základní injektáž SQL na základě změny nebo sjednocení klíčového slova.
942370 Detekce klasických SQL injektáže 2/2
942380 SQL Útok injektáží
942390 SQL Útok injektáží
942400 SQL Útok injektáží
942410 SQL Útok injektáží
942420 Restricted SQL Character Anomaly Detection (cookies): # of special characters exceeded (8)
942421 Restricted SQL Character Anomaly Detection (cookies): # of special characters exceeded (3)
942430 Restricted SQL Character Anomaly Detection (args): # of special characters exceeded (12)
942431 Restricted SQL Character Anomaly Detection (args): # of special characters exceeded (6)
942432 Restricted SQL Character Anomaly Detection (args): # of special characters exceeded (2)
942440 SQL Byla zjištěna posloupnost komentářů.
942450 SQL Identifikováno šestnáctkované kódování
942460 Meta-Character upozornění na detekci anomálií – opakující se nes wordové znaky
942470 SQL Útok injektáží
942480 SQL Útok injektáží
942490 Detekce klasických SQL injektáže 3/3
942500 Zjistil se in-line komentář MySQL.

REQUEST-943-APPLICATION-ATTACK-SESSION-FIXATION

ID pravidla Popis
943100 Možný útok fixací relace: Nastavení hodnot souborů cookie v HTML
943110 Možný útok fixací relace: Název parametru SessionID s Off-Domain refererem
943120 Možný útok fixací relace: Název parametru SessionID bez referenčního uživatele

REQUEST-944-APPLICATION-ATTACK-JAVA

ID pravidla Popis
944100 Vzdálené spouštění příkazů: Apache Struts, Oracle WebLogic
944110 Detekuje potenciální spuštění datové části.
944120 Možné spuštění datové části a vzdálené spuštění příkazu
944130 Podezřelé třídy Javy
944200 Zneužití deserializace Jazyka Java – Apache Commons
944210 Možné použití serializace Java
944240 Vzdálené spuštění příkazu: Serializace Java
944250 Vzdálené spuštění příkazu: Zjistila se podezřelá metoda Java
944300 Podezřelé klíčové slovo odpovídající řetězci s kódováním Base64

Další kroky