Support-Portal
keyboard_arrow_right keyboard_arrow_left
Schlüsselwort
Wert
Nutzung
srcaddr/dstaddr
<ipaddress>;
Die Quell-/Ziel-IP-Adresse
srcport/dstport
<Number>;
Der Quell-/Ziel-Port
content
"<content string>"; eine Zeichenfolge in doppelten Anführungszeichen.
In einer Regel können mehrere Inhalte stehen. Der Wert kann aus Text und Binärdaten bestehen. Binärdaten stehen im Allgemeinen zwischen senkrechten Strichen (|).
nocase kann nur mit einem content-Schlüsselwort verwendet werden
NULL
Groß-/Kleinschreibung im content-Wert wird ignoriert
rawbytes kann nur mit einem content-Schlüsselwort verwendet werden
NULL
Dekodierung wird ignoriert. Siehe Raw-Paketdaten
depth kann nur mit einem content-Schlüsselwort verwendet werden
<number>; z. B. depth:5;
Sucht nach Inhalten innerhalb der angegebenen Anzahl der Bytes der Payload. Wenn der Wert des depth-Schlüsselworts kleiner ist als die Länge des Werts des content-Schlüsselworts, wird die Signatur nicht gefunden
offset kann nur mit einem content-Schlüsselwort verwendet werden
<number>; z. B. content:”cgi-bin/phf”;offset:4;depth:20;
Sucht nach Inhalten nach der angegebenen Anzahl der Bytes der Nutzlast. Dieser Tag ist ein absoluter Wert in der Nutzlast. Dem offset-Tag kann ein depth-Tag folgen, um so die Suche nach einem Match zu beenden, sobald der im depth-Tag aufgeführte Wert erreicht wurde. Ist kein Wert für „depth“ angegeben, wird bis zum Ende der Nutzlast weiter nach einem Match gesucht.
distance kann nur mit einem content-Schlüsselwort verwendet werden
<number>; zum Beispiel content :"ABC";content:"DEF"; distance:1;
Sucht nach dem Inhalt der angegebenen Anzahl der Bytes relativ zum Ende der vorherigen gefundenen Inhalte. Nach dem distance-Tag kann ein within-Tag folgen. Wenn kein Wert für den within-Tag angegeben ist, wird bis zum Ende der Nutzlast nach einem Match gesucht.
within kann nur mit einem content-Schlüsselwort verwendet werden
<Number>; zum Beispiel content:"ABC";content:"DEF";within:10;
Sucht nach Inhalten innerhalb der angegebenen Anzahl der Bytes der Nutzlast. Gemeinsam mit dem distance-Tag verwenden.
uricontent
uricontent:<content string>; zum Beispiel uricontent:"%3F";
Es wird nach dem normalisierten Request-URI-Feld gesucht. Binärdaten können als URI-Wert definiert werden.
isdataat
<value> [,relative]; zum Beispiel content:"PASS";isdataat:50,relative;
Prüft, ob die Nutzlast an einer bestimmten Stelle über Daten verfügt. Optional wird nach Daten ab dem Ende des vorherigen Inhalt-Match gesucht.
pcre
pcre:[!]"(/<regex>/|m/<regex>/)[ismxAEGRUB]"; zum Beispiel pcre:"/BLAH/i";
Das pcre Schlüsselwort lässt es zu, dass Regeln mit perl-kompatiblen regulären Ausdrücken geschrieben werden.
i - schreibungsunabhängig
s - Newlines im dot Metazeichen einschließen
m - Standardmäßig wird die Zeichenkette als eine große Zeile mit Zeichen behandelt; ^ und $ entsprechen dem Beginn und Ende der Zeichenkette. Wenn m gesetzt ist, entsprechen ^ und $ sofort nach oder vor jeder Newline im Buffer, ebenso wie am Anfang und am Ende des Buffers.
x - Leerzeichen-Datenzeichen im Pattern werden ignoriert, außer wenn es ein Maskierungszeichen ist oder innerhalb einer Zeichenklasse.
A - Das Pattern muss nur dem Beginn des Buffers entsprechen (das gleiche wie ^)
E - $ entspricht nur dem Ende der Zeichenkette. Ohne E entspricht $ auch direkt vor dem letzten Zeichen, wenn es eine Newline ist (aber nicht vor anderen Newlines)
G - Kehrt die „Gierigkeit“ der Gewichtungen um, sodass sie nicht standardmäßig gierig sind, sondern erst wenn ein „?“ folgt.
R - Sucht nach Übereinstimmungen am Ende des letzten übereinstimmenden Patterns (ähnlich wie distance:0;) U - Sucht nach dekodierten URI-Puffern (ähnlich wie uri)
B - Dekodierte Puffer werden nicht verwendet (ähnlich wie raw keyword).
byte_test
<bytes to convert>, [!]<operator>, <value>, <offset> [,relative] [,<endian>] [,<number type>, string]; oct,dec,hex nur mit String verwendet; zum Beispiel msg:"AMD procedure 7 plog overflow"; content:"|00 04 93 F3|";content:"|00 00 00 07|"; distance:4.within:4;byte_test:4,>,1000,20,relative;
Prüft ein Byte-Feld auf einen bestimmten Wert (mit Operator). Fähig, binäre Werte zu testen und representative Byte-Strings in ihr binäres Gegenüber zu konvertieren und zu testen. bytes_to_convert - Die Anzahl an Bytes, die aus dem Paket aufgenommen werden - Mit dieser Operation wird der Wert (<,>,=,!,&) geprüft
value - Der Wert, mit welchem der konvertierte Wert verglichen wird
offset - Die Anzahl der Bytes, nach welcher die Nutzlast die Verarbeitung startet
relative - Verwendung eines offset ab dem letzten Pattern-Match
big - Verarbeitung der Daten als Big
Endian (Standard) little - Verarbeitung der Daten als Little Endian
string - Die Daten im Paket werden im String-Format gespeichert
hex - Die konvertierten String-Daten werden hexadezimal dargestellt
dec - Die konvertierten String-Daten werden dezimal dargestellt
oct - Die konvertierten String-Daten werden oktal dargestellt
byte_jump
<bytes_to_convert>, <offset> [,relative] [,multiplier <multiplier value>] [,big] [,little][,string] [,hex] [,dec] [,oct] [,align] [,from_beginning]; oct,dec,hex wird nur mit String verwendet; zum Beispiel content:"|00 00 00 01|";distance:4;within:4;byte_jump:4,12,relative,align
bytes_to_convert - Die Anzahl an Bytes, die aus dem Paket aufgenommen werden multiplier value - Multipliziert die Anzahl der errechneten Bytes mit dem Wert und springt die Anzahl an Bytes vor
operator - Mit dieser Operation wird der Wert (<,>,=,!,&) geprüft
value - Der Wert, mit welchem der konvertierte Wert verglichen wird
offset - Die Anzahl der Bytes, nach welcher die Nutzlast die Verarbeitung startet
relative - Verwendung eines offset ab dem letzten Pattern-Match
big - Verarbeitung der Daten als Big
Endian (Standard) little - Verarbeitung der Daten als Little Endian
string - Die Daten im Paket werden im String-Format gespeichert
hex - Die konvertierten String-Daten werden hexadezimal dargestellt
dec - Die konvertierten String-Daten werden dezimal dargestellt
oct - Die konvertierten String-Daten werden oktal dargestellt
align - Die konvertierten Bytes werden auf das nächste 32-Bit Format aufgerundet
from_beginning - Springt zum Anfang des Pakets anstelle von der aktuellen Position aus.
ttl
<number>;><number>;<<number>;
Vergleicht den Wert von IP Time-to-Live mit dem angegebenen Wert
tos
<number>;
Vergleicht das Feld IP TOS mit dem angegebenen Wert
id
<number>;
Vergleicht das Feld IP ID mit dem angegebenen Wert
ipopts
{rr | eol | nop | ts | sec | lsrr |ssrr | satid | any}
rr - Prüft, ob die Option IP RR (record route) vorhanden ist
eol - Prüft, ob die Option IP EOL (end of list) vorhanden ist
nop - Prüft, ob die Option IP NOP (no op) vorhanden ist
ts - Prüft, ob die Option IP TS (time stamp) vorhanden ist
sec - Prüft, ob die Option IP SEC (IP security) vorhanden ist
lsrr - Prüft, ob die Option IP LSRR (loose source routing) vorhanden ist
ssrr - Prüft, ob die Option IP SSRR (strict source routing) vorhanden ist
satid - Prüft, ob die Option IP SATID (stream identifier) vorhanden ist
any - Prüft, ob die Option IP any vorhanden ist
fragoffset
<number>;
Vergleicht das offset-Feld des IP-Fragments mit dem Dezimalwert
fragbits
[+*!]<[MDR]>;
Überprüft, ob IP-Fragmentierung und reservierte Bits im IP-Header vorhanden sind. M - Das More-Fragments-Bit
D - Das Don't-Fragment-Bit
R - Das Reserved-Bit
+ - Die angegebenen Bits suchen, plus jegliche weiteren
* - Match, wenn eines der angegebenen Bits gefunden wird
! - Match, wenn keine Bits angegeben sind
dsize
[<|>] <number>[ <> number]; zum Beispiel Größe:300<>400;
Testet die Nutzlast des Pakets. Wenn data_size festgelegt ist, wird das Zusammenfügen des Pakets automatisch abgeschaltet, sodass eine Signatur mit Werten für data_size und only_stream als falsch betrachtet wird. dsize scheitert an neu gebauten Datenpaketen, unabhängig von der Größe der Nutzlast
Flags
[!|*|+]<FSRPAU120>[,<FSRPAU120>]; zum Beispiel Flags:SF,12
TCP-Flags, mit welchen ein Paket abgeglichen werden soll.
S - Sucht nach dem SYN-Flag
A - Sucht nach dem ACK-Flag
F - Sucht nach dem FIN-Flag
R - Sucht nach dem RST-Flag
U - Sucht nach dem URG-Flag
P - Sucht nach dem PSH-Flag
1 - Sucht nach dem reservierten Bit
1 2 - Sucht nach dem reservierten Bit
2 0 - Sucht nach Bits ohne TCP-Flags
+ - Sucht nach den angegebenen Bits, plus weiteren
* - Match, wenn eines der angegebenen Bits gefunden wird
! - Match, wenn keine Bits angegeben sind
flow
to_client|to_server|from_client| from_server ];established;bi_direction;[no_stream|only_stream];
Nur TCP: Der Wert für to_server entspricht dem Wert für from_client. Der Wert für to_client entspricht dem Wert für from_server. Das Tag bi_direction führt die Suche nach passenden Signaturen in beiden Richtungen durch. Wenn zum Beispiel eine Signatur mit „--dst_port 80“ vorliegt und bi_direction ist gesetzt, prüft die Signatur den Datenverkehr von und an Port 80.
seq
<number>;
Auf die festgelegte TCP-Sequenznummer prüfen
ack
<number>;
Auf die festgelegte TCP-Achknowledge-Nummer prüfen
window
<number>;
Auf die festgelegte TCP-Fenstergröße prüfen
itype
[<|>]<number>[<>number];
Gibt den ICMP-Typ für die Suche an
icode
[<|>]<number>[<>number];
Gibt den ICMP-Code für die Suche an
icmp_id
<number>;
Sucht nach dem angegebenen ICMP-ID-Wert
icmp_seq
<number>;
Sucht nach dem angegebenen ICMP-Sequenzwert
rpc
<application number>,[<version number>|*],[<procedure number>|*>;
Sucht nach den RPC-Anwendungs-, Versions- und Prozessnummern in SUNRPCCALL-Anfragen. Der Platzhalter * kann für Versions- und Prozessnummern verwendet werden
ip_proto
<number>;[!]<number>;><number>;<<number>;
Sucht nach der IP-Protokollkopfzeile
samip
NULL
Die Quelle und das Ziel haben dieselbe IP-Adresse

Mit der Nutzung dieser Website erklären Sie sich damit einverstanden, dass wir Cookies verwenden. Weitere Informationen finden Sie in unseren Datenschutzvereinbarungen