ueba3ba
Goto Top

Regex - Leerzeichen entfernen

Hallo und frohes neues Jahr.

Ich arbeite mich eben in Regex und Wazuh ein.

Meine Firewall sendet via Syslog an Wazu. Funktioniert.
In Wazuh kommt alles an. Decoder und Rule erstellt. Funktioniert.

Allerdings habe ich ein Leerzeichen in "srcip" das ich gerne entfernen möchte.

Hier mal eine Log Nachricht:

2024-01-04T14:45:50+01:00 utm-01.local ulogd 7303 - - DROP: IPGeoBlockingSrc  IN=wan0 OUT= MAC=45:00:00:28:a7:1e:00:00:39:06:db:3a:71:a4:64:1c:5c:74:cd:42:0f:79 SRC=113.164.100.28 DST=92.116.205.66 LEN=40 TOS=00 PREC=0x00 TTL=57 ID=42782 PROTO=TCP SPT=3961 DPT=37215 SEQ=1551158594 ACK=0 WINDOW=1904 SYN URGP

Und hier der Decoder:

<decoder name="securepoint-firewall">  
    <prematch>DROP: IPGeoBlockingSrc</prematch> 
     <type>syslog</type>
</decoder>

<decoder name="securepoint-firewall-filter">  
    <parent>securepoint-firewall</parent>
    <regex>SRC=(\.*)DST=</regex>
    <order>srcip</order>
</decoder>

Ich verstehe diesen regex inetwa so. Zeige alles was sich zwischen SRC= und DST= befindet.
Nur leider befindet sich hinter SRC=113.164.100.28 ein Leerzeichen.
Dieses ist der Grund weshalb ich keine GeoIP Daten in Wazuh angezeigt bekomme.

Hier die decodierte Nachricht:
**Messages:
	WARNING: (7003): '63d13aaa' token expires  
	INFO: (7202): Session initialized with token '18c39536'  

**Phase 1: Completed pre-decoding.
	full event: '2024-01-04T14:45:50+01:00 utm-01.local ulogd 7303 - - DROP: IPGeoBlockingSrc  IN=wan0 OUT= MAC=45:00:00:28:a7:1e:00:00:39:06:db:3a:71:a4:64:1c:5c:74:cd:42:0f:79 SRC=113.164.100.28 DST=92.116.205.66 LEN=40 TOS=00 PREC=0x00 TTL=57 ID=42782 PROTO=TCP SPT=3961 DPT=37215 SEQ=1551158594 ACK=0 WINDOW=1904 SYN URGP'  
	timestamp: '2024-01-04T14:45:50+01:00'  

**Phase 2: Completed decoding.
	name: 'securepoint-firewall'  
	srcip: '113.164.100.28 ' **Hier ist das Leerzeichen zu erkennen**  

**Phase 3: Completed filtering (rules).
	id: '100002'  
	level: '5'  
	description: 'IPGeoBlockingSrc'  
	groups: '["local","syslog","sshd"]'  
	firedtimes: '1'  
	mail: 'false'  
**Alert to be generated.

Ich blicke mit regex eigentlich noch nicht durch, weshalb ich hier um eure Hilfe bitten möchte.

Hat jemand Lust und Laune mir dabei zu helfen das Leerzeichen zu entfernen??

Danke sehr.

Content-ID: 12608084687

Url: https://administrator.de/contentid/12608084687

Ausgedruckt am: 21.11.2024 um 18:11 Uhr

erikro
Lösung erikro 04.01.2024 um 15:20:22 Uhr
Goto Top
Moin,

SRC=(\.*)\sDST=

sollte funktionieren. Eventuell zwei Backslashes vor dem s, da vor dem Punkt auch einer ist.

Zum Entwickeln und Testen von regexen:
https://regex101.com/

hth

Erik
Ueba3ba
Ueba3ba 04.01.2024 um 15:29:36 Uhr
Goto Top
Sau stark, hat funktioniert. Vielen lieben Dank, auch für den sehr geilen Link.

Danke
erikro
erikro 04.01.2024 um 15:35:37 Uhr
Goto Top
Zitat von @Ueba3ba:

Sau stark, hat funktioniert. Vielen lieben Dank, auch für den sehr geilen Link.

Danke

Gerne face-smile