HTML-Befehlseinschleusung Schutzüberprüfung
DieHTML-Befehlseinschleusungsprüfunguntersucht, ob der eingehende Datenverkehr nicht autorisierte Befehle enthält, die die Systemsicherheit unterbrechen oder das System ändern. Wenn der Datenverkehr bei der Entdeckung schädliche Befehle enthält, blockiert die Appliance die Anforderung oder führt die konfigurierte Aktion aus.
Das Profil der Citrix Web App Firewall wurde jetzt um eine neue Sicherheitsprüfung für Befehlseinschleusungsangriffe erweitert. Wenn die Sicherheitsprüfung des Befehls Injection den Datenverkehr untersucht und schädliche Befehle erkennt, blockiert die Appliance die Anforderung oder führt die konfigurierte Aktion aus.
贝einem Befehlseinschleusungsangriff zielt火线ngreifer darauf ab, nicht autorisierte Befehle auf dem Citrix ADC Betriebssystem auszuführen. Um dies zu erreichen, injiziert der Angreifer Betriebssystembefehle mit einer anfälligen Anwendung. Eine Citrix ADC Appliance ist anfällig für Injection-Angriffe, wenn die Anwendung unsichere Daten (Formulare, Cookies oder Header) an die Systemshell weitergibt.
Funktionsweise des Befehlseinschleusungsschutzes
是i einer eingehenden Anforderung untersucht WAF den Datenverkehr auf Schlüsselwörter oder Sonderzeichen. Wenn die eingehende Anforderung keine Muster aufweist, die mit einem der verweigerten Schlüsselwörter oder Sonderzeichen übereinstimmen, ist die Anforderung zulässig. Andernfalls wird die Anforderung basierend auf der konfigurierten Aktion blockiert, gelöscht oder umgeleitet.
- Wenn Sie lieber ein Schlüsselwort oder ein Sonderzeichen von der Liste ausnehmen möchten, können Sie eine Relaxationsregel anwenden, um die Sicherheitsprüfung unter bestimmten Bedingungen zu umgehen.
- 您可以在死Protokollierung aktivieren,嗯港okollmeldungen zu generieren. Sie können die Protokolle überwachen, um festzustellen, ob Antworten auf legitime Anfragen blockiert werden. Eine große Zunahme der Anzahl von Protokollmeldungen kann auf Versuche hinweisen, einen Angriff zu starten.
- Sie können die Statistikfunktion auch aktivieren, um statistische Daten zu Verletzungen und Protokollen zu sammeln. Ein unerwarteter Anstieg im Statistikzähler deutet möglicherweise darauf hin, dass Ihre Anwendung angegriffen wird. Wenn legitime Anfragen blockiert werden, müssen Sie möglicherweise die Konfiguration erneut aufrufen, um zu sehen, ob Sie die neue Relaxationsregel konfigurieren oder die vorhandene ändern müssen.
Schlüsselwörter und Sonderzeichen, die für die Befehlseinschleusung verweigert werden
Um Befehlseinschleusungsangriffe zu erkennen und zu blockieren, verfügt die Appliance über eine Reihe von Mustern (Schlüsselwörter und Sonderzeichen), die in der Standardsignaturdatei definiert sind. Im Folgenden finden Sie eine Liste der Schlüsselwörter, die während der Erkennung der Befehlseinschleusung blockiert wurden.
7z 7za 7zr …
In der Signaturdatei definierte Sonderzeichen sind:| ; & $ > < ' \ ! >> #
Konfigurieren der Befehlseinschleusungsprüfung mit der CLI
In der Befehlszeilenschnittstelle können Sie entweder den Befehl set the profile oder den Befehl add the profile verwenden, um die Befehlseinschleusungseinstellungen zu konfigurieren. Sie können die Block-, Protokoll- und Statistikaktionen aktivieren. Sie müssen auch die Schlüsselwörter und Zeichenfolgenzeichen festlegen, die Sie in den Nutzlasten erkennen möchten.
您一个der Eingabeaufforderung Folgendes ein:
set appfw profile
Hinweis:
Standardmäßig ist die Befehlseinschleusungsaktion auf “Keine” festgelegt. Außerdem wird der Standardeinschleusungsstyp des Befehls als festgelegt
CmdSplCharANDKeyWord
.
是ispiel:
set appfw profile profile1 -cmdInjectionAction block -CMDInjectionType CmdSplChar
Wo sind die verfügbaren Befehlseinschleusungsaktionen:
- Keine - Deaktivieren Sie den Befehlseinschleusungsschutz.
- Log - Protokollieren Sie Verstöße gegen die Befehlseinschleusung für die Sicherheitsprüfung.
- Blockieren - blockiert Datenverkehr, der gegen die Sicherheitsprüfung des Befehls Einschleusung verstößt.
- Statistiken - Generiert Statistiken für die Befehlseinschleusung Sicherheitsverletzungen.
Dabei sind die verfügbaren Befehlseinschleusungstypen:
- Cmd SplChar. Überprüft Sonderzeichen
- CmdKeyWord. Überprüft Befehlseinschleusung Schlüsselwörter
- CmdSplCharANDKeyWord. Überprüft Sonderzeichen und Befehlseinschleusung. Schlüsselwörter und Blöcke nur, wenn beide vorhanden sind.
- CmdSplCharORKeyWord. Überprüft Sonderzeichen und Befehlseinschleusung Schlüsselwörter und Blöcke, wenn eines von ihnen gefunden wird.
Konfigurieren von Relaxationsregeln für die Überprüfung des Befehlseinschleusungsschutzes
Wenn Ihre Anwendung erfordert, dass Sie die Inspektion der Befehlseinschleusung für ein bestimmtes ELEMENT oder ATTRIBUTE in der Nutzlast umgehen müssen, können Sie eine Relaxationsregel konfigurieren.
Die Relaxationsregeln des Befehls “Injection Inspection” haben die folgende Syntax:
bind appfw profile
是ispiel für Relaxationsregel für Regex im Header
bind appfw profile sample -CMDInjection hdr "http://10.10.10.10/" -location heaDER -valueType Keyword '[a-z]+grep' -isvalueRegex REGEX
Infolgedessen befreit die Injektion den Befehl Injection Check ermöglicht Header, der Varianten von “grep”hdr
enthält.
是ispiel für Relaxationsregel mit ValueType als Regex im Cookie
bind appfw profile sample -CMDInjection ck_login "http://10.10.10.10/" -location cookie -valueType Keyword 'pkg[a-z]+' -isvalueRegex REGEX
Konfigurieren der Befehlseinschleusungsprüfung über die Citrix ADC GUI
Führen Sie die folgenden Schritte aus, um die Befehlseinschleusungsprüfung zu konfigurieren.
- Navigieren Sie zuSicherheit > Citrix Web App Firewall und Profile.
- Wählen Sie auf der SeiteProfileein Profil aus, und klicken Sie auf是arbeiten.
- Wechseln Sie auf der SeiteCitrix Web App Firewall Profilzum AbschnittErweiterte Einstellungenund klicken Sie aufSicherheitsprüfungen.
- Wählen Sie im AbschnittSicherheitsüberprüfungendie OptionHTML Command Injectionausundklicken Sie auf
Legen Sie auf der SeiteEinstellungen für HTML-Befehlseinschleusungdie folgenden Parameter fest:
- Aktionen. Wählen Sie eine oder mehrere Aktionen aus, die für die Sicherheitsprüfung der Befehlseinschleusung ausgeführt werden sollen.
- Prüfen Sie Anforderung enthält. Wählen Sie ein Befehlseinschleusungsmuster aus, um zu überprüfen, ob die eingehende Anforderung das Muster hat.
- Klicken Sie aufOK.
Anzeigen oder Anpassen von Befehlseinschleusungsmustern über die grafische Benutzeroberfläche
Sie können die GUI verwenden, um die Injection-Pattern desHTML-Befehlsanzuzeigen oder anzupassen.
Die Standardbefehl-Einschleusungsmuster sind in der Standardsignaturdatei angegeben. Wenn Sie kein Signaturobjekt an Ihr Profil binden, werden die im Standardsignatur-Objekt angegebenen Standard-HTML-Befehlseinschleusungsmuster vom Profil für die Verarbeitung der Sicherheitsprüfung der Befehlseinschleusung verwendet. Die im Standardsignaturobjekt angegebenen Regeln und Muster sind schreibgeschützt. Sie können sie nicht bearbeiten oder ändern. Wenn Sie diese Muster ändern oder ändern möchten, erstellen Sie eine Kopie des Standardobjekts sSignatures, um ein benutzerdefiniertes Signaturobjekt zu erstellen. Nehmen Sie Änderungen an den Befehlseinschleusungsmustern im neuen benutzerdefinierten Signaturobjekt vor und verwenden Sie dieses Signaturobjekt in Ihrem Profil, das den Datenverkehr verarbeitet, für den Sie diese benutzerdefinierten Muster verwenden möchten.
Weitere Informationen finden Sie unterSignaturen
So zeigen Sie die Standardeinschleusungsmuster für Befehle über die GUI an:
- Navigieren Sie zuApplication Firewall > Signaturen, wählen Sie*Standardsignaturenaus und klicken Sie auf是arbeiten.
- Klicken Sie aufCMD/SQL/XSS-Muster verwalten. Die TabelleCMD/SQL/XSS Paths (schreibgeschützt)zeigt Muster im Zusammenhang mit der
CMD/SQL/XSS
-Einschleusung:
- Wählen Sie eine Zeile aus und klicken Sie aufElemente verwalten, um die entsprechenden Befehlseinschleusungsmuster (Schlüsselwörter, spezielle Zeichenfolgen, Transformationsregeln oder Platzhalterzeichen) anzuzeigen, die von der Injection-Prüfung des Web App Firewall-Befehls verwendet werden.
So passen Sie ein Befehlseinschleusungsmuster mit der GUI an
Sie können das benutzerdefinierte Signaturobjekt bearbeiten, um dieCMD-Schlüsselwörter, Sonderzeichenfolgen und Platzhalterzeichen anzupassen. Sie können neue Einträge hinzufügen oder vorhandene entfernen. Sie können die Transformationsregeln für die spezielle Zeichenfolgen für die Befehlseinschleusung ändern.
- Navigieren Sie zuApplication Firewall > Signaturen, markieren Sie die benutzerdefinierte Zielsignatur und klicken Sie aufHinzufügen. Klicken Sie aufCMD/SQL/XSS-Muster verwalten.
- Wählen Sie auf der SeiteCMD/SQL/XSS-Pfade verwaltendie Ziel-CMD-Einschleusungszeile aus.
Klicken Sie aufElemente verwalten,HinzufügenoderEntferneneines Befehlseinschleusungselements.
Warnung:
Sie müssen vorsichtig sein, bevor Sie ein Standard-Befehlseinschleusungselement entfernen oder ändern, oder den CMD-Pfad löschen, um die gesamte Zeile zu entfernen. Die Signaturregeln und die Sicherheitsprüfung der Befehlseinschleusung beruhen auf diesen Elementen, um Angriffe auf Befehlseinschleusung zu erkennen, um Ihre Anwendungen zu schützen. Das Anpassen der SQL-Muster kann Ihre Anwendung anfällig für Befehlseinschleusungsangriffe machen, wenn das erforderliche Muster während der Bearbeitung entfernt wird.
Anzeigen von Statistiken zum Befehlseinschleusungsdatenverkehr und -verletzungen
Auf der SeiteCitrix Web App Firewall -Statistikenwerden Details zu Sicherheitsdatenverkehr und Sicherheitsverletzungen in einem tabellarischen oder grafischen Format angezeigt.
So zeigen Sie Sicherheitsstatistiken mithilfe der Befehlszeilenschnittstelle an.
您一个der Eingabeaufforderung Folgendes ein:
stat appfw profile profile1
Appfw-Profil Traffic Statistics | Rate (/s) | Gesamt |
---|---|---|
Anforderungen | 0 | 0 |
Bytes anfordern | 0 | 0 |
Antworten | 0 | 0 |
Antwort-Bytes | 0 | 0 |
Bricht ab | 0 | 0 |
Weiterleitungen | 0 | 0 |
Langzeit-Antwortzeit (ms) | – | 0 |
Letzte Ave Reaktionszeit (ms) | – | 0 |
HTML/XML/JSON Verstoßstatistiken | Rate (/s) | Gesamt |
---|---|---|
Start-URL | 0 | 0 |
URL verweigern | 0 | 0 |
Referer-Kopfzeile | 0 | 0 |
Pufferüberlauf | 0 | 0 |
Cookie-Konsistenz | 0 | 0 |
Cookie-Hijacking | 0 | 0 |
CSRF-Formular-Tag | 0 | 0 |
HTML-Site-übergreifendes Skripting | 0 | 0 |
HTML-SQL-Injection | 0 | 0 |
Feld-Format | 0 | 0 |
Feldkonsistenz | 0 | 0 |
Kreditkarte | 0 | 0 |
Sicheres Objekt | 0 | 0 |
Verletzungen der Signatur | 0 | 0 |
Inhaltstyp | 0 | 0 |
JSON Denial of Service | 0 | 0 |
JSON SQL-Injection | 0 | 0 |
JSON Cross-Site Scripting | 0 | 0 |
Datei-Upload-Typen | 0 | 0 |
XML-Payload des Inhaltstyps ableiten | 0 | 0 |
HTML-CMD-Einschleusung | 0 | 0 |
XML-Format | 0 | 0 |
XML-Denial-of-Service (XDoS) | 0 | 0 |
XML-Nachrichtenüberprüfung | 0 | 0 |
Interoperabilität von Webdiensten | 0 | 0 |
XML SQL Injection | 0 | 0 |
XML-Site-übergreifendes Skripting | 0 | 0 |
XML-Anhang | 0 | 0 |
SOAP-Fehlerverletzungen | 0 | 0 |
Allgemeine XML-Verstöße | 0 | 0 |
Verstöße insgesamt | 0 | 0 |
HTML/XML/JSON-Protokollstatistik | Rate (/s) | Gesamt |
---|---|---|
URL-Protokolle starten | 0 | 0 |
URL-Protokolle verweigern | 0 | 0 |
Referer-Header-Protokolle | 0 | 0 |
Pufferüberlaufprotokolle | 0 | 0 |
Cookie-Konsistenzprotokolle | 0 | 0 |
Cookie-HijackingProtokolle | 0 | 0 |
CSRF aus Tag-Protokollen | 0 | 0 |
HTML-Cross-Site Scripting Protokolle | 0 | 0 |
HTML-Cross-Site Scripting Transformationsprotokolle | 0 | 0 |
HTML SQL Injection-Protokolle | 0 | 0 |
HTML-SQL-Transformationsprotokolle | 0 | 0 |
Feldformatprotokolle | 0 | 0 |
Konsistenzprotokolle für Felder | 0 | 0 |
Kreditkarten | 0 | 0 |
Transformationsprotokolle für Kreditkarten | 0 | 0 |
Sichere Objektprotokolle | 0 | 0 |
Signatur-Protokolle | 0 | 0 |
Inhaltstyp-Protokolle | 0 | 0 |
JSON Denial-of-Service-Protokolle | 0 | 0 |
JSON-SQL-Injectionsprotokolle | 0 | 0 |
JSON-Site-Cross-Site-Skripting-Protokolle | 0 | 0 |
Datei-Upload-Typen Protokolle | 0 | 0 |
Ableiten des Inhaltstyps XML Payload L | 0 | 0 |
HTML Command Injection Protokolle | 0 | 0 |
Protokolle im XML-Format | 0 | 0 |
XML Denial-of-Service-Protokolle (XDoS) | 0 | 0 |
XML-Nachrichtenüberprüfungsprotokolle | 0 | 0 |
WSI-Protokolle | 0 | 0 |
XML SQL Injection-Protokolle | 0 | 0 |
Site-übergreifendes XML-Scripting | 0 | 0 |
XML-Anhangs-Protokolle | 0 | 0 |
SOAP-Fehlerprotokolle | 0 | 0 |
Generische XML-Protokolle | 0 | 0 |
Log-Meldungen insgesamt | 0 | 0 |
Statistikrate für Serverfehler (/s) > Gesamt | ||
---|---|---|
HTTP Client Errors (4xx Resp) | 0 | 0 |
HTTP Server Errors (5xx Resp) | 0 | 0 |
Anzeigen von Statistiken zur Einschleusung von HTML-Befehlen mit der Citrix ADC GUI
Führen Sie die folgenden Schritte aus, um die Statistiken zur Einschleusung von Befehlen anzuzeigen:
- Navigieren Sie zuSicherheit > Citrix Web App Firewall > Profile.
- Wählen Sie im Detailbereich ein Web App Firewall Profil aus und klicken Sie aufStatistiken.
- Auf der SeiteStatistik der Citrix Web App Firewallwerden die HTML-Befehle zum Einschleusung von Datenverkehr und Verstößen angezeigt.
- Sie könnenTabellarische Ansichtauswählen oder zuGraphische Ansichtwechseln, um die Daten in einem tabellarischen oder grafischen Format anzuzeigen.
HTML-Befehl Injection Traffic-Statistiken
HTML-Befehlsverletzungsstatistiken für die Einschleusung
In diesem Artikel
- Funktionsweise des Befehlseinschleusungsschutzes
- Schlüsselwörter und Sonderzeichen, die für die Befehlseinschleusung verweigert werden
- Konfigurieren der Befehlseinschleusungsprüfung mit der CLI
- Konfigurieren von Relaxationsregeln für die Überprüfung des Befehlseinschleusungsschutzes
- Konfigurieren der Befehlseinschleusungsprüfung über die Citrix ADC GUI
- Anzeigen oder Anpassen von Befehlseinschleusungsmustern über die grafische Benutzeroberfläche
- Anzeigen von Statistiken zum Befehlseinschleusungsdatenverkehr und -verletzungen
- Anzeigen von Statistiken zur Einschleusung von HTML-Befehlen mit der Citrix ADC GUI