Web Application Firewall CRS-regelgrupper och regler
Application Gateway brandvägg för webbaserade program (WAF) skyddar webbprogram mot vanliga säkerhetsrisker och kryphål. Detta görs via regler som definieras baserat på OWASP-kärnregeluppsättningarna 3.2, 3.1, 3.0 eller 2.2.9. Dessa regler kan inaktiveras regel för regel. Den här artikeln innehåller de aktuella regler och regeluppsättningar som erbjuds. I de sällsynta fall då en publicerad regeluppsättning behöver uppdateras dokumenteras den här.
Core Rule Sets
Den Application Gateway WAF är förkonfigurerad med CRS 3.0 som standard. Men du kan välja att använda CRS 3.2, 3.1 eller 2.2.9 i stället.
CRS 3.2 (offentlig förhandsversion) erbjuder en ny motor och nya regeluppsättningar som skyddar mot Java-sjukdomar, en inledande uppsättning filuppladdningskontroller, fasta falska positiva resultat med mera.
CRS 3.1 erbjuder färre falska positiva resultat jämfört med CRS 3.0 och 2.2.9. Du kan också anpassa regler så att de passar dina behov.

BRANDVÄGGen för webbaserade program skyddar mot följande webbsårbarheter:
- SQL-ktionsattacker
- Skriptattacker mellan webbplatser
- Andra vanliga attacker, till exempel kommandoinjektion, HTTP-begärandeattack, delning av HTTP-svar och fjärrfilinkludering
- Överträdelser av HTTP-protokoll
- HTTP-protokollavvikelser, till exempel saknade värdanvändaragenter och accept-huvuden
- Robotar, crawlers och skannrar
- Vanliga programfelkonfigurationer (till exempel Apache och IIS)
OWASP CRS 3.2 (offentlig förhandsversion)
CRS 3.2 innehåller 13 regelgrupper, som du ser i följande tabell. Varje grupp innehåller flera regler som kan inaktiveras.
Anteckning
CRS 3.2 är endast tillgängligt på WAF_v2 SKU.
| Regelgrupp | Description |
|---|---|
| Allmänt | Allmän grupp |
| REQUEST-911-METHOD-ENFORCEMENT | Låsningsmetoder (PUT, PATCH) |
| REQUEST-913-SCANNER-DETECTION | Skydda mot port- och miljöskannrar |
| REQUEST-920-PROTOCOL-ENFORCEMENT | Skydda mot protokoll- och kodningsproblem |
| REQUEST-921-PROTOCOL-ATTACK | Skydda mot sidhuvuds-, begärande- och svarsdelning |
| REQUEST-930-APPLICATION-ATTACK-LFI | Skydda mot fil- och sökvägsattacker |
| REQUEST-931-APPLICATION-ATTACK-RFI | Skydda mot RFI-attacker (remote file inclusion) |
| REQUEST-932-APPLICATION-ATTACK-RCE | Skydda återigen körningsattacker med fjärrkod |
| REQUEST-933-APPLICATION-ATTACK-PHP | Skydda mot PHP- injection-attacker |
| REQUEST-941-APPLICATION-ATTACK-XSS | Skydda mot skriptattacker mellan webbplatser |
| REQUEST-942-APPLICATION-ATTACK-SQLI | Skydda mot SQL-ktionsattacker |
| REQUEST-943-APPLICATION-ATTACK-SESSION-FIXATION | Skydda mot sessionskorrigeringsattacker |
| REQUEST-944-APPLICATION-ATTACK-SESSION-JAVA | Skydda mot JAVA-attacker |
OWASP CRS 3.1
CRS 3.1 innehåller 13 regelgrupper, som du ser i följande tabell. Varje grupp innehåller flera regler som kan inaktiveras.
Anteckning
CRS 3.1 är endast tillgängligt på WAF_v2 SKU.
| Regelgrupp | Description |
|---|---|
| Allmänt | Allmän grupp |
| REQUEST-911-METHOD-ENFORCEMENT | Låsningsmetoder (PUT, PATCH) |
| REQUEST-913-SCANNER-DETECTION | Skydda mot port- och miljöskannrar |
| REQUEST-920-PROTOCOL-ENFORCEMENT | Skydda mot protokoll- och kodningsproblem |
| REQUEST-921-PROTOCOL-ATTACK | Skydda mot sidhuvuds-, begärande- och svarsdelning |
| REQUEST-930-APPLICATION-ATTACK-LFI | Skydda mot fil- och sökvägsattacker |
| REQUEST-931-APPLICATION-ATTACK-RFI | Skydda mot RFI-attacker (remote file inclusion) |
| REQUEST-932-APPLICATION-ATTACK-RCE | Skydda återigen körningsattacker med fjärrkod |
| REQUEST-933-APPLICATION-ATTACK-PHP | Skydda mot PHP- injection-attacker |
| REQUEST-941-APPLICATION-ATTACK-XSS | Skydda mot skriptattacker mellan webbplatser |
| REQUEST-942-APPLICATION-ATTACK-SQLI | Skydda mot SQL-ktionsattacker |
| REQUEST-943-APPLICATION-ATTACK-SESSION-FIXATION | Skydda mot sessionskorrigeringsattacker |
| REQUEST-944-APPLICATION-ATTACK-SESSION-JAVA | Skydda mot JAVA-attacker |
OWASP CRS 3.0
CRS 3.0 innehåller 12 regelgrupper, som du ser i följande tabell. Varje grupp innehåller flera regler som kan inaktiveras.
| Regelgrupp | Description |
|---|---|
| Allmänt | Allmän grupp |
| REQUEST-911-METHOD-ENFORCEMENT | Låsningsmetoder (PUT, PATCH) |
| REQUEST-913-SCANNER-DETECTION | Skydda mot port- och miljöskannrar |
| REQUEST-920-PROTOCOL-ENFORCEMENT | Skydda mot protokoll- och kodningsproblem |
| REQUEST-921-PROTOCOL-ATTACK | Skydda mot sidhuvuds-, begärande- och svarsdelning |
| REQUEST-930-APPLICATION-ATTACK-LFI | Skydda mot fil- och sökvägsattacker |
| REQUEST-931-APPLICATION-ATTACK-RFI | Skydda mot RFI-attacker (remote file inclusion) |
| REQUEST-932-APPLICATION-ATTACK-RCE | Skydda kodkörningsattacker igen |
| REQUEST-933-APPLICATION-ATTACK-PHP | Skydda mot PHP-ktionsattacker |
| REQUEST-941-APPLICATION-ATTACK-XSS | Skydda mot skriptattacker mellan webbplatser |
| REQUEST-942-APPLICATION-ATTACK-SQLI | Skydda mot SQL-ktionsattacker |
| REQUEST-943-APPLICATION-ATTACK-SESSION-FIXATION | Skydda mot sessionskorrigeringsattacker |
OWASP CRS 2.2.9
CRS 2.2.9 innehåller 10 regelgrupper, som du ser i följande tabell. Varje grupp innehåller flera regler som kan inaktiveras.
| Regelgrupp | Description |
|---|---|
| crs_20_protocol_violations | Skydda mot protokollöverträdelser (till exempel ogiltiga tecken eller en GET med en begärandetext) |
| crs_21_protocol_anomalies | Skydda mot felaktig rubrikinformation |
| crs_23_request_limits | Skydda mot argument eller filer som överskrider begränsningar |
| crs_30_http_policy | Skydda mot begränsade metoder, rubriker och filtyper |
| crs_35_bad_robots | Skydda mot webb crawlers och skannrar |
| crs_40_generic_attacks | Skydda mot allmänna attacker (till exempel sessionskorrigering, fjärrfilinkludering och PHP-ktion) |
| crs_41_sql_injection_attacks | Skydda mot SQL-ktionsattacker |
| crs_41_xss_attacks | Skydda mot skriptattacker mellan webbplatser |
| crs_42_tight_security | Skydda mot sökvägs-traverseringar |
| crs_45_trojans | Skydda mot trojaner med bakdörr |
Följande regelgrupper och regler är tillgängliga när du använder Web Application Firewall på Application Gateway.
3.2 Regeluppsättningar
De allmänna
| RuleId | Description |
|---|---|
| 200004 | Möjlig gräns utan multipart. |
REQUEST-911-METHOD-ENFORCEMENT
| RuleId | Description |
|---|---|
| 911100 | Metoden tillåts inte av principen |
REQUEST-913-SCANNER-DETECTION
| RuleId | Description |
|---|---|
| 913100 | Hittade User-Agent associerat med säkerhetsskannern |
| 913101 | Hittade User-Agent associerad med skript/allmän HTTP-klient |
| 913102 | Hittade User-Agent associerat med webb crawler/robot |
| 913110 | Begärandehuvudet som är associerat med säkerhetsskannern hittades |
| 913120 | Begärandefilnamn/argument som är associerat med säkerhetsskannern hittades |
REQUEST-920-PROTOCOL-ENFORCEMENT
| RuleId | Description |
|---|---|
| 920100 | Ogiltig HTTP-begäranderad |
| 920120 | Försök att kringgå multipart-/formulärdata |
| 920121 | Försök att kringgå multipart-/formulärdata |
| 920160 | HTTP-rubriken content-Length är inte numerisk. |
| 920170 | GET- eller HEAD-begäran med brödtextinnehåll. |
| 920171 | GET- eller HEAD-begäran med Transfer-Encoding. |
| 920180 | POST-begäran saknar innehållslängdsrubrik. |
| 920190 | Intervall: Ogiltigt värde för sista byte. |
| 920200 | Intervall: För många fält (6 eller fler) |
| 920201 | Intervall: För många fält för pdf-begäran (35 eller fler) |
| 920202 | Intervall: För många fält för pdf-begäran (6 eller fler) |
| 920210 | Flera/motstridiga data för anslutningshuvudet hittades. |
| 920220 | Försök till missbruksattack med URL-kodning |
| 920230 | Flera URL-kodningar har identifierats |
| 920240 | Försök till missbruksattack med URL-kodning |
| 920250 | UTF8-kodningsförsök vid missbruksattack |
| 920260 | Attackförsök med missbruk med full/halv bredd i Unicode |
| 920270 | Ogiltigt tecken i begäran (null-tecken) |
| 920271 | Ogiltigt tecken i begäran (icke utskrivbara tecken) |
| 920272 | Ogiltigt tecken i begäran (utanför utskrivbara tecken under ascii 127) |
| 920273 | Ogiltigt tecken i begäran (utanför mycket strikt uppsättning) |
| 920274 | Ogiltigt tecken i begärandehuvuden (utanför mycket strikt uppsättning) |
| 920280 | Begäran om att ett värdhuvud saknas |
| 920290 | Tomt värdhuvud |
| 920310 | Begäran har ett tomt accept-huvud |
| 920311 | Begäran har ett tomt accept-huvud |
| 920320 | Användaragentens huvud saknas |
| 920330 | Tomt användaragenthuvud |
| 920340 | Begäran som innehåller innehåll, men huvud av innehållstyp saknas |
| 920341 | Begäran som innehåller innehåll kräver content-type-huvud |
| 920350 | Värdhuvudet är en numerisk IP-adress |
| 920420 | Typ av begärandeinnehåll tillåts inte av principen |
| 920430 | HTTP-protokollversionen tillåts inte av principen |
| 920440 | URL-filnamnstillägget begränsas av principen |
| 920450 | HTTP-huvudet begränsas av principen (%{MATCHED_VAR}) |
| 920460 | Onormala escape-tecken |
| 920470 | Ogiltigt content-type-huvud |
| 920480 | Begränsa teckenuppsättningsparametern i innehållstypens sidhuvud |
REQUEST-921-PROTOCOL-ATTACK
| RuleId | Description |
|---|---|
| 921110 | ATTACK AV HTTP-begäran |
| 921120 | Http-svarsdelningsattack |
| 921130 | Http-svarsdelningsattack |
| 921140 | HTTP-huvudinjektionsattack via rubriker |
| 921150 | HTTP Header Injection Attack via nyttolast (CR/LF har identifierats) |
| 921151 | HTTP Header Injection Attack via nyttolast (CR/LF har identifierats) |
| 921160 | Http Header Injection Attack via nyttolast (CR/LF och huvudnamn har identifierats) |
| 921170 | HTTP-parameterns begränsande |
| 921180 | HTTP-parameterbelastning (%{TX.1}) |
REQUEST-930-APPLICATION-ATTACK-LFI
| RuleId | Description |
|---|---|
| 930100 | Path Traversal Attack (/.. /) |
| 930110 | Path Traversal Attack (/.. /) |
| 930120 | Försök att komma åt operativsystemets fil |
| 930130 | Försök till begränsad filåtkomst |
REQUEST-931-APPLICATION-ATTACK-RFI
| RuleId | Description |
|---|---|
| 931100 | Möjlig RFI-attack (Remote File Inclusion): URL-parameter med IP-adress |
| 931110 | Möjlig RFI-attack (Remote File Inclusion): Vanligt RFI-sårbart parameternamn som används med URL-nyttolast |
| 931120 | Möjlig RFI-attack (Remote File Inclusion): URL-nyttolast som används med avslutande frågetecken (?) |
| 931130 | Möjlig RFI-attack (Remote File Inclusion): Off-Domain referens/länk |
REQUEST-932-APPLICATION-ATTACK-RCE
| RuleId | Description |
|---|---|
| 932100 | Fjärrkommandokörning: Unix-kommandoinjektion |
| 932105 | Fjärrkommandokörning: Unix-kommandoinjektion |
| 932106 | Fjärrkommandokörning: Unix-kommandoinjektion |
| 932110 | Fjärrkommandokörning: Windows kommandoinjektion |
| 932115 | Fjärrkommandokörning: Windows kommandoinjektion |
| 932120 | Fjärrkommandokörning: kommandot Windows PowerShell hittades |
| 932130 | Fjärrkommandokörning: Unix Shell-uttryck hittades |
| 932140 | Fjärrkommandokörning: kommandot Windows FOR/IF hittades |
| 932150 | Fjärrkommandokörning: Direkt körning av UNIX-kommando |
| 932160 | Fjärrkommandokörning: Unix-gränssnittskod hittades |
| 932170 | Fjärrkommandokörning: Shellshock (CVE-2014-6271) |
| 932171 | Fjärrkommandokörning: Shellshock (CVE-2014-6271) |
| 932180 | Försök att begränsa Upload fil |
| 932190 | Körning av fjärrkommando: Försök till teknik för att kringgå jokertecken |
REQUEST-933-APPLICATION-ATTACK-PHP
| RuleId | Description |
|---|---|
| 933100 | PHP-ktionsattack: Öppna/stänga tagg hittades |
| 933110 | PHP-ktionsattack: PHP-skriptfil Upload hittades |
| 933111 | PHP-ktionsattack: PHP-skriptfil Upload hittades |
| 933120 | PHP-ktionsattack: Konfigurationsdirektiv hittades |
| 933130 | PHP-ktionsattack: Variabler hittades |
| 933131 | PHP-ktionsattack: Variabler hittades |
| 933140 | PHP-ktionsattack: I/O-dataström hittades |
| 933150 | PHP-ktionsattack: High-Risk PHP-funktionsnamnet hittades |
| 933151 | PHP-ktionsattack: Medium-Risk PHP-funktionsnamnet hittades |
| 933160 | PHP-ktionsattack: High-Risk PHP-funktionsanrop hittades |
| 933161 | PHP-ktionsattack: Low-Value PHP-funktionsanrop hittades |
| 933170 | PHP-ktionsattack: Serialiserad objektinjektion |
| 933180 | PHP-ktionsattack: Variabelt funktionsanrop hittades |
| 933190 | PHP-ktionsattack: Sluttagg för PHP hittades |
| 933200 | PHP-ktionsattack: Omslutningsschema har identifierats |
| 933210 | PHP-ktionsattack: Variabelt funktionsanrop hittades |
REQUEST-941-APPLICATION-ATTACK-XSS
| RuleId | Description |
|---|---|
| 941100 | XSS-attack har identifierats via libinjection |
| 941101 | XSS-attack har identifierats via libinjection. |
| 941110 | XSS-filter – kategori 1: Skripttaggvektor |
| 941120 | XSS-filter – Kategori 2: Händelsehanterare vektor |
| 941130 | XSS-filter – Kategori 3: Attributvektor |
| 941140 | XSS-filter – kategori 4: JavaScript URI-vektor |
| 941150 | XSS-filter – kategori 5: Otillåtna HTML-attribut |
| 941160 | NoScript XSS InjectionChecker: HTML- injection |
| 941170 | NoScript XSS InjectionChecker: Attributinjektion |
| 941180 | Node-Validator svartlistade nyckelord |
| 941190 | XSS med formatmallar |
| 941200 | XSS med VML-bildrutor |
| 941210 | XSS med hjälp av fördrövad JavaScript |
| 941220 | XSS med hjälp av fördrövat VB-skript |
| 941230 | XSS med taggen "embed" |
| 941240 | XSS med attributet "import" eller "implementation" |
| 941250 | IE XSS-filter – attack har identifierats. |
| 941260 | XSS med hjälp av "metatagg" |
| 941270 | XSS med "länk" href |
| 941280 | XSS med bastaggen |
| 941290 | XSS med taggen "applet" |
| 941300 | XSS med taggen "object" |
| 941310 | US-ASCII felaktig kodnings-XSS-filter – attack har identifierats. |
| 941320 | Möjlig XSS-attack har identifierats – HTML-tagghanterare |
| 941330 | IE XSS-filter – attack har identifierats. |
| 941340 | IE XSS-filter – attack har identifierats. |
| 941350 | UTF-7 Encoding IE XSS – Attack har identifierats. |
| 941360 | JavaScript-fördumning har identifierats. |
REQUEST-942-APPLICATION-ATTACK-SQLI
| RuleId | Description |
|---|---|
| 942100 | SQL Ktionsattack har identifierats via libinjection |
| 942110 | SQL Ktionsattack: Vanlig ktionstestning har identifierats |
| 942120 | SQL Ktionsattack: SQL har identifierats |
| 942130 | SQL Ktionsattack: SQL tautologi har identifierats. |
| 942140 | SQL Ktionsattack: Vanliga DB-namn har identifierats |
| 942150 | SQL Ktionsattack |
| 942160 | Identifierar blinda sqli-tester med hjälp av sleep() eller benchmark(). |
| 942170 | Identifierar prestandatest SQL strömsparlägesförsök, inklusive villkorliga frågor |
| 942180 | Identifierar grundläggande SQL kringgå autentiseringsförsök 1/3 |
| 942190 | Identifierar körning av MSSQL-kod och datainsamlingsförsök |
| 942200 | Identifierar MySQL-kommentars-/space-obfuscated-ktioner och backtick-avslutning |
| 942210 | Identifierar kedjeindelade SQL 1/2 |
| 942220 | Om du letar efter heltalsspillsangrepp tas dessa från skip skip , förutom att 3.0.00738585072007e-308 är "magic number"-kraschen |
| 942230 | Identifierar försök att SQL villkorsstyrd injicering |
| 942240 | Identifierar MySQL-teckenuppsättningsväxel och MSSQL DoS-försök |
| 942250 | Identifierar MATCH AGAINST, MERGE och EXECUTE IMMEDIATE injections |
| 942251 | Identifierar HAVING- injections |
| 942260 | Identifierar grundläggande SQL kringgå autentiseringsförsök 2/3 |
| 942270 | Letar efter grundläggande sql- injection. Vanlig attacksträng för mysql, oracle och andra. |
| 942280 | Identifierar Postgres-pg_sleep, väntar på fördröjningsangrepp och databasavstängningsförsök |
| 942290 | Söker efter grundläggande MongoDB SQL injiceringsförsök |
| 942300 | Identifierar MySQL-kommentarer, villkor och ch(a)r- injections |
| 942310 | Identifierar kedjeindelade SQL 2/2 |
| 942320 | Identifierar lagrade procedurer/funktionsinjektioner i MySQL och PostgreSQL |
| 942330 | Identifierar klassiska SQL-avsökning 1/2 |
| 942340 | Identifierar grundläggande SQL kringgå autentiseringsförsök 3/3 |
| 942350 | Identifierar MySQL UDF-matning och andra försök att manipulera data/struktur |
| 942360 | Identifierar sammanfogade grundläggande SQL och SQLLFI-försök |
| 942361 | Identifierar grundläggande SQL baserat på nyckelordsförändrering eller union |
| 942370 | Identifierar klassiska SQL-avsökning 2/2 |
| 942380 | SQL Ktionsattack |
| 942390 | SQL Ktionsattack |
| 942400 | SQL Ktionsattack |
| 942410 | SQL Ktionsattack |
| 942420 | Begränsad SQL avvikelseidentifiering (cookies): Antal specialtecken har överskridits (8) |
| 942421 | Begränsad SQL avvikelseidentifiering (cookies): Antal specialtecken som överskridits (3) |
| 942430 | Begränsad SQL avvikelseidentifiering (args): Antal specialtecken har överskridits (12) |
| 942431 | Begränsad SQL avvikelseidentifiering (args): Antal specialtecken har överskridits (6) |
| 942432 | Begränsad SQL avvikelseidentifiering (args): antal specialtecken har överskridits (2) |
| 942440 | SQL Kommentarssekvens har identifierats. |
| 942450 | SQL Hexkodning identifierad |
| 942460 | Meta-Character avisering om avvikelseidentifiering – repetitiva icke-ord-tecken |
| 942470 | SQL Ktionsattack |
| 942480 | SQL Ktionsattack |
| 942490 | Identifierar klassiska SQL-avsökning 3/3 |
| 942500 | MySQL-kommentar har identifierats. |
REQUEST-943-APPLICATION-ATTACK-SESSION-FIXATION
| RuleId | Description |
|---|---|
| 943100 | Möjlig sessionskorrigeringsattack: Ange cookievärden i HTML |
| 943110 | Möjlig sessionskorrigeringsattack: SessionID-parameternamn med Off-Domain refererar |
| 943120 | Möjlig sessionskorrigeringsattack: SessionID-parameternamn utan referens |
REQUEST-944-APPLICATION-ATTACK-JAVA
| RuleId | Description |
|---|---|
| 944100 | Fjärrkommandokörning: Apache Struts, Oracle WebLogic |
| 944110 | Identifierar potentiell nyttolastkörning |
| 944120 | Möjlig nyttolastkörning och fjärrkommandokörning |
| 944130 | Misstänkta Java-klasser |
| 944200 | Utnyttjande av Java Deserialization Apache Commons |
| 944210 | Möjlig användning av Java-serialisering |
| 944240 | Fjärrkommandokörning: Java-serialisering |
| 944250 | Fjärrkommandokörning: Misstänkt Java-metod har identifierats |
| 944300 | Base64-kodad sträng matchade misstänkta nyckelord |