Citrix ADC

Erzwingen der HTTP-RFC-Konformität

Citrix Web App Firewall überprüft den eingehenden Datenverkehr auf HTTP-RFC-Konformität und löscht alle Anforderungen, die standardmäßig RFC-Verletzungen aufweisen. Es gibt jedoch bestimmte Szenarien, in denen die Appliance möglicherweise eine Nicht-RFC-Konformitätsanforderung umgehen oder blockieren muss. In solchen Fällen können Sie die Appliance so konfigurieren, dass diese Anforderungen auf globaler Ebene oder Profilebene umgangen oder blockiert werden.

Blockieren oder Umgehen von nicht RFC-konformen Anforderungen auf globaler Ebene

Das HTTP-Modul markiert eine Anforderung als ungültig, wenn sie unvollständig oder ungültig ist und solche Anforderungen nicht von WAF verarbeitet werden können. Zum Beispiel eine eingehende HTTP-Anforderung, die Host-Header fehlt. Um solche ungültigen Anforderungen zu blockieren oder zu umgehen, müssen Sie die Option malformedReqAction in den globalen Einstellungen der Anwendungsfirewall konfigurieren.

Hinweis:

Wenn Sie die Option blockieren im Parameter malformedReqAction deaktivieren, umgeht die App-Firewall-Verarbeitung für alle Nicht-RFC-Konformitätsanforderungen und leitet die Anforderungen an das nächste Modul weiter.

So sperren oder umgehen Sie ungültige Nicht-RFC-Beschwerde HTTP-Anforderungen mit der Befehlszeilenschnittstelle

Um ungültige Anforderungen zu blockieren oder zu umgehen, geben Sie den folgenden Befehl ein:

set appfw settings -malformedreqaction <action>

Beispiel:

set appfw settings –malformedReqAction block

So zeigen Sie falsch formatierte Anforderungsaktionseinstellungen an

Geben Sie den folgenden Befehl ein, um fehlerhafte Einstellungen für die Anforderungsaktion anzuzeigen:

show appfw settings

Ausgang:

DefaultProfile:  APPFW_BYPASS UndefAction:  APPFW_BLOCK SessionTimeout:  900     LearnRateLimit:  400     SessionLifetime:  0 SessionCookieName:  citrix_ns_id ImportSizeLimit:  134217728 SignatureAutoUpdate:  OFF SignatureUrl:"https://s3.amazonaws.com/NSAppFwSignatures/SignaturesMapping.xml" CookiePostEncryptPrefix:  ENC GeoLocationLogging:  OFF CEFLogging:  OFF       EntityDecoding:  OFF     UseConfigurableSecretKey:  OFF SessionLimit:  100000    MalformedReqAction:  block log stats
 Done

So sperren oder umgehen Sie ungültige Nicht-RFC-Beschwerde HTTP-Anforderungen mit der Citrix ADC GUI

  1. Navigieren Sie zu Sicherheit > Citrix Web App Firewall .
  2. Klicken Sie auf der Seite Citrix Web App Firewall unter Einstellungen auf **Engine-Einstellungen ändern** .
  3. Wählen Sie auf der Seite Citrix Web App Firewall Einstellungen konfigurieren die Option Fehlerhafte Anforderung protokollieren als Block, Log oder Stats aus.
  4. Klicken Sie auf OK und schließen .

Hinweis:

Wenn Sie die Aktion Sperren deaktivieren oder keine fehlerhafte Anforderungsaktion auswählen, umgeht die Appliance die Anforderung, ohne den Benutzer zu unterbinden.

Blockieren oder Umgehen von nicht RFC-konformen Anforderungen auf Profilebene

Andere nicht RFC-konforme Anforderungen können so konfiguriert werden, dass sie auf Profilebene blockiert oder umgangen werden. Sie müssen das RFC-Profil entweder im Modus Blockieren oder Umgehen einstellen. Auf diese Weise wird jeder ungültige Datenverkehr, der dem Web App Firewall profil entspricht, entweder umgangen oder entsprechend blockiert.

Hinweis:

Wenn Sie das RFC-Profil im Modus Umgehen festlegen, müssen Sie sicherstellen, dass Sie die Transformationsoption in den Abschnitten HTML Cross-Site Scripting Settings und HTML SQL Injection Settings deaktivieren. Wenn Sie die Option aktivieren und das rfc-Profil im Modus Umgehen festlegen, zeigt die Appliance eine Warnmeldung an, Cross-Site Scripts transformieren und SQL-Sonderzeichen transformieren sind derzeit ON. Empfehlen Sie, es auszuschalten, wenn es mit APPFW_RFC_BYPASS verwendet wird.

Wichtig:

Außerdem zeigt die Appliance eine Warnhinweise an: Appfw Security-Prüfungen sind möglicherweise nicht auf Anforderungen anwendbar, die gegen RFC-Prüfungen verstößt, wenn dieses Profil eingestellt ist. Das Aktivieren einer Transformationseinstellung wird nicht empfohlen, da Anfragen teilweise transformiert werden können, die RFC-Verletzungen enthalten.

So konfigurieren Sie das RFC-Profil im Web App Firewall Profil mit der Befehlszeilenschnittstelle

Geben Sie an der Eingabeaufforderung die folgenden Befehle ein:

set appfw profile <profile_name> -rfcprofile <rfcprofile_name

Beispiel

set appfw profile P1 -rfcprofile APPFW_RFC_BLOCK

Hinweis:

Standardmäßig ist das rfc-Profil im Modus Blockieren an das Web App Firewall -Profil gebunden.

So konfigurieren Sie das RFC-Profil im Web App Firewall Profil mit der GUI

  1. Navigieren Sie zu Sicherheit > Anwendungsfirewall > Profile.
  2. Wählen Sie auf der Seite Profile ein Profil aus, und klicken Sie auf Bearbeiten .
  3. Klicken Sie auf der Seite Web App Firewall Profil auf Profileinstellungen im Abschnitt Erweiterte Einstellungen .
  4. Legen Sie im Abschnitt HTTP-Einstellungen das RFC-Profil im Modus APPFW_RFC_BYPASS fest. Das System zeigt eine Warnmeldung an: Appfw Security checks enabled ist möglicherweise nicht für Anforderungen anwendbar, die gegen RFC-Prüfungen verstößt, wenn dieses Profil eingestellt ist. Das Aktivieren einer Transformationseinstellung wird nicht empfohlen, da Anfragen teilweise transformiert werden können, die RFC-Verletzungen enthalten.

Erzwingen der HTTP-RFC-Konformität