Citrix ADC

gramatikbasierter Schutz vor Befehlseinschleusung für HTML-Payload

思杰Web应用防火墙verwendet einen Pattern-Match-Ansatz zur Erkennung von Befehlseinschleusungsangriffen in HTML-Payloads Der Ansatz verwendet eine Reihe vordefinierter Schlüsselwörter und (oder) Sonderzeichen, um einen Angriff zu erkennnen and ihn als Verstoß zu kennzeichnen。奥沃尔柴油车安萨茨effektiv ist,康涅尔祖威伦费拉拉曼führen,大足führen,达斯埃涅尔祖威伦休闲娱乐hinzugefügt werden。Insbesondere, wenn ein häufig verwendetes Wort wie“退出”在einer HTTP-Anfrage verwendet wid。Wir können Fehlalarme reduzieren, indem Wir den grammatikbasierten Schutz vor Befehlseinschleusung für die HTML-Payload implementieren。

Beim Pattern-Match-Ansatz wid in Befehlseinschleusungsangriff identifiziert, wenn in vordefiniertes Schlüsselwort und (order) in Sonderzeichen in einer HTTP-Anforderung vorhanden ist。在diesem Fall muss die Anweisung keine gültige Befehlseinschleusungsanweisung sein。Beim grammatikbasierten Ansatz wid in Befehlseinschleusungsangriff jedoch nur erkannt, wenn in Schlüsselwort oder in Sonderzeichen in einer Befehlseinschleusungsanweisung vorhanden ist。Daher werden falsch positive Szenarien reduziert。

Anwendungsszenario für grammatikbasierten Schutz vor Befehlseinschleusung

背叛你的忠告:“冲向出口!在任何HTTP-Anfrage。“出口”als Befehlseinschleusungsangriff gültige Befehlseinschleusungsanweisung ist, erkennt der Pattern-Match-Ansatz die Anforderung aufgrund des Schlüsselworts“出口”als Befehlseinschleusungsangriff。Beim grammatikbasierten Ansatz des Befehlseinschleusungsschutz widie Anweisung jedoch nicht als Angriff erkant, da die Schlüsselwörter in einer gültigen Befehlseinschleusunganweisung nicht vorhanden sinind。

Konfigurieren der grammatikbasierten Schutzparameter gegen Befehlseinschleusungsangriffe über die Befehlszeilenschnittstelle

Um die grammatikbasierte Erkennung von Befehlseinschleusung zu implementieren, müssen Sie den Parameter " CMDInjectionGrammar " im Web App firewall - profile konfigurieren。Standardmäßig ist der deaktiviert参数。Alle vorhandenen Befehlseinschleusungaktionen außer Lernen werden unterstützt。Jedes nach einem升级neu erstellte档案unterstützt die befehlseinschleusungsgramatik。Das neue profile hat weiterhin den standardp " Sonderzeichen oder Schlüsselwort ", und die befehlseinschleusungsgramatik muss explizit aktiviert sein。

Geben Sie and der eingabeauforforderung Folgendes ein:

添加appfw profile  -CMDInjectionAction  -CMDInjectionGrammar ON/OFF 

Beispiel:

add appfw profile profile1 -CMDInjectionAction Block -CMDInjectionGrammar ON 

Konfigurieren des Musterübereinstimmungsschutz和des grammatikbasierten Schutz vor Befehlseinschleusung über die CLI

Wenn Sie sowohl grammatikbasierte als aucch Musterübereinstimmungsansätze aktiviert haben, führt die Appliance zunächst eine grammatikbasierte Erkennung durch。Wenn eine Befehlseinschleusung erkannt wid, beder der Aktionstyp auf“Block”gesetzt ist, wid die Anforderung blockiert (ohne Überprüfung der Erkennung über Pattern-Match)。

Geben Sie and der eingabeauforforderung Folgendes ein:

add appfw profile  -CMDInjectionAction  -CMDInjectionGrammar ON -CMDInjectionType <除' None '以外的任何动作:CMDSplCharANDKeyword/ CMDSplCharORKeyword/ CMDSplChar/ CMDKeyword> 

Beispiel:

add appfw profile p1 - cmdinjectionaction block - CMDInjectionGrammar ON - cmdinjectiontype CMDSplChar 

Konfigurieren der Befehlseinschleusungsprüfung nur mit grammatikbasiertem Schutz über die CLI

Geben Sie and der eingabeauforforderung Folgendes ein:

add appfw profile  -CMDInjectionAction  -CMDInjectionGrammar ON -CMDInjectionType None 

Beispiel:

add appfw profile p1 - cmdinjectionaction block - CMDInjectionGrammar ON - cmdinjectiontype None 

宾登Sie Relaxationsregeln für den grammatikbasierten Schutz vor Befehlseinschleusung über die CLI

Wenn Ihre Anwendung erfordert, dass Sie die Befehlseinschleusungsprüfung für ein bestimmtes“ELEMENT”oder“ATTRIBUTE”in der HTML-Payload Bypass müssen, müssen Sie eine Relaxationsregel konfigurieren。

Hinweis:

Relaxationsregeln mit valueType "关键字" werden nur ausgewertet, wenn die Appliance die Erkennung über Befehlseinschleusungsgrammatik durchführt。

Die Relaxationsregeln für Die Befehlseinschleusungsprüfung haben folgende语法。Geben Sie and der eingabeauforforderung Folgendes ein:

绑定appfw profile  -CMDInjection  [isRegex(REGEX| NOTREGE)]  [-location ] [-valueType (Keywor|SpecialString|Wildchar) [][-isValueRegex (REGEX| NOTREGEX)]] 

Beispiel:

绑定appfw profile p1 -cmdinjection abc http://10.10.10.10/绑定appfw profile p1 -cmdinjection 'abc[0-9]+' http://10.10.10.10/ -isregex regEX绑定appfw profile p1 -cmdinjection 'name' http://10.10.10.10/ -valueType关键字'exi[a-z]+' -isvalueRegex regEX 

Konfigurieren des grammatikbasierten Schutz vor Befehlseinschleusung über die GUI

Führen你的folgenden Schritte aus,嗯die grammatikbasierte Erkennung von HTML-Befehlseinschleusung zu konfiguriren。

  1. 航海家Sie zuSicherheit > Citrix Web App firewall - Profile >配置文件

  2. Wählen您的个人资料和联系方式Bearbeiten

  3. Gehen Sie zum AbschnittErweiterte设置und klicken Sie aufSicherheitsuberprufungen

  4. Aktivieren Sie das KontrollkästchenHTML命令注入und klicken Sie aufAktionseinstellungen

    Befehlseinschleusung aktivieren

  5. Aktivieren Sie das KontrollkästchenMit CMD-Grammatik überprüfen

  6. Wählen你在地下Prufanforderung enthalten死亡的选择Keine

    Befehlseinschleusungsaktionseinstellungen

  7. 祝你好运好吧