Citrix ADC

HTML-SQL-Injektionsprüfung

Viele Webanwendungen verfügen über Webformulare, die SQL zur Kommunikation mit relationalen Datenbankservern verwenden. Bösartiger Code oder ein Hacker können ein unsicheres Webformular verwenden, um SQL-Befehle an den Webserver zu senden. Die Web App Firewall HTML SQL Injection Check bietet spezielle Abwehrmechanismen gegen das Eindringen von nicht autorisiertem SQL-Code, der die Sicherheit stören könnte. Wenn die Web App Firewall nicht autorisierten SQL-Code in einer Benutzeranforderung erkennt, transformiert sie entweder die Anforderung, um den SQL-Code inaktiv zu machen, oder blockiert die Anforderung. Die Web App Firewall untersucht die Anforderungsnutzlast für injizierten SQL-Code an drei Orten: 1) POST-Text, 2) Header und 3) Cookies. Um den Abfrageteil in Anfragen für injizierten SQL-Code zu untersuchen, konfigurieren Sie bitte die appfw-Profileinstellung ‘InspectQueryContentTypes’ für die spezifischen Inhaltstypen.

Ein Standardsatz von Schlüsselwörtern und Sonderzeichen enthält bekannte Schlüsselwörter und Sonderzeichen, die häufig zum Starten von SQL-Angriffen verwendet werden. Sie können neue Muster hinzufügen und den Standardsatz bearbeiten, um die SQL-Prüfung anzupassen. Die Web App Firewall bietet verschiedene Aktionsoptionen für die Implementierung von SQL Injection-Schutz. Zusätzlich zu den Aktionen Blockieren, Protokollieren, Statistikenund Lernenbietet das Web App Firewall Profil auch die Möglichkeit, SQL-Sonderzeichen zu transformieren, um einen Angriff harmlos zu machen.

Zusätzlich zu Aktionen gibt es mehrere Parameter, die für die SQL-Injektionsverarbeitung konfiguriert werden können. Sie können nach SQL-Platzhalterzeichensuchen. Sie können den SQL Injection-Typ ändern und eine der 4 Optionen auswählen (SQLKeyword, SQLSplchar, SQLSplCharAndKeyword, SQLSplCharorKeyword), um anzugeben, wie die SQL-Schlüsselwörter und SQL-Sonderzeichen bei der Verarbeitung der Payload ausgewertet werden. Mit dem Parameter SQL Comments Handling können Sie den Typ der Kommentare angeben, die während der SQL Injection-Erkennung überprüft oder ausgenommen werden müssen.

Sie können Entspannungen bereitstellen, um Fehlalarme zu vermeiden. Die Lernengine der Web App Firewall kann Empfehlungen zum Konfigurieren von Relaxationsregeln enthalten.

Für die Konfiguration eines optimierten SQL Injection-Schutzes für Ihre Anwendung stehen folgende Optionen zur Verfügung:

Block— Wenn Sie Block aktivieren, wird die Blockaktion nur ausgelöst, wenn die Eingabe mit der SQL-Injektionstypspezifikation übereinstimmt. Wenn beispielsweise SQLSplCharAndKeyword als SQL-Injektionstyp konfiguriert ist, wird eine Anforderung nicht blockiert, wenn sie keine Schlüsselwörter enthält, selbst wenn SQL-Sonderzeichen in der Eingabe erkannt werden. Eine solche Anforderung wird blockiert, wenn der SQL-Injektionstyp auf SQLSplcharoder SQLSplCharorKeywordfestgelegt ist.

Log— Wenn Sie die Protokollfunktion aktivieren, generiert die SQL Injection-Prüfung Protokollmeldungen, die die ausgeführten Aktionen angeben. Wenn der Block deaktiviert ist, wird für jedes Eingabefeld, in dem die SQL-Verletzung erkannt wurde, eine separate Protokollmeldung generiert. Allerdings wird nur eine Nachricht generiert, wenn die Anforderung blockiert wird. Ebenso wird eine Protokollnachricht pro Anforderung für den Transformationsvorgang generiert, selbst wenn SQL-Sonderzeichen in mehrere Felder umgewandelt werden. 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.

Statistiken— Wenn diese Option aktiviert ist, sammelt die Statistikfunktion Statistiken über Verstöße und Protokolle. 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 besuchen, um zu sehen, ob Sie neue Relaxationsregeln konfigurieren oder die vorhandenen ändern müssen.

Lernen— Wenn Sie nicht sicher sind, welche SQL-Relaxationsregeln für Ihre Anwendung ideal geeignet sind, können Sie die Lernfunktion verwenden, um Empfehlungen basierend auf den erlernten Daten zu generieren. Die Web App Firewall Learning Engine überwacht den Datenverkehr und bietet SQL-Lernempfehlungen basierend auf den beobachteten Werten. Um den optimalen Nutzen zu erzielen, ohne die Leistung zu beeinträchtigen, sollten Sie die Lernoption für kurze Zeit aktivieren, um ein repräsentatives Beispiel der Regeln zu erhalten, und dann die Regeln bereitstellen und das Lernen deaktivieren.

SQL-Sonderzeichen transformieren— Die Web App Firewall betrachtet drei Zeichen, einfaches Anführungszeichen (‘), umgekehrter Schrägstrich () und Semikolon (;) als Sonderzeichen für die SQL-Sicherheitsprüfung. Die SQL-Transformationsfunktion ändert den SQL Injection-Code in einer HTML-Anforderung, um sicherzustellen, dass die Anforderung harmlos gerendert wird. Die geänderte HTML-Anforderung wird dann an den Server gesendet. Alle Standardtransformationsregeln werden in der Datei /netscaler/default_custom_settings.xml angegeben.

Der Transformationsvorgang macht den SQL-Code inaktiv, indem die folgenden Änderungen an der Anforderung vorgenommen werden:

  • Einzelnes gerades Anführungszeichen (‘) zum doppelten geraden Anführungszeichen ().
  • Backslash () zu doppeltem Backslash ().
  • Semikolon (;) wird vollständig gelöscht.

Diese drei Zeichen (spezielle Zeichenfolgen) sind notwendig, um Befehle an einen SQL-Server auszugeben. Sofern einem SQL-Befehl eine spezielle Zeichenfolge vorangestellt ist, ignorieren die meisten SQL-Server diesen Befehl. Daher verhindern die Änderungen, die die Web App Firewall beim Aktivieren der Transformation durchführt, dass ein Angreifer aktive SQL injiziert. Nachdem diese Änderungen vorgenommen wurden, kann die Anfrage sicher an Ihre geschützte Website weitergeleitet werden. Wenn Webformulare auf Ihrer geschützten Website rechtmäßig SQL-Sonderzeichenfolgen enthalten können, aber die Webformulare nicht auf die speziellen Zeichenfolgen angewiesen sind, können Sie das Blockieren deaktivieren und die Transformation aktivieren, um das Blockieren von legitimen Webformulardaten zu verhindern, ohne den Schutz der Web App Firewall für Ihre geschützten Websites zu verringern.

Der Transformationsvorgang funktioniert unabhängig von der Einstellung SQL Injection Type. Wenn transform aktiviert ist und der Typ SQL Injection als SQL-Schlüsselwort angegeben wird, werden SQL-Sonderzeichen umgewandelt, auch wenn die Anforderung keine Schlüsselwörter enthält.

Tipp

Normalerweise aktivieren Sie Transformation oder Blockierung, aber nicht beides. Wenn die Blockaktion aktiviert ist, hat sie Vorrang vor der Transformationsaktion. Wenn Sie die Blockierung aktiviert haben, ist die Aktivierung der Transformation redundant.

Suche nach SQL-Platzhalterzeichen— Platzhalterzeichen können verwendet werden, um die Auswahl einer SQL-SELECT-Anweisung (Structured Query Language) zu erweitern. Diese Wildcard-Operatoren können in Verbindung mit den Operatoren LIKE und NOT LIKE verwendet werden, um einen Wert mit ähnlichen Werten zu vergleichen. Die Prozentzeichen (%) und Unterstriche (_) werden häufig als Platzhalter verwendet. Das Prozentzeichen entspricht dem Sternchen (*) -Platzhalterzeichen, das mit MS-DOS verwendet wird, und um Null, ein oder mehrere Zeichen in einem Feld abzugleichen. Der Unterstrich ähnelt dem MS-DOS-Fragezeichen (?) Platzhalterzeichen. Es entspricht einer einzelnen Zahl oder einem Zeichen in einem Ausdruck.

Sie können beispielsweise die folgende Abfrage verwenden, um eine Zeichenfolgensuche durchzuführen, um alle Kunden zu suchen, deren Namen das D-Zeichen enthalten.

SELECT * from customer WHERE name like “%D%”:

Im folgenden Beispiel werden die Operatoren kombiniert, um alle Gehaltswerte zu finden, die 0 an zweiter und dritter Stelle haben.

SELECT * from customer WHERE salary like ‘_00%’:

Verschiedene DBMS-Anbieter haben die Platzhalterzeichen durch Hinzufügen zusätzlicher Operatoren erweitert. Die Citrix Web App Firewall kann vor Angriffen schützen, die durch Einbringen dieser Platzhalterzeichen gestartet werden. Die 5 Standard-Platzhalterzeichen sind Prozent (%), Unterstrich (_), Caret (^), öffnende eckige Klammer ([) und die schließende eckige Klammer (]). Dieser Schutz gilt sowohl für HTML- als auch für XML-Profile.

Die Standard-Platzhalterzeichen sind eine Liste von Literalen, die in der *Standardsignaturen angegeben sind:

  • <wildchar type=”LITERAL”>%</wildchar>
  • <wildchar type=”LITERAL”>_</wildchar>
  • <wildchar type=”LITERAL”>^</wildchar>
  • <wildchar type=”LITERAL”>[</wildchar>
  • <wildchar type=”LITERAL”>]</wildchar>

Platzhalterzeichen in einem Angriff können PCRE sein, wie[^A-F]. Die Web App Firewall unterstützt auch PCRE-Platzhalter, aber die obigen Platzhalterzeichen reichen aus, um die meisten Angriffe zu blockieren.

Hinweis:

Die SQL-Platzhalterzeichenprüfung unterscheidet sich von der SQL-Sonderzeichenprüfung. Diese Option muss mit Vorsicht verwendet werden, um Falschmeldungen zu vermeiden.

Prüfanforderung mit SQL Injection Type— Die Web App Firewall bietet 4 Optionen, um die gewünschte Strenge für die SQL Injection-Inspektion zu implementieren, basierend auf den individuellen Anforderungen der Anwendung. Die Anforderung wird anhand der Einspritztypspezifikation zum Erkennen von SQL-Verletzungen überprüft. Die 4 SQL-Injection-Typ-Optionen sind:

  • SQL-Sonderzeichen und Schlüsselwort—Sowohl ein SQL-Schlüsselwort als auch ein SQL-Sonderzeichen müssen in der Eingabe vorhanden sein, um eine SQL-Verletzung auszulösen. Diese am wenigsten einschränkende Einstellung ist auch die Standardeinstellung.
  • SQL-Sonderzeichen—Mindestens eines der Sonderzeichen muss in der Eingabe vorhanden sein, um eine SQL-Verletzung auszulösen.
  • SQL-Schlüsselwort—Mindestens eines der angegebenen SQL-Schlüsselwörter muss in der Eingabe vorhanden sein, um eine SQL-Verletzung auszulösen. Wählen Sie diese Option nicht ohne Berücksichtigung. Um Fehlalarme zu vermeiden, stellen Sie sicher, dass keines der Schlüsselwörter in den Eingaben erwartet wird.
  • SQL-Sonderzeichen oder Schlüsselwort—Entweder das Schlüsselwort oder die Sonderzeichenfolge muss in der Eingabe vorhanden sein, um die Sicherheitsüberprüfungsverletzung auszulösen.

Tipp

Wenn Sie die Web App Firewall so konfigurieren, dass sie nach Eingaben suchen, die ein SQL-Sonderzeichen enthalten, überspringt die Web App-Firewall Webformularfelder, die keine Sonderzeichen enthalten. Da die meisten SQL-Server keine SQL-Befehle verarbeiten, denen kein Sonderzeichen vorangestellt ist, kann die Aktivierung dieser Option die Belastung der Web App Firewall erheblich reduzieren und die Verarbeitung beschleunigen, ohne dass Ihre geschützten Websites gefährdet werden.

SQL-Kommentarbehandlung— Standardmäßig überprüft die Web App Firewall alle SQL-Kommentare auf injizierte SQL-Befehle. Viele SQL-Server ignorieren jedoch alles in einem Kommentar, selbst wenn ein SQL-Sonderzeichen vorangestellt ist. Wenn Ihr SQL Server Kommentare ignoriert, können Sie die Web App Firewall so konfigurieren, dass Kommentare übersprungen werden, wenn Anfragen für injizierte SQL überprüft werden. Die SQL-Kommentarbehandlungsoptionen sind:

  • ANSI—Überspringen Sie SQL-Kommentare im ANSI-Format, die normalerweise von UNIX-basierten SQL-Datenbanken verwendet werden. Beispiel:
    • — (Zwei Bindestriche) - Dies ist ein Kommentar, der mit zwei Bindestrichen beginnt und mit Zeilenende endet.

    • {} - Klammern (Klammern umschließen den Kommentar. Der {steht vor dem Kommentar, und der} folgt ihm. Klammern können ein- oder mehrzeilige Kommentare abgrenzen, Kommentare können jedoch nicht verschachtelt werden)

    • /* */ : C style comments (Does not allow nested comments). Please note /*! <comment that begin with slash followed by asterisk and exclamation mark is not a comment > */

    • MySQL Server unterstützt einige Varianten von C-Style-Kommentaren. Diese ermöglichen es Ihnen, Code zu schreiben, der MySQL Erweiterungen enthält, aber immer noch portabel ist, indem Sie Kommentare der folgenden Form verwenden: /*! MySQL-specific code */

    • . #: MySQL-Kommentare: Dies ist ein Kommentar, der mit # Zeichen beginnt und mit Ende der Zeile endet

  • Verschachtelt— Verschachtelte SQL-Kommentare überspringen, die normalerweise von Microsoft SQL Server verwendet werden. Zum Beispiel; — (Zwei Bindestriche) und /* */ (Erlaubt verschachtelte Kommentare)
  • ANSI/verschachtelt—Überspringen Sie Kommentare, die sowohl den ANSI- als auch den verschachtelten SQL-Kommentarstandards entsprechen. Kommentare, die nur dem ANSI-Standard oder nur dem verschachtelten Standard entsprechen, werden weiterhin auf injizierte SQL überprüft.
  • Alle Kommentare prüfen— Überprüfen Sie die gesamte Anforderung für injizierte SQL, ohne etwas zu überspringen. Dies ist die Standardeinstellung.

Tipp

In den meisten Fällen sollten Sie die Option Verschachtelt oder ANSI/verschachtelt nur auswählen, wenn Ihre Back-End-Datenbank auf Microsoft SQL Server ausgeführt wird. Die meisten anderen Typen von SQL Server-Software erkennen verschachtelte Kommentare nicht. Wenn verschachtelte Kommentare in einer Anforderung angezeigt werden, die an einen anderen SQL-Servertyp weitergeleitet wird, deutet dies möglicherweise auf einen Versuch hin, die Sicherheit auf diesem Server zu verletzen.

Anforderungskopfzeilen prüfen— Aktivieren Sie diese Option, wenn Sie nicht nur die Eingabe in den Formularfeldern untersuchen möchten, sondern auch die Anforderungskopfzeilen auf HTML SQL Injection-Angriffe untersuchen möchten. Wenn Sie die GUI verwenden, können Sie diesen Parameter im Bereich Erweiterte Einstellungen -> Profileinstellungen des Web App Firewall Profils aktivieren.

Hinweis:

Wenn Sie das Header-Flag Check Request aktivieren, müssen Sie möglicherweise die Relaxationsregel für den User-Agent-Header konfigurieren. Das Vorhandensein des SQL-Schlüsselworts like und des SQL-Sonderzeichens Semikolon (; ) kann falsch positive und Blockanforderungen auslösen, die diesen Header enthalten. Warnung

Wenn Sie sowohl die Anforderungskopfprüfung als auch die Transformation aktivieren, werden alle SQL-Sonderzeichen in Kopfzeilen ebenfalls transformiert. Die Header Accept, Accept-Charset, Accept-Encoding, Accept-Language, Expect und User-Agent enthalten normalerweise Semikolons (;). Das gleichzeitige Aktivieren der Request-Header-Prüfung und der Transformation kann zu Fehlern führen.

InspectQueryContentTypes — Konfigurieren Sie diese Option, wenn Sie den Anforderungsabfragebereich auf SQL Injection-Angriffe für die spezifischen Inhaltstypen untersuchen möchten. Wenn Sie die GUI verwenden, können Sie diesen Parameter im Bereich Erweiterte Einstellungen -> Profileinstellungen des App-Firewall-Profils konfigurieren.

SQL Feinkörnige Entspannungen

Die Web App Firewall bietet Ihnen die Möglichkeit, ein bestimmtes Formularfeld, Header oder Cookie von der Überprüfung der SQL Injection auszunehmen. Sie können die Prüfung für eines oder mehrere dieser Felder vollständig umgehen, indem Sie Relaxationsregeln für die SQL Injection-Prüfung konfigurieren.

Mit der Web App Firewall können Sie eine engere Sicherheit durch Feinabstimmung der Relaxationsregeln implementieren. Eine Anwendung erfordert möglicherweise die Flexibilität, um bestimmte Muster zuzulassen, aber die Konfiguration einer Relaxationsregel zum Umgehen der Sicherheitsprüfung kann die Anwendung anfällig für Angriffe machen, da das Zielfeld von der Prüfung auf SQL-Angriffsmuster ausgenommen ist. SQL feinkörnige Entspannung bietet die Möglichkeit, bestimmte Muster zuzulassen und den Rest zu blockieren. Beispielsweise verfügt die Web App Firewall derzeit über einen Standardsatz von mehr als 100 SQL-Schlüsselwörtern. Da Hacker diese Schlüsselwörter in SQL Injection-Angriffen verwenden können, kennzeichnet die Web App Firewall sie als potenzielle Bedrohungen. Sie können ein oder mehrere Schlüsselwörter entspannen, die für den jeweiligen Standort als sicher gelten. Die restlichen potenziell gefährlichen SQL-Schlüsselwörter werden weiterhin auf den Zielspeicherort überprüft und lösen weiterhin die Sicherheitsüberprüfungsverstöße aus. Sie haben jetzt viel strengere Kontrolle.

Die in Relaxationen verwendeten Befehle verfügen über optionale Parameter für Werttyp und Wertausdruck. Sie können angeben, ob es sich bei dem Wertausdruck um einen regulären Ausdruck oder um eine Literalzeichenfolge handelt. Der Werttyp kann leer gelassen werden oder Sie haben die Möglichkeit, Keyword oder SpecialString oder WildChar auszuwählen.

Warnung

Reguläre Ausdrücke sind leistungsstark. Vor allem, wenn Sie mit regulären Ausdrücken im PCRE-Format nicht vertraut sind, überprüfen Sie alle regulären Ausdrücke, die Sie schreiben. Stellen Sie sicher, dass sie genau die URL definieren, die Sie als Ausnahme hinzufügen möchten, und nichts anderes. Die unvorsichtige Verwendung von Platzhaltern und insbesondere der Punkt-Sternchen (.*) -Metazeichen/Platzhalterkombination kann zu Ergebnissen führen, die Sie nicht wünschen, z. B. zum Blockieren des Zugriffs auf Webinhalte, die Sie nicht blockieren wollten oder einen Angriff zulassen, den die HTML-SQL-Injection-Prüfung sonst blockiert hätte.

Zu berücksichtigende Punkte:

  • Value-Ausdruck ist ein optionales Argument. Ein Feldname hat möglicherweise keinen Werteausdruck.
  • Ein Feldname kann an mehrere Wertausdrücke gebunden werden.
  • Wertausdrücken sollten einen Werttyp zugewiesen werden. Der SQL-Werttyp kann sein: 1) Schlüsselwort, 2) SpecialString oder 3) WildChar.
  • Sie können mehrere Relaxationsregeln pro Feldname/URL-Kombination haben.

Verwenden der Befehlszeile zum Konfigurieren der SQL Injection Check

So konfigurieren Sie SQL Injection-Aktionen und andere Parameter mit der Befehlszeile:

In der Befehlszeilenschnittstelle können Sie entweder den Befehl set appfw profile oder den Befehl add appfw profile verwenden, um den SQL Injection-Schutz zu konfigurieren. Sie können die Aktion blockieren, lernen, protokollieren und Statistiken aktivieren und angeben, ob Sie die in SQL Injection-Angriffszeichenfolgen verwendeten Sonderzeichen transformieren möchten, um den Angriff zu deaktivieren. Wählen Sie den Typ des SQL-Angriffsmusters (Schlüsselwörter, Platzhalterzeichen, spezielle Zeichenfolgen) aus, den Sie in den Payloads erkennen möchten, und geben Sie an, ob die Web App Firewall auch die Anforderungskopfzeilen auf Verletzungen von SQL Injection überprüfen soll. Verwenden Sie den Befehl unset appfw profile, um die konfigurierten Einstellungen wieder auf ihre Standardwerte zurückzusetzen. Jeder der folgenden Befehle legt nur einen Parameter fest, aber Sie können mehrere Parameter in einen einzelnen Befehl aufnehmen:

  • appfw Profil setzen “Parameterbeschreibungen unten auf der Seite.”
  • <name> -SQLInjectionAction (([block] [learn] [log] [stats]) | [none])
  • appfw Profil setzen “Parameterbeschreibungen unten auf der Seite.”
  • <name> -SQLInjectionTransformSpecialChars (**ON** | OFF)
  • appfw Profil setzen “Parameterbeschreibungen unten auf der Seite.”
  • <name> -**SQLInjectionCheckSQLWildChars** (**ON** |**OFF**)
  • appfw Profil setzen “Parameterbeschreibungen unten auf der Seite.”
  • **<name> -**SQLInjectionType** ([**SQLKeyword**] | [**SQLSplChar**] | [**SQLSplCharANDKeyword**] | [**SQLSplCharORKeyword**])
  • appfw Profil setzen “Parameterbeschreibungen unten auf der Seite.”
  • <name> -**SQLInjectionParseComments** ([**checkall**] | [**ansi|nested**] | [**ansinested**])
  • **appfw Profil setzen “Parameterbeschreibungen unten auf der Seite.”
  • <name> -CheckRequestHeaders (ON | OFF) Parameterbeschreibungen unten auf der Seite.
  • <name> - CheckRequestQueryNonHtml (ON | OFF) Parameterbeschreibungen unten auf der Seite.

So konfigurieren Sie eine SQL Injection-Relaxationsregel mit der Befehlszeile

Verwenden Sie den Befehl bind oder unbind, um die Bindung wie folgt hinzuzufügen oder zu löschen:

  • bind appfw profile <name> -SQLInjection <String> [isRegex(REGEX| NOTREGE)] <formActionURL> [-location <location>] [-valueType (Keywor|SpecialString|Wildchar) [<valueExpression>][-isValueRegex (REGEX | NOTREGEX) ]]

  • unbind appfw profile <name> -SQLInjection <String> <formActionURL> [-location <location>] [-valueTyp (Keyword|SpecialString|Wildchar) [<valueExpression>]]

Hinweis:

Sie können die Liste der SQL-Schlüsselwörter aus dem Inhalt der Standardsignaturdatei finden, indem Sie das View-Signaturobjekt anzeigen, das eine Liste der SQL-Schlüsselwörter und SQL-Sonderzeichen enthält.

Verwenden der GUI zum Konfigurieren der SQL Injection Security Check

In der GUI können Sie die SQL Injection-Sicherheitsprüfung im Bereich für das Profil konfigurieren, das Ihrer Anwendung zugeordnet ist.

So konfigurieren oder ändern Sie die SQL Injection-Prüfung mit der GUI

  1. Navigieren Sie zu Application Firewall > Profile, markieren Sie das Zielprofil, und klicken Sie auf Bearbeiten.
  2. Klicken Sie im Bereich Erweiterte Einstellungen auf Sicherheitsprüfungen.

In der Tabelle Sicherheitsprüfung werden die aktuell konfigurierten Aktionseinstellungen für alle Sicherheitsprüfungen angezeigt. Sie haben 2 Optionen für die Konfiguration:

a. Wenn Sie nur Block-, Protokoll-, Statistik- und Lernaktionen für HTML-SQL-Injection aktivieren oder deaktivieren möchten, können Sie Kontrollkästchen in der Tabelle aktivieren oder deaktivieren, klicken Sie auf OK, und klicken Sie dann auf Speichern und Schließen, um den Bereich Sicherheitsprüfung zu schließen.

b. Wenn Sie zusätzliche Optionen für diese Sicherheitsprüfung konfigurieren möchten, doppelklicken Sie auf HTML SQL Injection, oder wählen Sie die Zeile aus und klicken Sie auf Aktionseinstellungen, um die folgenden Optionen anzuzeigen:

SQL-Sonderzeichentransformieren —Transformieren Sie alle SQL-Sonderzeichen in der Anforderung.

NachSQL-Platzhalterzeichen suchen— Betrachten Sie SQL-Platzhalterzeichen in der Nutzlast als Angriffsmuster.

Check Request mit—Typ der zu prüfenden SQL-Injektion (SQLKeyword, SQLSplChar, SQLSplCharANDKeywordoder SQLSplCharORKeyword).

SQL Comments Handling— Art der zu prüfenden Kommentare (Alle Kommentare überprüfen, ANSI, verschachtelte oder ANSI/verschachtelte Kommentare).

Nachdem Sie eine der oben genannten Einstellungen geändert haben, klicken Sie auf OK, um die Änderungen zu speichern und zur Tabelle Sicherheitsprüfungen zurückzukehren. Sie können bei Bedarf weitere Sicherheitsprüfungen konfigurieren. Klicken Sie auf OK, um alle Änderungen zu speichern, die Sie im Abschnitt Sicherheitsüberprüfungen vorgenommen haben, und klicken Sie dann auf Speichern und Schließen, um den Bereich Sicherheitsprüfung zu schließen.

So konfigurieren Sie eine SQL Injection-Relaxationsregel mit der GUI

  • Navigieren Sie zu Anwendungsfirewall > Profile, markieren Sie das Zielprofil, und klicken Sie auf Bearbeiten.
  • Klicken Sie im Bereich Erweiterte Einstellungen auf Relaxationsregeln.
  • Doppelklicken Sie in der Tabelle Relaxationsregeln auf den Eintrag HTML SQL Injection, oder wählen Sie ihn aus, und klicken Sie auf Bearbeiten .
  • Führen Sie im Dialogfeld HTML SQL Injection Relaxation Rules die Vorgänge Hinzufügen, Bearbeiten, Löschen, Aktivieren oder Deaktivieren für Relaxationsregeln aus.

Hinweis:

Wenn Sie eine neue Regel hinzufügen, wird das Feld Wertausdruck nur angezeigt, wenn Sie im Feld Werttyp die Option Schlüsselwort oder SpecialString oder WildChar auswählen.

So verwalten Sie SQL Injection-Relaxationsregeln mithilfe des Visualizers

Um eine konsolidierte Ansicht aller Relaxationsregeln zu erhalten, können Sie die Zeile HTML SQL Injection markieren und auf Visualizer klicken. Der Visualizer für bereitgestellte Relaxationen bietet Ihnen die Möglichkeit, eine neue Regel hinzuzufügen oder eine vorhandene zu bearbeiten. Sie können auch eine Gruppe von Regeln aktivieren oder deaktivieren, indem Sie einen Knoten auswählen und auf die entsprechenden Schaltflächen im Relaxationsvisualizer klicken.

So zeigen Sie die SQL Injection-Muster mit der GUI an oder passen Sie sie an

Sie können die GUI verwenden, um die SQL-Muster anzuzeigen oder anzupassen.

Die Standard-SQL-Muster werden unter Anwendungsfirewall > Signaturen > Standardsignaturen angegeben. Wenn Sie kein Signaturobjekt an Ihr Profil binden, werden die im Standardsignaturobjekt angegebenen SQL-Standardmuster vom Profil für die SQL Injection-Sicherheitsprüfung 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 Standardsignaturobjekts, um ein Benutzerdefiniertes Signaturobjekt zu erstellen. Nehmen Sie Änderungen an den SQL-Mustern im neuen benutzerdefinierten Signaturobjekt vor, und verwenden Sie dieses Signaturobjekt in Ihrem Profil, das den Datenverkehr verarbeitet, für den Sie diese benutzerdefinierten SQL-Muster verwenden möchten.

Weitere Informationen finden Sie unter Signaturen

  1. So zeigen Sie SQL-Standardmuster an:

    a. Navigieren Sie zu Anwendungsfirewall > Signaturen, wählen Sie *Standardsignaturen aus, und klicken Sie auf Bearbeiten.

    Klicken Sie dann auf SQL/XSS-Muster verwalten.

    In der Tabelle SQL/XSS-Pfade verwalten werden folgende vier Zeilen angezeigt, die sich auf SQL Injection beziehen:

    • Injection (not_alphanum, SQL)/Schlüsselwort
    • Injection (not_alphanum, SQL)/specialstring
    • Injection (not_alphanum, SQL)/transformrules/transform
    • Injection (not_alphanum, SQL)/wildchar

    b. Wählen Sie eine Zeile aus, und klicken Sie auf Elemente verwalten, um die entsprechenden SQL-Muster (Schlüsselwörter, spezielle Zeichenfolgen, Transformationsregeln oder Platzhalterzeichen) anzuzeigen, die von der SQL Injection Check der Web App Firewall verwendet werden.

  2. So passen Sie SQL-Muster an: Sie können das benutzerdefinierte Signaturobjekt bearbeiten, um die SQL-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 SQL-Spezialzeichenfolgen ändern.

    a. Navigieren Sie zu Application Firewall > Signaturen, markieren Sie die Zielsignatur Benutzerdefiniert, und klicken Sie auf Bearbeiten. Klicken Sie auf SQL/XSS-Musterverwalten, um die Tabelle SQL/XSS-Pfade verwalten anzuzeigen.

    b. Wählen Sie die SQL Injection-Zielzeile.

    i. Klicken Sie auf Elemente verwalten, um das entsprechende SQL-Element hinzuzufügen, zu bearbeitenoder zu entfernen.

    ii. Klicken Sie auf Entfernen, um die ausgewählte Zeile zu entfernen.

    Warnung

    Sie müssen sehr vorsichtig sein, bevor Sie ein Standard-SQL-Element entfernen oder ändern oder den SQL-Pfad löschen, um die gesamte Zeile zu entfernen. Die Signaturregeln sowie die SQL Inject-Sicherheitsprüfung basieren auf diesen Elementen, um SQL Inject-Angriffe zu erkennen, um Ihre Anwendungen zu schützen. Das Anpassen der SQL-Muster kann Ihre Anwendung anfällig für SQL-Angriffe machen, wenn das erforderliche Muster während der Bearbeitung entfernt wird.

Verwenden der Lernfunktion mit der SQL Injection Check

Wenn die Lernaktion aktiviert ist, überwacht die Web App Firewall Learning Engine den Datenverkehr und lernt die ausgelösten Verletzungen. Sie können diese gelernten Regeln regelmäßig überprüfen. Nach gebührender Überlegung können Sie die gelernte Regel als SQL Injection-Relaxationsregel bereitstellen.

Verbesserung der SQL Injection Learning— In Version 11.0 der Citrix ADC -Software wurde eine Verbesserung des Lernens der Web App Firewall eingeführt. Um eine feinkörnige SQL Injection-Relaxation bereitzustellen, bietet die Web App Firewall ein fein abgestimmtes SQL Injection-Lernen. Die Lern-Engine gibt Empfehlungen bezüglich des beobachteten Werttyps (Schlüsselwort, SpecialString, Wildchar) und des entsprechenden Value-Ausdrucks, der in den Eingabefeldern beobachtet wird. Zusätzlich zur Überprüfung der blockierten Anforderungen, um festzustellen, ob die aktuelle Regel zu restriktiv ist und gelockert werden muss, können Sie die von der Lernmaschine generierten Regeln überprüfen, um zu bestimmen, welche Werttypen und Wertausdrücke Verletzungen auslösen und in Relaxationsregeln behandelt werden müssen.

Wichtig

Die Lern-Engine der Web App Firewall kann nur die ersten 128 Byte des Namens unterscheiden. Wenn ein Formular mehrere Felder mit Namen enthält, die für die ersten 128 Bytes übereinstimmen, kann die Lern-Engine möglicherweise nicht zwischen ihnen unterscheiden. In ähnlicher Weise kann die bereitgestellte Relaxationsregel versehentlich alle Felder von der SQL Injection Inspektion entspannen.

Hinweis Um die SQL-Prüfung im User-Agent-Header zu umgehen, verwenden Sie die folgende Relaxationsregel:

bind appfw profile your_profile_name -SQLInjection User-Agent " .*" -location HEADER

So zeigen Sie gelernte Daten mit der Befehlszeilenschnittstelle an oder verwenden

Geben Sie an der Eingabeaufforderung einen der folgenden Befehle ein:

  • show appfw learningdata <profilename> SQLInjection
  • rm appfw learningdata <profilename> -SQLInjection <string> <formActionURL> [<location>] [<valueType> <valueExpression>]
  • export appfw learningdata <profilename> SQLInjection

So zeigen Sie gelernte Daten mit der GUI an oder verwenden

  1. Navigieren Sie zu Application Firewall > Profile, markieren Sie das Zielprofil, und klicken Sie auf Bearbeiten.

  2. Klicken Sie im Bereich Erweiterte Einstellungen auf Gelernte Regeln . Sie können den Eintrag HTML SQL Injection in der Tabelle Learned Rules auswählen und darauf doppelklicken, um auf die erlernten Regeln zuzugreifen. Sie können die erlernten Regeln bereitstellen oder eine Regel bearbeiten, bevor Sie sie als Relaxationsregel bereitstellen. Um eine Regel zu verwerfen, können Sie sie auswählen und auf die Schaltfläche Überspringen klicken. Sie können jeweils nur eine Regel bearbeiten, aber Sie können mehrere Regeln zum Bereitstellen oder Überspringen auswählen.

Sie haben auch die Möglichkeit, eine zusammengefasste Ansicht der gelernten Entspannungen anzuzeigen, indem Sie den Eintrag HTML SQL Injection in der Tabelle Learned Rules auswählen und auf Visualizer klicken, um eine konsolidierte Ansicht aller gelernten Verletzungen zu erhalten. Der Visualizer macht es sehr einfach, die erlernten Regeln zu verwalten. Es bietet eine umfassende Ansicht der Daten auf einem Bildschirm und erleichtert das Handeln an einer Gruppe von Regeln mit einem Klick. Der größte Vorteil des Visualizers besteht darin, dass reguläre Ausdrücke zur Konsolidierung mehrerer Regeln empfohlen werden. Sie können eine Teilmenge dieser Regeln basierend auf dem Trennzeichen und der Aktions-URL auswählen. Sie können 25, 50 oder 75 Regeln im Visualizer anzeigen, indem Sie die Nummer aus einer Dropdownliste auswählen. Der Visualizer für erlernte Regeln bietet die Möglichkeit, die Regeln zu bearbeiten und als Relaxation bereitzustellen. Oder Sie können die Regeln überspringen, um sie zu ignorieren.

Verwenden der Protokollfunktion mit der SQL Injection Check

Wenn die Protokollaktion aktiviert ist, werden die HTML SQL Injection Sicherheitsüberprüfungsverletzungen im Überwachungsprotokoll als APPFW_SQL-Verletzungen protokolliert. Die Web App Firewall unterstützt sowohl native als auch CEF-Protokollformate. Sie können die Protokolle auch an einen entfernten Syslog-Server senden.

So greifen Sie mit der Befehlszeile auf die Protokollmeldungen zu

Wechseln Sie zur Shell und senden Sie die ns.logs im Ordner /var/log/, um auf die Protokollmeldungen zu den SQL Injection-Verletzungen zuzugreifen:

> Shell

# tail -f /var/log/ns.log | grep APPFW_SQL

Beispiel für eine HTML SQL Injection-Protokollnachricht, wenn die Anforderung transformiert wird

Jun 26 21:08:41 <local0.info> 10.217.31.98 CEF:0|Citrix|Citrix ADC|NS11.0|APPFW|APPFW_SQL|6|src=10.217.253.62 geolocation=Unknown spt=54001 method=GET request=http://aaron.stratum8.net/FFC/login.php?login_name=%27+or&passwd=and+%3B&drinking_pref=on&text_area=select+*+from+%5C+%3B&loginButton=ClickToLogin&as_sfid=AAAAAAXjnGN5gLH-hvhTOpIySEIqES7BjFRs5Mq0fwPp-3ZHDi5yWlRWByj0cVbMyy-Ens2vaaiULKOcUri4OD4kbXWwSY5s7I3QkDsrvIgCYMC9BMvBwY2wbNcSqCwk52lfE0k%3D&as_fid=feeec8758b41740eedeeb6b35b85dfd3d5def30c msg= Special characters seen in fields cn1=74 cn2=762 cs1=pr_ffc cs2=PPE1 cs3=9ztIlf9p1H7p6Xtzn6NMygTv/QM0002 cs4=ALERT cs5=2015 act=transformed

Beispiel für eine HTML SQL Injection-Protokollnachricht, wenn die Post-Anforderung blockiert ist

Jun 26 21:30:34 <local0.info> 10.217.31.98 CEF:0|Citrix|Citrix ADC|NS11.0|APPFW|APPFW_SQL|6|src=10.217.253.62 geolocation=Unknown spt=9459 method=POST request=http://aaron.stratum8.net/FFC/login_post.php msg=SQL Keyword check failed for field text_area="(')" cn1=78 cn2=834 cs1=pr_ffc cs2=PPE1 cs3=eVJMMPtZ2XgylGrHjkx3rZLfBCI0002 cs4=ALERT cs5=2015 act=blocked

Hinweis:

Im Rahmen der Streaming-Änderungen in 10.5.e Build (Enhancement Builds) sowie 11.0 Build weiter verarbeiten wir nun die Eingabedaten in Blöcken. RegEx Pattern-Matching ist jetzt für zusammenhängende Zeichenfolgen auf 4K beschränkt. Mit dieser Änderung können die SQL-Verstoßprotokollmeldungen andere Informationen im Vergleich zu früheren Builds enthalten. Das Schlüsselwort und das Sonderzeichen in der Eingabe könnten durch eine große Anzahl von Bytes getrennt werden. Wir behalten nun den Überblick über die SQL-Schlüsselwörter und spezielle Zeichenfolgen bei der Verarbeitung der Daten, anstatt den gesamten Eingabewert zu puffern. Zusätzlich zum Feldnamen enthält die Protokollnachricht nun das SQL-Schlüsselwort oder das SQL-Sonderzeichen oder sowohl das SQL-Schlüsselwort als auch das SQL-Sonderzeichen, wie durch die konfigurierte Einstellung bestimmt. Der Rest der Eingabe ist nicht mehr in der Protokollmeldung enthalten, wie im folgenden Beispiel gezeigt:

Beispiel:

Wenn die Web App Firewall die SQL-Verletzung erkennt, wird in 10.5 möglicherweise die gesamte Eingabezeichenfolge in die Protokollmeldung aufgenommen, wie unten dargestellt:

SQL Keyword check failed for field text=\"select a name from testbed1;(;)\".*<blocked>

In Erweiterungsbuilds von 10.5.e, die anforderungsseitiges Streaming sowie 11.0 Build unterstützen, protokollieren wir nur den Feldnamen, das Schlüsselwort und das Sonderzeichen (falls zutreffend) in der Protokollmeldung, wie unten gezeigt:

SQL Keyword check failed for field **text="select(;)" <blocked>

Diese Änderung gilt für Anforderungen, die application/x-www-form-urlencoded, multipart/form-data oder text/x-gwt-rpc Inhaltstypen enthalten. Protokollmeldungen, die während der Verarbeitung von JSON- oder XML-Nutzlasten generiert werden, sind von dieser Änderung nicht betroffen.

So greifen Sie mit der GUI auf die Protokollmeldungen zu

Die Citrix GUI enthält ein nützliches Tool (Syslog Viewer) zum Analysieren der Protokollmeldungen. Sie haben mehrere Optionen für den Zugriff auf den Syslog Viewer:

  • Navigieren Sie zu Anwendungsfirewall > Profile, wählen Sie das Zielprofil aus, und klicken Sie auf Sicherheitsprüfungen. Markieren Sie die Zeile HTML SQL Injection, und klicken Sie auf Protokolle . Wenn Sie direkt über die HTML SQL Injection-Prüfung des Profils auf die Protokolle zugreifen, filtert die GUI die Protokollmeldungen aus und zeigt nur die Protokolle an, die diese Sicherheitsüberprüfungsverletzungen betreffen.
  • Sie können auch auf den Syslog Viewer zugreifen, indem Sie zu Citrix ADC > System > Auditing navigieren. Klicken Sie im Abschnitt Überwachungsmeldungen auf den Link Syslog-Meldungen, um den Syslog-Viewer anzuzeigen, der alle Protokollmeldungen einschließlich anderer Protokolle für Sicherheitsüberprüfungen anzeigt. Dies ist nützlich für das Debuggen, wenn während der Anforderungsverarbeitung mehrere Sicherheitsüberprüfungsverletzungen ausgelöst werden können.
  • Navigieren Sie zu Anwendungsfirewall > Richtlinien > Überwachung. Klicken Sie im Abschnitt Überwachungsmeldungen auf den Link Syslog-Meldungen, um den Syslog-Viewer anzuzeigen, der alle Protokollmeldungen einschließlich anderer Protokolle für Sicherheitsüberprüfungen anzeigt.

Der HTML-basierte Syslog Viewer bietet verschiedene Filteroptionen, um nur die Protokollmeldungen auszuwählen, die für Sie von Interesse sind. Um Protokollmeldungen für die HTML SQL Injection Check auszuwählen, filtern Sie, indem Sie APPFW in den Dropdown-Optionen für Modul auswählen. Die Liste Ereignistyp bietet eine Reihe von Optionen, um Ihre Auswahl weiter zu verfeinern. Wenn Sie beispielsweise das Kontrollkästchen APPFW_SQL aktivieren und auf die Schaltfläche Übernehmen klicken, werden im Syslog-Viewer nur Protokollmeldungen angezeigt, die sich auf die Sicherheitsüberprüfungsverletzungen von SQL Injection beziehen.

Wenn Sie den Cursor in der Zeile für eine bestimmte Protokollnachricht platzieren, werden unter der Protokollmeldung mehrere Optionen angezeigt, z. B. Modul, Ereignistyp, Ereignis-ID, Client-IPusw. Sie können eine dieser Optionen auswählen, um die entsprechenden Informationen in der Protokollmeldung hervorzuheben.

Klicken Sie zum Bereitstellen der Funktionalität ist nur in der grafischen Benutzeroberfläche verfügbar. Sie können den Syslog-Viewer verwenden, um nicht nur die Protokolle anzuzeigen, sondern auch HTML SQL Injection-Relaxationsregeln basierend auf den Protokollmeldungen für die Sicherheitsüberprüfungsverletzungen der Web App Firewall bereitzustellen. Die Protokollmeldungen müssen für diesen Vorgang im CEF-Protokollformat vorliegen. Klicken Sie hier, um die Funktionalität bereitzustellen, ist nur für Protokollmeldungen verfügbar, die durch die Aktion Blockieren (oder nicht blockieren) generiert werden. Sie können keine Relaxationsregel für eine Protokollmeldung über den Transformationsvorgang bereitstellen.

Um eine Relaxationsregel aus dem Syslog-Viewer bereitzustellen, wählen Sie die Protokollmeldung aus. In der oberen rechten Ecke des Felds Syslog-Viewer der ausgewählten Zeile wird ein Kontrollkästchen angezeigt. Aktivieren Sie das Kontrollkästchen, und wählen Sie dann eine Option aus der Liste Aktion aus, um die Relaxationsregel bereitzustellen. Bearbeiten und Bereitstellen, Bereitstellen und Alle bereitstellen sind als Aktionsoptionen verfügbar.

Die SQL Injection-Regeln, die mit der Option Zum Bereitstellen klicken bereitgestellt werden, enthalten nicht die Empfehlungen für die Feinkorn-Entspannung.

So verwenden Sie die Click to Deployment-Funktionalität in der GUI:

  1. Wählen Sie im Syslog-Viewer in den Moduloptionen die Option Anwendungsfirewall aus.
  2. Wählen Sie APP_SQL als Ereignistyp aus, um entsprechende Protokollmeldungen zu filtern.
  3. Aktivieren Sie das Kontrollkästchen, um die Regel zu identifizieren, die bereitgestellt werden soll.
  4. Verwenden Sie die Dropdownliste Aktion mit Optionen, um die Relaxationsregel bereitzustellen.
  5. Stellen Sie sicher, dass die Regel im entsprechenden Abschnitt zur Relaxationsregel angezeigt wird.

Statistiken für die SQL Injection-Verletzungen

Wenn die Aktion Statistik aktiviert ist, wird der Zähler für die SQL Injection-Prüfung erhöht, wenn die Web App Firewall eine Aktion für diese Sicherheitsprüfung ausführt. Die Statistiken werden für Rate und Gesamtanzahl für Traffic, Verletzungen und Protokolle gesammelt. Die Größe eines Inkrements des Protokollzählers kann abhängig von den konfigurierten Einstellungen variieren. Wenn beispielsweise die Blockaktion aktiviert ist, erhöht die Anforderung für eine Seite, die 3 SQL-Injection-Verletzungen enthält, den Statistikzähler um eins, da die Seite blockiert wird, sobald die erste Verletzung erkannt wird. Wenn der Block jedoch deaktiviert ist, erhöht die Verarbeitung derselben Anforderung den Statistikindikator für Verletzungen und Protokolle um drei, da jede Verletzung eine separate Protokollmeldung generiert.

So zeigen Sie SQL Injection-Prüfstatistiken mit der Befehlszeile an:

Geben Sie an der Eingabeaufforderung Folgendes ein:

sh appfw Statistiken

Verwenden Sie den folgenden Befehl, um Statistiken für ein bestimmtes Profil anzuzeigen:

> stat appfw profile <profile name>

So zeigen Sie HTML-SQL-Injection-Statistiken mit der GUI an

  1. Navigieren Sie zu System > Sicherheit > Anwendungsfirewall.
  2. Greifen Sie im rechten Fensterausschnitt auf die Statistikverknüpfung zu.
  3. Verwenden Sie die Bildlaufleiste, um die Statistiken über HTML SQL Injection-Verletzungen und -Protokolle anzuzeigen. Die Statistiktabelle enthält Echtzeitdaten und wird alle 7 Sekunden aktualisiert.

Highlights

Beachten Sie die folgenden Punkte zur SQL Injection-Prüfung:

  • Integrierte Unterstützung für SQL Injection Protection— Die Citrix Web App Firewall schützt vor SQL Injection, indem eine Kombination von SQL-Schlüsselwörtern und Sonderzeichen in den Formularparametern überwacht wird. Alle SQL-Schlüsselwörter, Sonderzeichen, Platzhalterzeichen und Standardtransformationsregeln werden in der Datei /netscaler/default_custom_settings.xml angegeben.
  • Anpassung: Sie können die Standardschlüsselwörter, Sonderzeichen, Platzhalterzeichen und Transformationsregeln ändern, um die SQL-Sicherheitsprüfung an die spezifischen Anforderungen Ihrer Anwendung anzupassen. Erstellen Sie eine Kopie des Standardsignaturobjekts, ändern Sie vorhandene Einträge oder fügen Sie neue hinzu. Binden Sie dieses Signaturobjekt an Ihr Profil, um die benutzerdefinierte Konfiguration zu nutzen.
  • Hybrides Sicherheitsmodell—Sowohl Signaturen als auch tiefer Sicherheitsschutz verwenden die SQL/XSS-Muster, die im Signaturobjekt angegeben sind, das an das Profil gebunden ist. Wenn kein Signaturobjekt an das Profil gebunden ist, werden die SQL/XSS-Muster verwendet, die im Standardsignaturobjekt vorhanden sind.
  • Transform—Beachten Sie Folgendes zum Transformationsvorgang:
    • Der Transformationsvorgang funktioniert unabhängig von den anderen SQL Injection-Aktionseinstellungen. Wenn Transformation aktiviert ist und Block, Log, Stats und Lernen deaktiviert sind, werden SQL-Sonderzeichen transformiert.
    • Wenn SQL-Transformation aktiviert ist, werden Benutzeranforderungen an die Backend-Server gesendet, nachdem die SQL-Sonderzeichen in den Nicht-Blockmodus umgewandelt wurden. Wenn die Blockaktion aktiviert ist, hat sie Vorrang vor der Transformationsaktion. Wenn der Einspritztyp als SQL-Sonderzeichen angegeben ist und Block aktiviert ist, wird die Anforderung trotz der Transformationsaktion blockiert.
  • Feinkörnige Entspannung und Lernen— Optimieren Sie die Relaxationsregel, um eine Teilmenge von SQL-Elementen von der Sicherheitskontrolle zu entspannen, aber den Rest zu erkennen. Die Lern-Engine empfiehlt einen bestimmten Werttyp und Wertausdrücke basierend auf den beobachteten Daten.
  • Klicken Sie auf Bereitstellen— Wählen Sie eine oder mehrere SQL-Verstoßprotokollmeldungen im Syslog-Viewer aus, und stellen Sie sie als Relaxationsregeln bereit.