sub-zero-1
Goto Top

syslog-ng Filter erzeugt Schleife

Hallo!

Im Zuge meiner Abschlussarbeit, bin ich dabei ein IDS mittels Snort zu installieren. Es läuft alles Prima. Viele Probleme wurden gelöst...bis auf eins.

Snort loggt alle Alarme im unified-Format auf die Platte. Dort werden diese von 2 unterschiedlichen Barnyard Prozessen entgegengenommen und einmal in eine MySQL Datenbank geschrieben und einmal in Syslog Meldungen umgewandelt. Dies funktioniert wunderbar!
Nun will ich Priorität 1 Alarme mittels einem Filter in syslog-ng per mail an den zuständigen Admin schicken. Doch mein Filter erzeugt eines Schleife und bombardiert die mailq, obwohl ich mittels Nessus nur ca. 3-4 Priorität 1 Alarme auslöse, die ich auch alle mittels BASE sehe! D.h. selbst wenn der Nessus Scan vorbei ist, wird die mailq trotzdem durch syslog-ng zubombardiert. Irgendwie entsteht eine Schleife...?

Ich habe nun die syslog-ng.conf etwas gekürzt und trotzdem sehe ich den Fehler nicht.

Sensor1:/usr/local/bin# cat /etc/syslog-ng/syslog-ng.conf

source src {unix-stream("/dev/log"); internal();};
destination email{program("/usr/local/bin/alert_mail.sh");};
filter high {match("\[Priority: 1\]");};
log {source(src);filter(high); destination(email);};

Ich habs auch schon mit folgendem Filter versucht:
#Quelle
source snort_auth {
internal();
unix-stream("/dev/log");
};
#Ziel = alert_mail
destination df_e_mail {program ("/usr/local/bin/alert_mail.sh "); };
  1. Filter für Priorität 1 Alarme
filter f_snort_prioritaet1 { match("[Priority: 1]"); };

  1. Alarmmeldungen verschicken
log {source(snort_auth); filter(f_snort_prioritaet1); destination(df_e_mail);};

Falls es hilft, alert_mail.sh:

Sensor1:/usr/local/bin# cat /usr/local/bin/alert_mail.sh
#!/bin/sh

cat << EOF | mail -s "High Priority Snort Alert" Sub-Zero@xxx.de
Alarm der Prioritaet 1
EOF


Die erste Meldung wird korrekt ausgeführt. Mache ich ein ps -ef so sehe ich das ausgeführte skript. Führe ich ne Sekunden später ps -ef aus, so ist das Skript nicht mehr da und 1 Sekunde später läuft es wieder. top zeigt diesen Prozess als Zombie an. Es entsteht so eine Schleife, die ich nur anhalten kann wenn ich syslog-ng stoppe. Starte ich syslog-ng wieder so tut er nichts, bis er wieder neue Alarme mit Priorität 1 erhält --> neue Schleife, obwohl es nur 4 Meldungen der Priorität 1 sind, die durch Nessus erzeugt werden.

Irgend eine Idee?

Danke und Gruß

Sub-Zero

Content-ID: 83503

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

Ausgedruckt am: 22.11.2024 um 20:11 Uhr