Hello,

 

   par exemple dans le cadre de la mise en place d’un SIEM, quand tu redirige des dizaines de flux syslog vers une unique machine dans le but de les traiter, pour faire de la simple remontée d’alertes, du thread intelligence, ou encore pour faire de la corrélation de logs… Il te faut des regex assez pointues sinon soit tu catch rien, soit tu catch n’importe quoi ou trop de choses (et donc tu pourris ta DB).

 

Ce que je veux catcher (proxy McAfee) :

 

Feb 10 09:20:27 Mcxxx mwg: [10/Feb/2015:09:20:10 +0100] "Mcxxx" "Florian" 10.1.1.1 188.40.1.1 "secure.eicar.org" 403 "-" 374 461 "GET https://secure.eicar.org/eicar_com.zip HTTP/1.1" "Information Security" "Minimal Risk" 7 "Gateway Anti-Malware/Block If Virus was Found" 80 "Malware found" true "McAfeeGW: EICAR test file" false "-" "-" "http://www.eicar.org/85-0-Download.html" "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:35.0) Gecko/20100101 Firefox/35.0"

 

 

Ma regex :

 

.*(?P<date>\w{3}\s+\d{1,2}\s+\d{2}\:\d{2}\:\d{2})\s.*\s\"(?P<username>.*)\"\s+(?P<src_ip>[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3})\s+(?P<dst_ip>[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3})\s+\"(?P<dst_site>.*)\"\s\d{3}\s\".*\"\s\d{1,5}\s\d{1,4}\s\"(?P<req_http>[A-Z]+\s+.*?)\s[A-Z]+.*Malware\s+found\".*?\"(?P<virus_desc>.*?)\"\s.*?\s\".*?\"\s+\".*?\"\s+\"(?P<http_ref>.*?)\"\s+\"(?P<browser>.*?)\".*

 

Ma bible est https://www.regex101.com/, tu peux donc tester ma regex et voir ce que je récupère proprement J

 

Florian.

 

De : FRsAG [mailto:frsag-bounces@frsag.org] De la part de Mihamina RAKOTOMANDIMBY
Envoyé : mercredi 11 février 2015 06:29
À : frsag@frsag.org
Objet : [FRsAG] cherche cas usage des regex dans la vraie vie

 

Bonjour,

Je dois faire un mini exposé sur les regex.
Ca m'interesserait de pouvoir donner des exemples sur les recherches dans les logs.
Je cherche donc des cas d'usage, dans lesquels il faut utiliser des regex pour trouver ce qu'on veut.
Les truc du genre " $grep Error access.log" me semblent inutile pour ce coup là :-) du fait de la trop facilité du pattern.

Le public: des sysadmins juniors *et* des devs web à qui on souhaite introduire à la recherche des erreurs dans les fichiers d'erreur (Apache, Tomcat, MySQL, PGSQL, Postfix, Exim,...)

Auriez-vous des cas d'usage (bonus: avec la résolution et un sample)?

Merci bien.