PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Erfahrungen mit Snort (inline Modus)



Basti_litho
29.08.06, 09:55
Hallo,

versuche mich grade ein wenig mit Snort (-Q Inline Modus) herum zu spielen.

Leider stoß ich da auf schwierigkeiten.

Das ganze befindet sich auf einem Rechner. Dieser hat nur eine Netzwerkkarte.
Aber da ich es einfach nur mal testen möchte, dachte ich mir das reicht schon.
Leider habe ich jetzt gelesen das man für Snort im Inline Modus verschiedene Bridge Optionen im Kernel aktivieren muss - was ich getan habe.


Der aktuelle Stand:
-------------------------

* Habe mir verschiedene Artikel durchgelesen. Leider ist mir immer noch nicht alles klar geworden.

Habe Snort (2.6.0) mit "--enable-inline" übersetzt.
Regeln angepasst (auf drop gesetzt).
Kernel Module für eine "Bridge" gestatet.
Iptables Regel gesetzt: ("iptables -A OUTPUT -p tcp --dport 80 -j QUEUE").
Snort mit der Optioin "-Q" gestartet.

Eine meiner Regeln war z.b. diese hier:


drop tcp any any -> any any (classtype:attempted-user; msg:"Port 80 connection initiated"; content:"heise.de"; nocase;)


Ich weiß das man die "QUEUE" eigentlich auf die FORWARD Kette ansetzt - aber für Testzwecke sollte ja auch ein OUTPUT reichen.

Jetzt gibt es noch ein paar Sachen die ich nicht so ganz verstehe:

1. Das Netz (bzw. Internet) ist extrem langsam. :(
(obwohl es mit den bridge kernel modul zum erstenmal zu funktionieren scheint).
Es braucht für jede Seite ca. 3 Sekunden bis er anfängt sie zu laden - dann geht's aber, bis auf ein paar Bilder - die schaft er dann einfach nicht nachzuladen.

2. Die Regel die ich oben gezeigt habe wird zwar ausgeführt - aber nicht immer Protokolliert.


Hat jemand von euch Erfahrungen mit Snort (Inline Modus) oder würdet Ihr mir als IPS gleich was anderes empfehlen?

Vielen Dank & Gruß
basti

Basti_litho
30.08.06, 13:12
Ok, bin jetzt schon ein wenig weiter:

Aktuelle Konfiguration:

Bridge: br0 (bestehend aus eth0 und dummy0 - weil ich nur eine NIC habe).



brctl addbr br0
brctl addif br0 eth0
brctl addif br0 dummy0
ifconfig br0 0.0.0.0 up
iptables -A FORWARD -j QUEUE


Snort wurde so gestartet:


/usr/local/bin/snort -Qvc /usr/local/etc/snort/snort.conf -i br0


Soweit scheint es schon besser zu funktionieren als gestern.
Aber leider bekomme ich jetzt seltsamerweise nur noch UDP Pakete zu sehen - bzw. Snort sieht nur noch udp Pakete.

Diese sind meistens broadcast Pakete.

Bin mir leider aber nicht sicher ob das so wie ich das gemacht habe (mit einer Virtellen NIC (dummy0)) so wirklich klappt.

Ausgabe von ifconfig:


br0 Link encap:Ethernet HWaddr 00:04:75:FA:2C:D7
inet addr:192.168.0.36 Bcast:192.168.0.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:2967 errors:0 dropped:0 overruns:0 frame:0
TX packets:2276 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:1296681 (1.2 Mb) TX bytes:366067 (357.4 Kb)

dummy0 Link encap:Ethernet HWaddr C2:F3:7A:BA:70:21
UP BROADCAST RUNNING NOARP MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:1579 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 b) TX bytes:130012 (126.9 Kb)

eth0 Link encap:Ethernet HWaddr 00:04:75:FA:2C:D7
UP BROADCAST NOTRAILERS RUNNING MULTICAST MTU:1500 Metric:1
RX packets:5418 errors:0 dropped:0 overruns:0 frame:0
TX packets:3196 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:1808860 (1.7 Mb) TX bytes:518938 (506.7 Kb)
Interrupt:10 Base address:0xa400


Ausgabe von Snort:


Snort processed 357 packets.
================================================== =============================
Breakdown by protocol:
TCP: 21 (5.882%)
UDP: 292 (81.793%)
ICMP: 0 (0.000%)
ARP: 0 (0.000%)
EAPOL: 0 (0.000%)
IPv6: 0 (0.000%)
ETHLOOP: 0 (0.000%)
IPX: 0 (0.000%)
FRAG: 0 (0.000%)
OTHER: 44 (12.325%)
DISCARD: 0 (0.000%)
==================================================
Action Stats:
ALERTS: 6
LOGGED: 6
PASSED: 0
==================================================


Ich hoffe jemand weiß da rat. :)

Gruß
Basti