arpwatch unter Mac mit Growl
Viele Man-in-the-middle-Angriffe in lokalen Netzwerken basieren auf ARP-Spoofing, bei dem durch gezieltes Fälschen von ARP-Netzwerkpaketen der Traffic eines Rechners so umgeleitet wird, dass ein Dritter diese mitlesen und verändern kann. Mittels Sicherheitsfunktionen wie z.B. Port Security sollten solche gefälschten Pakete in lokalen Netzwerkinfrastrukturen verhindert werden.
Möchte man in fremden Netzwerken selbst sicherstellen, dass man nicht Opfer solcher Angriffe wird, ist es möglich mit Software das Netzwerk zu überwachen und bei verdächtigen Veränderungen gewarnt zu werden. Ein bekanntes Unix-Netzwerktool in diesem Bereich ist arpwatch, welches ich u.a. auch auf meinem Notebook unter Mac OS X betreibe. Um direkt über verdächtige Änderungen im Netzwerk informiert zu werden, habe ich ein kleines Python-Skript geschrieben, das die System-Log von Mac OS X nach arpwatch-Meldungen durchsucht und entsprechende Growl-Nachrichten erstellt. Eine solche Growl-Nachricht kann z.B. so aussehen:
Hier wird gemeldet, dass sich die MAC-Adresse der IP 192.168.0.2 zwischen den beiden aufgeführten Adressen hin und her ändert. Ein Hinweis auf eine doppelt vergebene IP-Adresse im Netzwerk oder aber auch ein Indiz für gefälschte ARP-Anfragen bei einem Man-in-the-middle-Angriff.
Im Wiki habe ich die Einrichtung der Software und die erforderlichen Skripte für den Nachbau dokumentiert.

