Web Application Firewall CRS-regelgroepen en -regels
Application Gateway Web Application Firewall (WAF) beschermt webtoepassingen tegen veelvoorkomende beveiligingsproblemen en aanvallen. Dit gebeurt via regels die zijn gedefinieerd op basis van de OWASP-kernregelsets 3.2, 3.1, 3.0 of 2.2.9. Deze regels kunnen per regel worden uitgeschakeld. Dit artikel bevat de huidige regels en regelsets die worden aangeboden. In zeldzame gevallen dat een gepubliceerde regelset moet worden bijgewerkt, wordt deze hier gedocumenteerd.
Core Rule Sets
De Application Gateway WAF is standaard vooraf geconfigureerd met CRS 3.0. Maar u kunt in plaats daarvan CRS 3.2, 3.1 of 2.2.9 gebruiken.
CRS 3.2 (openbare preview) biedt een nieuwe engine en nieuwe regelsets die bescherming bieden tegen Java-infecties, een eerste set bestanduploadcontroles, opgeloste fout-positieven en meer.
CRS 3.1 biedt minder fout-positieven in vergelijking met CRS 3.0 en 2.2.9. U kunt ook regels aanpassen aan uw behoeften.

De WAF beschermt tegen de volgende beveiligingsproblemen op internet:
- SQL-injectieaanvallen
- Cross-site scripting-aanvallen
- Andere veelvoorkomende aanvallen, zoals opdrachtinjectie, splitsing van HTTP-aanvragen, splitsen van HTTP-antwoorden en externe bestandsinsluiting
- SCHENDINGEN VAN HTTP-protocol
- HTTP-protocolafwijkingen, zoals ontbrekende hostgebruikersagent en accepteren van headers
- Bots, crawlers en scanners
- Veelvoorkomende onjuiste configuraties van toepassingen (bijvoorbeeld Apache en IIS)
OWASP CRS 3.2 (openbare preview)
CRS 3.2 bevat 13 regelgroepen, zoals wordt weergegeven in de volgende tabel. Elke groep bevat meerdere regels, die kunnen worden uitgeschakeld.
Notitie
CRS 3.2 is alleen beschikbaar op de WAF_v2 SKU.
| Regelgroep | Beschrijving |
|---|---|
| Algemeen | Algemene groep |
| REQUEST-911-METHOD-ENFORCEMENT | Vergrendelingsmethoden (PUT, PATCH) |
| REQUEST-913-SCANNER-DETECTION | Beveiligen tegen poort- en omgevingsscanners |
| REQUEST-920-PROTOCOL-ENFORCEMENT | Bescherming tegen protocol- en coderingsproblemen |
| REQUEST-921-PROTOCOL-ATTACK | Beveiligen tegen headerinjectie, aanvraagverplaatsing en het splitsen van antwoorden |
| REQUEST-930-APPLICATION-ATTACK-LFI | Beschermen tegen bestands- en padaanvallen |
| REQUEST-931-APPLICATION-ATTACK-RFI | Bescherming tegen RFI-aanvallen (Remote File Inclusion) |
| REQUEST-932-APPLICATION-ATTACK-RCE | Opnieuw externe aanvallen voor code-uitvoering beveiligen |
| REQUEST-933-APPLICATION-ATTACK-PHP | Bescherming tegen PHP-injectieaanvallen |
| REQUEST-941-APPLICATION-ATTACK-XSS | Bescherming tegen cross-site scripting-aanvallen |
| REQUEST-942-APPLICATION-ATTACK-SQLI | Bescherming tegen SQL-injectieaanvallen |
| REQUEST-943-APPLICATION-ATTACK-SESSION-FIXATION | Bescherming tegen sessiefixatieaanvallen |
| REQUEST-944-APPLICATION-ATTACK-SESSION-JAVA | Bescherming tegen JAVA-aanvallen |
OWASP CRS 3.1
CRS 3.1 bevat 13 regelgroepen, zoals wordt weergegeven in de volgende tabel. Elke groep bevat meerdere regels, die kunnen worden uitgeschakeld.
Notitie
CRS 3.1 is alleen beschikbaar op de WAF_v2 SKU.
| Regelgroep | Beschrijving |
|---|---|
| Algemeen | Algemene groep |
| REQUEST-911-METHOD-ENFORCEMENT | Vergrendelingsmethoden (PUT, PATCH) |
| REQUEST-913-SCANNER-DETECTION | Beveiligen tegen poort- en omgevingsscanners |
| REQUEST-920-PROTOCOL-ENFORCEMENT | Bescherming tegen protocol- en coderingsproblemen |
| REQUEST-921-PROTOCOL-ATTACK | Beveiligen tegen headerinjectie, aanvraagverplaatsing en het splitsen van antwoorden |
| REQUEST-930-APPLICATION-ATTACK-LFI | Beschermen tegen bestands- en padaanvallen |
| REQUEST-931-APPLICATION-ATTACK-RFI | Bescherming tegen RFI-aanvallen (Remote File Inclusion) |
| REQUEST-932-APPLICATION-ATTACK-RCE | Opnieuw externe aanvallen voor code-uitvoering beveiligen |
| REQUEST-933-APPLICATION-ATTACK-PHP | Bescherming tegen PHP-injectieaanvallen |
| REQUEST-941-APPLICATION-ATTACK-XSS | Bescherming tegen cross-site scripting-aanvallen |
| REQUEST-942-APPLICATION-ATTACK-SQLI | Bescherming tegen SQL-injectieaanvallen |
| REQUEST-943-APPLICATION-ATTACK-SESSION-FIXATION | Bescherming tegen sessiefixatieaanvallen |
| REQUEST-944-APPLICATION-ATTACK-SESSION-JAVA | Bescherming tegen JAVA-aanvallen |
OWASP CRS 3.0
CRS 3.0 bevat 12 regelgroepen, zoals wordt weergegeven in de volgende tabel. Elke groep bevat meerdere regels, die kunnen worden uitgeschakeld.
| Regelgroep | Beschrijving |
|---|---|
| Algemeen | Algemene groep |
| REQUEST-911-METHOD-ENFORCEMENT | Vergrendelingsmethoden (PUT, PATCH) |
| REQUEST-913-SCANNER-DETECTION | Beveiligen tegen poort- en omgevingsscanners |
| REQUEST-920-PROTOCOL-ENFORCEMENT | Bescherming tegen protocol- en coderingsproblemen |
| REQUEST-921-PROTOCOL-ATTACK | Beveiligen tegen headerinjectie, aanvraagverplaatsing en het splitsen van antwoorden |
| REQUEST-930-APPLICATION-ATTACK-LFI | Beschermen tegen bestands- en padaanvallen |
| REQUEST-931-APPLICATION-ATTACK-RFI | Bescherming tegen RFI-aanvallen (Remote File Inclusion) |
| REQUEST-932-APPLICATION-ATTACK-RCE | Opnieuw externe aanvallen voor code-uitvoering beveiligen |
| REQUEST-933-APPLICATION-ATTACK-PHP | Bescherming tegen PHP-injectieaanvallen |
| REQUEST-941-APPLICATION-ATTACK-XSS | Bescherming tegen cross-site scripting-aanvallen |
| REQUEST-942-APPLICATION-ATTACK-SQLI | Bescherming tegen SQL-injectieaanvallen |
| REQUEST-943-APPLICATION-ATTACK-SESSION-FIXATION | Bescherming tegen sessiefixatieaanvallen |
OWASP CRS 2.2.9
CRS 2.2.9 bevat 10 regelgroepen, zoals wordt weergegeven in de volgende tabel. Elke groep bevat meerdere regels, die kunnen worden uitgeschakeld.
| Regelgroep | Beschrijving |
|---|---|
| crs_20_protocol_violations | Beveiligen tegen schendingen van protocollen (zoals ongeldige tekens of een GET met een aanvraag body) |
| crs_21_protocol_anomalies | Beveiligen tegen onjuiste headergegevens |
| crs_23_request_limits | Beveiligen tegen argumenten of bestanden die de beperkingen overschrijden |
| crs_30_http_policy | Beveiligen tegen beperkte methoden, headers en bestandstypen |
| crs_35_bad_robots | Bescherming tegen web-crawlers en scanners |
| crs_40_generic_attacks | Bescherming tegen algemene aanvallen (zoals sessiefixatie, externe bestandsinsluiting en PHP-injectie) |
| crs_41_sql_injection_attacks | Bescherming tegen SQL-injectieaanvallen |
| crs_41_xss_attacks | Bescherming tegen cross-site scripting-aanvallen |
| crs_42_tight_security | Bescherming tegen pad-traversal-aanvallen |
| crs_45_trojans | Beschermen tegen trojaanse paarden |
De volgende regelgroepen en regels zijn beschikbaar wanneer u Web Application Firewall op Application Gateway.
3.2-regelsets
Algemene
| RuleId | Beschrijving |
|---|---|
| 200004 | Mogelijke niet-overeenkomende grens met meerdere onderdelen. |
REQUEST-911-METHOD-ENFORCEMENT
| RuleId | Beschrijving |
|---|---|
| 911100 | Methode is niet toegestaan door beleid |
REQUEST-913-SCANNER-DETECTION
| RuleId | Beschrijving |
|---|---|
| 913100 | Gevonden User-Agent gekoppeld aan een beveiligingsscanner |
| 913101 | Er is User-Agent aan scripting/algemene HTTP-client gevonden |
| 913102 | Gevonden User-Agent gekoppeld aan web-crawler/bot |
| 913110 | Aanvraagheader gevonden die is gekoppeld aan beveiligingsscanner |
| 913120 | Bestandsnaam/argument van aanvraag gevonden die is gekoppeld aan beveiligingsscanner |
REQUEST-920-PROTOCOL-ENFORCEMENT
| RuleId | Beschrijving |
|---|---|
| 920100 | Ongeldige HTTP-aanvraagregel |
| 920120 | Poging tot het omzeilen van meerdere delen/formuliergegevens |
| 920121 | Poging tot het omzeilen van meerdere delen/formuliergegevens |
| 920160 | Content-Length HTTP-header is niet numeriek. |
| 920170 | GET- of HEAD-aanvraag met hoofdinhoud. |
| 920171 | GET- of HEAD-aanvraag met transfer-encoding. |
| 920180 | POST-aanvraag ontbreekt Content-Length-header. |
| 920190 | Bereik: ongeldige laatste bytewaarde. |
| 920200 | Bereik: Te veel velden (6 of meer) |
| 920201 | Bereik: Te veel velden voor PDF-aanvraag (35 of meer) |
| 920202 | Bereik: Te veel velden voor PDF-aanvraag (6 of meer) |
| 920210 | Er zijn meerdere/conflicterende verbindingsheadergegevens gevonden. |
| 920220 | Poging tot misbruik van URL-codering |
| 920230 | Meerdere URL-codering gedetecteerd |
| 920240 | Poging tot misbruik van URL-codering |
| 920250 | UTF8 Encoding Abuse Attack Attempt |
| 920260 | Poging tot misbruik van unicode volledige/halve breedte |
| 920270 | Ongeldig teken in aanvraag (null-teken) |
| 920271 | Ongeldig teken in aanvraag (niet-afdrukbare tekens) |
| 920272 | Ongeldig teken in aanvraag (buiten afdrukbare tekens onder ascii 127) |
| 920273 | Ongeldig teken in aanvraag (buiten een zeer strikte set) |
| 920274 | Ongeldig teken in aanvraagheaders (buiten een zeer strikte set) |
| 920280 | Aanvraag voor ontbrekende hostheader |
| 920290 | Lege hostheader |
| 920310 | Aanvraag heeft een lege accept-header |
| 920311 | Aanvraag heeft een lege accept-header |
| 920320 | Header van ontbrekende gebruikersagent |
| 920330 | Lege gebruikersagentheader |
| 920340 | Aanvraag met inhoud, maar ontbrekende content-type header |
| 920341 | Aanvraag met inhoud vereist Content-Type-header |
| 920350 | Hostheader is een numeriek IP-adres |
| 920420 | Inhoudstype aanvraag is niet toegestaan door beleid |
| 920430 | Http-protocolversie is niet toegestaan door beleid |
| 920440 | URL-bestandsextensie wordt beperkt door beleid |
| 920450 | HTTP-header wordt beperkt door beleid (%{MATCHED_VAR}) |
| 920460 | Abnormale escape-tekens |
| 920470 | Illegal Content-Type header |
| 920480 | De parameter charset in de header content-type beperken |
REQUEST-921-PROTOCOL-ATTACK
| RuleId | Beschrijving |
|---|---|
| 921110 | HTTP-aanvraaginfarct |
| 921120 | Splitsingsaanval met HTTP-antwoord |
| 921130 | Splitsingsaanval met HTTP-antwoord |
| 921140 | HTTP-headerinjectieaanval via headers |
| 921150 | HTTP-headerinjectieaanval via nettolading (CR/LF gedetecteerd) |
| 921151 | HTTP-headerinjectieaanval via nettolading (CR/LF gedetecteerd) |
| 921160 | HTTP-headerinjectieaanval via payload (CR/LF en header-name gedetecteerd) |
| 921170 | Http-parameterbelasting |
| 921180 | Http-parameterbelasting (%{TX.1}) |
REQUEST-930-APPLICATION-ATTACK-LFI
| RuleId | Beschrijving |
|---|---|
| 930100 | Path Traversal Attack (/.. /) |
| 930110 | Path Traversal Attack (/.. /) |
| 930120 | Toegangspoging voor besturingssysteembestand |
| 930130 | Poging tot beperkte bestandstoegang |
REQUEST-931-APPLICATION-ATTACK-RFI
| RuleId | Beschrijving |
|---|---|
| 931100 | Mogelijke RFI-aanval (Remote File Inclusion) : URL-parameter met BEHULP van IP-adres |
| 931110 | Possible Remote File Inclusion (RFI) Attack: Common RFI Vulnerable Parameter Name used w/URL Payload |
| 931120 | Mogelijke RFI-aanval (Remote File Inclusion) : URL Payload used w/trailing Question Mark Character (?) |
| 931130 | Possible Remote File Inclusion (RFI) Attack: Off-Domain Reference/Link |
REQUEST-932-APPLICATION-ATTACK-RCE
| RuleId | Beschrijving |
|---|---|
| 932100 | Externe opdrachtuitvoering: Unix-opdrachtinjectie |
| 932105 | Externe opdrachtuitvoering: Unix-opdrachtinjectie |
| 932106 | Externe opdrachtuitvoering: Unix-opdrachtinjectie |
| 932110 | Externe opdrachtuitvoering: Windows opdrachtinjectie |
| 932115 | Externe opdrachtuitvoering: Windows opdrachtinjectie |
| 932120 | Uitvoering externe opdracht: Windows PowerShell opdracht gevonden |
| 932130 | Externe opdrachtuitvoering: Unix Shell-expressie gevonden |
| 932140 | Externe opdrachtuitvoering: Windows FOR/IF-opdracht gevonden |
| 932150 | Externe opdrachtuitvoering: Directe Unix-opdrachtuitvoering |
| 932160 | Uitvoering externe opdracht: Unix-shellcode gevonden |
| 932170 | Uitvoering externe opdracht: Shellstoot (CVE-2014-6271) |
| 932171 | Uitvoering externe opdracht: Shellstoot (CVE-2014-6271) |
| 932180 | Beperkte bestandspoging Upload proberen |
| 932190 | Uitvoering externe opdracht: poging tot het omzeilen van jokertekens |
REQUEST-933-APPLICATION-ATTACK-PHP
| RuleId | Beschrijving |
|---|---|
| 933100 | PHP-injectieaanval: tag openen/sluiten gevonden |
| 933110 | PHP-injectieaanval: PHP-scriptbestand Upload gevonden |
| 933111 | PHP-injectieaanval: PHP-scriptbestand Upload gevonden |
| 933120 | PHP-injectieaanval: Configuratie-richtlijn gevonden |
| 933130 | PHP-injectieaanval: Gevonden variabelen |
| 933131 | PHP-injectieaanval: Gevonden variabelen |
| 933140 | PHP-injectieaanval: I/O-stream gevonden |
| 933150 | PHP-injectieaanval: High-Risk php-functienaam gevonden |
| 933151 | PHP-injectieaanval: Medium-Risk php-functienaam gevonden |
| 933160 | PHP-injectieaanval: High-Risk PHP-functie-aanroep gevonden |
| 933161 | PHP-injectieaanval: Low-Value PHP-functie-aanroep gevonden |
| 933170 | PHP-injectieaanval: geseraliseerde objectinjectie |
| 933180 | PHP-injectieaanval: Aanroep van variabele functie gevonden |
| 933190 | PHP-injectieaanval: PHP-afsluitende tag gevonden |
| 933200 | PHP-injectieaanval: Wrapper-schema gedetecteerd |
| 933210 | PHP-injectieaanval: Aanroep van variabele functie gevonden |
REQUEST-941-APPLICATION-ATTACK-XSS
| RuleId | Beschrijving |
|---|---|
| 941100 | XSS-aanval gedetecteerd via libinjection |
| 941101 | XSS-aanval gedetecteerd via libinjection. |
| 941110 | XSS-filter - Categorie 1: scripttagvector |
| 941120 | XSS-filter - Categorie 2: Gebeurtenis-handlervector |
| 941130 | XSS-filter - Categorie 3: Kenmerkvector |
| 941140 | XSS-filter - Categorie 4: JavaScript URI Vector |
| 941150 | XSS-filter - Categorie 5: Niet-toegestaan HTML-kenmerken |
| 941160 | NoScript XSS InjectionChecker: HTML-injectie |
| 941170 | NoScript XSS InjectionChecker: kenmerkinjectie |
| 941180 | Node-Validator op de zwarte lijst met trefwoorden |
| 941190 | XSS met behulp van stijlbladen |
| 941200 | XSS met VML-frames |
| 941210 | XSS met behulp van obfuscated JavaScript |
| 941220 | XSS met behulp van een VB-script dat is ontsluierd |
| 941230 | XSS met de tag 'insluiten' |
| 941240 | XSS met het kenmerk 'import' of 'implementation' |
| 941250 | IE XSS-filters: aanval gedetecteerd. |
| 941260 | XSS met de tag 'meta' |
| 941270 | XSS met behulp van 'link' href |
| 941280 | XSS met de tag 'base' |
| 941290 | XSS met 'applet'-tag |
| 941300 | XSS met de tag 'object' |
| 941310 | US-ASCII Misformed Encoding XSS Filter - Attack Detected. |
| 941320 | Mogelijke XSS-aanval gedetecteerd - HTML-tag-handler |
| 941330 | IE XSS-filters: aanval gedetecteerd. |
| 941340 | IE XSS-filters: aanval gedetecteerd. |
| 941350 | UTF-7 Encoding IE XSS : aanval gedetecteerd. |
| 941360 | JavaScript-verduking gedetecteerd. |
REQUEST-942-APPLICATION-ATTACK-SQLI
| RuleId | Beschrijving |
|---|---|
| 942100 | SQL Injectieaanval gedetecteerd via libinjection |
| 942110 | SQL Injectieaanval: Algemene injectietests gedetecteerd |
| 942120 | SQL Injectieaanval: SQL Operator gedetecteerd |
| 942130 | SQL Injectieaanval: SQL Detected. |
| 942140 | SQL Injectieaanval: Algemene DB-namen gedetecteerd |
| 942150 | SQL Injectieaanval |
| 942160 | Detecteert blind sqli-tests met behulp van sleep() of benchmark(). |
| 942170 | Detecteert SQL benchmark- en slaapstandinjectiepogingen, inclusief voorwaardelijke query's |
| 942180 | Detecteert eenvoudige SQL pogingen om verificatie te omzeilen 1/3 |
| 942190 | Detecteert de uitvoering van MSSQL-code en het verzamelen van gegevens |
| 942200 | Detecteert MySQL-opmerkingen/ruimte-verduinde injecties en backtick-beëindiging |
| 942210 | Detecteert pogingen om SQL 1/2 te injecteren |
| 942220 | Als u op zoek bent naar overloopaanvallen met gehele getallen, worden deze overgenomen uit skip skip door, behalve 3.0.00738585072007e-308 is het 'magic number'-crash |
| 942230 | Detecteert voorwaardelijke SQL injectiepogingen |
| 942240 | Detecteert MySQL Charset-switch en MSSQL DoS-pogingen |
| 942250 | Detecteert MATCH AGAINST-, MERGE- en EXECUTE IMMEDIATE-injecties |
| 942251 | Detecteert HAVING-injecties |
| 942260 | Detecteert eenvoudige pogingen SQL 2/3 om verificatie te omzeilen |
| 942270 | Op zoek naar sql-basisinjectie. Algemene aanvalsreeks voor mysql, oracle en andere. |
| 942280 | Detecteert Postgres-pg_sleep injectie, wacht op vertragingsaanvallen en pogingen om de database af te sluiten |
| 942290 | Zoekt basispogingen voor MongoDB-SQL injectiepogingen |
| 942300 | Detecteert MySQL-opmerkingen, -voorwaarden en ch(a)r-injecties |
| 942310 | Detecteert pogingen om SQL 2/2 te injecteren |
| 942320 | Detecteert opgeslagen procedure-/functie-injecties in MySQL en PostgreSQL |
| 942330 | Detecteert klassieke SQL 1/2-injectieprobings |
| 942340 | Detecteert eenvoudige SQL pogingen om verificatie te omzeilen 3/3 |
| 942350 | Detecteert MySQL UDF-injectie en andere pogingen om gegevens/structuur te manipuleren |
| 942360 | Detecteert samenvoegde basisinjectie SQL SQLLFI-pogingen |
| 942361 | Detecteert basisinjectie SQL op basis van sleutelwoord wijzigen of union |
| 942370 | Detecteert klassieke SQL 2/2-injectieprobings |
| 942380 | SQL Injectieaanval |
| 942390 | SQL Injectieaanval |
| 942400 | SQL Injectieaanval |
| 942410 | SQL Injectieaanval |
| 942420 | Beperkte SQL afwijkingsdetectie (cookies): aantal speciale tekens overschreden (8) |
| 942421 | Beperkte SQL anomaliedetectie (cookies): aantal speciale tekens overschreden (3) |
| 942430 | Beperkte SQL afwijkingsdetectie (args): aantal speciale tekens overschreden (12) |
| 942431 | Beperkte SQL afwijkingsdetectie (args): aantal speciale tekens overschreden (6) |
| 942432 | Beperkte SQL afwijkingsdetectie (args): aantal speciale tekens overschreden (2) |
| 942440 | SQL Opmerkingenreeks gedetecteerd. |
| 942450 | SQL Hex-encoding geïdentificeerd |
| 942460 | Meta-Character waarschuwing voor anomaliedetectie - terugkerende niet-woordtekens |
| 942470 | SQL Injectieaanval |
| 942480 | SQL Injectieaanval |
| 942490 | Detecteert SQL 3/3-injectieprobings |
| 942500 | MySQL in-line opmerking gedetecteerd. |
REQUEST-943-APPLICATION-ATTACK-SESSION-FIXATION
| RuleId | Beschrijving |
|---|---|
| 943100 | Possible Session Fixation Attack: Setting Cookie Values in HTML |
| 943110 | Possible Session Fixation Attack: SessionID Parameter Name with Off-Domain Referer |
| 943120 | Possible Session Fixation Attack: SessionID Parameter Name with No Referer |
REQUEST-944-APPLICATION-ATTACK-JAVA
| RuleId | Beschrijving |
|---|---|
| 944100 | Externe opdrachtuitvoering: ApacheTrts, Oracle WebLogic |
| 944110 | Detecteert mogelijke nettoladinguitvoering |
| 944120 | Mogelijke nettolading uitvoeren en externe opdrachtuitvoering |
| 944130 | Suspicious Java classes (Verdachte Java-klassen) |
| 944200 | Misbruik van Java-deserialisatie Apache Commons |
| 944210 | Mogelijk gebruik van Java-serialisatie |
| 944240 | Uitvoering van externe opdracht: Java-serialisatie |
| 944250 | Uitvoering externe opdracht: Suspicious Java method detected (Uitvoering externe opdracht: Suspicious Java method detected ( Verdachte Java-methode gedetecteerd) |
| 944300 | Base64-gecodeerde tekenreeks komt overeen met verdacht trefwoord |