Dienstag, 7. Oktober 2008

entwickler.com Magazine Konferenzen Entwickler Akademie Entwickler-Forum Jobbörse Bücher
Software & Support Verlag

Auf der Suche nach Rootkits

Falls Sie ernsthaft vermuten, dass Ihr System kompromittiert wurde, können Sie als angemessene Gegenmassnahme die gezielte Suche nach Rootkits einleiten. Bei Rootkits handelt es sich allgemein gesagt um eine Sammlung manipulierter Systemprogramme und Tools wie ps, ls und netstat; dieselben dienen zum Verwischen aller Einbruchsspuren. Überdies kann durch Rootkits eine Hintertür (backdoor) geöffnet werden, die es dem Angreifer ermöglicht, jederzeit wieder auf das kompromittierte System zurückzukehren.
Derzeit existieren etwa 50 bekannte Rootkits, es wäre also ausserordentlich mühsam, für jedes Kit eine spezielle Suchaktion zu starten. Um die Kits effektiv aufzuspüren, verwenden Sie deshalb besser die Scriptsammlung chkrootkit [1], die aus mehreren Komponenten besteht (Shellscripts und C-Programme). Die Scriptsammlung wurde bisher vornehmlich unter Unix und Linux-Systemen getestet:


Linux 2.0-2.6.x

FreeBSD

OpenBSD

NetBSD

Solaris

HP-UX


Die Installation ist denkbar einfach und wird mit diesem Schritt ausgeführt:

# make sense

Chkrootkit überprüft auch, ob Netzwerkkarten in den sogenannten Promiscuous-Mode geschaltet wurden (Sniffer nutzen diesen Mode, um Netzwerk-Traffic „mitzuschneiden“). Auch der Standard-Befehl ifconfig gibt mitunter Auskunft darüber, ob sich das Netzwerk-Interface im Promiscuous-Mode befindet:

ifconfig -a

Weiter im Text: chkrootkit testet überdies Dateien wie lastlog und wtmp; beide Dateien enthalten Angaben zur An- und Abmeldung der System-Benutzer. Falls Sie hier Änderungen bemerken, können Sie davon ausgehen, das sich wahrscheinlich ein ungebetener Gast auf Ihrem System eingenistet hat. Der Aufruf von chkrootkit ist einfach (bitte als root im Installationsverzeichnis von chkrootkit ausführen):

# ./chkrootkit

Aufgepasst: chkrootkit ist von einer Reihe wichtiger Systemdateien abhängig (Kandidaten sind unter anderem awk, egrep, find, head, id, ls, netstat, ps, strings etc.). Falls Sie bei den Suchläufen auf Nummer Sicher gehen möchten und Kopien dieser System-Programme auf einer CD haben, könnten Sie so vorgehen (vorausgesetzt, die CD ist gemountet;-)):

# ./chkrootkit -p /mnt/cdrom

Auch dieser Aufruf ist sehr nützlich:

# ./chkrootkit ps ls sniffer

Hier wird geprüft, ob es sich bei den System-Programmen ps und ls um trojanisierte Versionen handelt. Last not least eine weitere Möglichkeit, verdächtigen Binaries auf die Spur zu kommen; der Schalter -x sorgt für die Untersuchung verdächtiger Strings in binären Programmen. Der Aufruf:

# ./chkrootkit -x | more

Viel Spass beim Aufspüren der Bösewichter.

Thomas Kaufmann

[1] Die chkrootkit-Site: http://www.chkrootkit.org







Software & Support Verlag GmbH