Detaillierte Erklärung der Whitelist-Regeln von nginx-naxsi

Detaillierte Erklärung der Whitelist-Regeln von nginx-naxsi

Syntax der Whitelist-Regel:

Grundregel wl:ID [negativ] [mz:[$URL:Ziel-URL]|[Übereinstimmungszone]|[$ARGS_VAR:Varname]|[$BODY_VARS:Varname]|[$HEADERS_VAR:Varname]|[NAME]]

wl:ID (Whitelist-ID) Welche Abfangregeln werden in die Whitelist aufgenommen?
w:0 Alle Abfangregeln zur Whitelist hinzufügen
w:42 Fügen Sie die Abfangregel mit der ID 42 zur Whitelist hinzu
w:42,41,43 Abfangregeln mit den IDs 42, 41 und 43 zur Whitelist hinzufügen
w:-42 Fügen Sie alle Abfangregeln zur Whitelist hinzu, außer der Abfangregel mit der ID 42

mz:(Übereinstimmungszonen)

ARGS Der gesamte GET-Parameter, beispielsweise: foo=bar&in=%20
$ARGS_VAR Der Parametername des GET-Parameters, z. B. foo und in in foo=bar&in=%20
$ARGS_VAR_X Parametername des GET-Parameters, der dem regulären Ausdruck entspricht
Überschriften Der gesamte HTTP-Protokollheader
$HEADERS_VAR Name des HTTP-Headers
$HEADERS_VAR_X Der Name des HTTP-Protokollheaders, der dem regulären Ausdruck entspricht
KÖRPER Der gesamte Parameterinhalt von POST
$BODY_VAR POST-Parametername
$BODY_VAR_X Parametername des POST-Parameters, der mit dem regulären Ausdruck übereinstimmt
URL URL (vorher?)
URL_X Normale passende URL (vorher?)
FILE_EXT Dateiname (der hochgeladene Dateiname, wenn POST zum Hochladen einer Datei verwendet wird)

Beispiel für eine Whitelist-Konfiguration

Nehmen wir Regel Nr. 1000 als Beispiel: Regel Nr. 1000 ist eine Regel, die SQL-Schlüsselwörter wie „Auswählen“, „Aktualisieren“, „Löschen“ und „Einfügen“ filtert.

Regel veranschaulichen
Grundregel w:1000; Deaktivieren Sie die Abfangregel Nr. 1000 in dieser Unterregel vollständig. Da keine Region angegeben ist, werden alle zur Whitelist hinzugefügt.
Grundregel w:1000 "mz:$ARGS_VAR:foo";

Deaktivieren Sie die Abfangregel Nr. 1000 für alle GET-Parameterwerte mit dem Namen foo

Anfragen wie http://mike.hi-linux.com/?foo=select * von der Demo werden nicht gefiltert.

Grundregel wl:1000 "mz:$URL:/bar|ARGS";

Deaktivieren Sie die Abfangregel Nr. 1000 für Parameter in GET-Anfragen mit der URL /bar

Die folgenden ähnlichen Anfragen werden nicht gefiltert:

http://mike.hi-linux.com/bar?my=select * aus Demohttp://mike.hi-linux.com/bar?from=weibo

Grundregel w:1000 "mz:ARGS|NAME";

Deaktivieren Sie die Abfangregel Nr. 1000 für alle Parameternamen (nur den Namen, nicht den Parameterwert) in allen GET-Anfragen.

Die folgenden Anfragen werden nicht gefiltert:

http://mike.hi-linux.com/bar?from=weibo

Die folgenden Anfragen werden gefiltert:

http://mike.hi-linux.com/bar?foo=select

Weil „Select“ ein Parameterwert ist und nicht auf der Whitelist steht.

Grundregel wl:0 "mz:$URL_X:^/upload/(.*).(.*)$|URL";

Deaktivieren Sie alle Abfangregeln für URLs, die der regulären Regel ^/upload/(.*).(.*)$ entsprechen, in allen Anfragen.

Anfragen wie http://mike.hi-linux.com/upload/select.db werden nicht gefiltert (sie hätten die Abfangregel Nr. 1000 ausgelöst).

Whitelist-Regeln für den tatsächlichen Kampf# vi naxsi_BasicRule.conf
Grundregel w:1010,1011 "mz:$ARGS_VAR:rd";
Grundregel w:1015,1315 "mz:$HEADERS_VAR:cookie";

Die oben aufgeführte ausführliche Erklärung der Whitelist-Regeln von nginx-naxsi ist der gesamte Inhalt, den der Herausgeber mit Ihnen teilt. Ich hoffe, dass er Ihnen als Referenz dienen kann. Ich hoffe auch, dass Sie 123WORDPRESS.COM unterstützen werden.

Das könnte Sie auch interessieren:
  • Beispiel für das Einrichten einer Whitelist in Nginx mithilfe des Geomoduls
  • So legen Sie eine Verzeichnis-Whitelist und eine IP-Whitelist in Nginx fest
  • So fügen Sie Nginx dynamisch eine Zugriffs-Whitelist hinzu
  • Konfigurieren Sie eine Firewall mit Blacklist- oder Whitelist-Funktion für den Nginx-Server

<<:  Bootstrap realisiert den Karusselleffekt

>>:  Grafisches Tutorial zur Installation und Konfiguration der grünen Version von MySQL 5.7.21 winx64

Artikel empfehlen

Vue implementiert nahtloses Scrollen von Listen

In diesem Artikelbeispiel wird der spezifische Co...

Implementierungsfallcodeanalyse für dynamische und statische Trennung von Nginx

Trennung von statischer und dynamischer Dynamisch...

Vue implementiert die Funktionen Vergrößern, Verkleinern und Ziehen

In diesem Artikelbeispiel wird der spezifische Co...

Die Organisation W3C gibt Stilempfehlungen für HTML4

Dies ist die Stilempfehlung der W3C-Organisation f...

So stellen Sie ein SpringBoot-Projekt mit Docker bereit

Die Entwicklung der Docker-Technologie bietet ein...

Zusammenfassung des Wissens zu MySQL-Sperren

Sperren in MySQL Sperren sind ein Mittel, um Ress...

MySQL 8.0.11 Installationstutorial mit Bildern und Text

Es gibt viele Tutorials im Internet und sie sind ...

Ideen und Methoden zur inkrementellen Sicherung einer MySQL-Datenbank

Um eine inkrementelle Sicherung der MySQL-Datenba...

Drei Möglichkeiten, um zu verhindern, dass MySQL doppelte Daten einfügt

Erstellen einer neuen Tabelle CREATE TABLE `Perso...

Lokale MySQL-Installation und Problemlösung

Vorwort Dieser Artikel ist ziemlich ausführlich u...