In diesem kurzen Artikel gehe ich anhand eines Beispiels darauf ein, wie die Evaluation der «WAF Custom Rules» als auch «Managed Rules» des «Azure Application Gateway» von statten geht.
Hinweis:
Bist du mit dem Application Gateway WAF v2 und Custom Rules noch nicht vertraut, so empfehle ich das Konsumieren meines Blogposts Application Gateway WAF v2 Custom Rules.
Ausgangslage zum Azure Application Gateway
In diesem Beispiel besteht ein Azure Application Gateway «AppGW», Konfiguriert als Tier WAF v2 und einem angehängten «Backend Pool». Des Weiteren sind nebst den vorkonfigurierten «Managed Rules» mit «Custom Rule 01», «Custom Rule 02» und «Custom Rule 03» auch drei «Custom Rules» in der «WAF Policy» vorhanden. Auf die spezifische Konfiguration dieser Regeln ist für die Veranschaulichung der Evaluierung nicht weiter von Bedeutung. Ich gehe daher nicht weiter auf die Regelkonfiguration ein.
WAF Rules Evaluation
Die Evaluation der Regeln ist im folgenden Diagramm möglichst simpel und übersichtlich dargestellt und beinhaltet all die erwähnten Bestandteile der Ausgangslage.
Prozessschritte zur WAF Rule Evaluation
- Der Netzverkehr wird über den Azure Application Gateway geroutet. Der entsprechende Listener nimmt den Verkehr entgegen.
- Der Application Gateway prüft die Anfrage gegenüber der konfigurierten «WAF Policy».
- «Custom Rules» werden als erstes berücksichtigt. Die WAF ermittelt die Regel mit der niedrigsten Zahl bei Priorität. In unserem Fall handelt es sich um die «Custom Rule 01» mit Priorität 10. Tipp: Die Priorität kann als Kosten angesehen werden. Die Regel mit den geringsten Kosten wird als erstes evaluiert.
- Die WAF evaluiert die Regel «Custom Rule 01».
- Ist die Regel zutreffend (True), so wendet die WAF diese an und beachtet keine der weiteren Regeln. Weiter mit Punkt 8.
- Ist die Regel NICHT zutreffend (False), so ermittelt die WAF die Regel mit der nächstgrösseren Priorität / Kosten. Weiter mit Punkt 5.
- Die WAF evaluiert die Regel «Custom Rule 02».
- Ist die Regel zutreffend (True), so wendet die WAF diese an und beachtet keine der weiteren Regeln. Weiter mit Punkt 8.
- Ist die Regel NICHT zutreffend (False), so ermittelt die WAF die Regel mit der nächstgrösseren Priorität / Kosten. Weiter mit Punkt 6.
- Die WAF evaluiert die Regel «Custom Rule 03».
- Ist die Regel zutreffend (True), so wendet die WAF diese an und beachtet keine der weiteren Regeln. Weiter mit Punkt 8.
- Ist die Regel NICHT zutreffend (False), so ermittelt die WAF die Regel mit der nächstgrösseren Priorität / Kosten. Weiter mit Punkt 7.
- Da alle «Custom Rules» nun evaluiert wurden und keine zutreffend ist (alle = False), kommen nun die standardmässigen «Managed Rules» zum Zuge.
- Alle Regeln verfügen über eine Aktion, die beim Zutreffen der Regel (True) ausgeführt wird. Diese Aktion gewährt den Netzverkehr oder lehnt ihn ab.
- Gewährt die Aktion den Netzwerkverkehr (Allow Traffic), so meldet das die WAF Policy dem Azure Application Gateway weiter. Dieser gewährt dann den Zugriff auf den Backend Pool, wie angefordert.
- Lehnt die Aktion den Netzwerkverkehr ab (Deny Traffic), so wird der angeforderte Zugriff vom Application Gateway entsprechend geblockt.
Quellen:
https://www.graber.cloud/application-gateway-waf-v2-custom-rules/
1 Gedanken zu „Azure Application Gateway WAF Rules Evaluation“