Entwicklung eines Linux Monitoring Rootkits

Bachelor-Studiengang IT Security

Patrick Pacher, BSc
18.09.2015

Ausgangslage

Der Anspruch an die Sicherheit von IT Infrastrukturen sowie sensiblen Geschäfts-, Personal- und privater Daten ist in den letzten Jahren aufgrund zahlreicher Ereignisse dramatisch gestiegen. Viren und Spionage-Software wie Stuxnet, Flame und Duqu sowie der anhaltende Spionage-Skandal durch westliche Geheimdienste erschütterten das Sicherheitsbewusstsein vieler Firmen, Staaten und Privatpersonen. Auch das verstärkte Auftreten von gezielt anhaltenden Angriffen (Advanced Persistent Threats; APTs) – welche nur selten zur Gänze abgewehrt werden können – verunsichert viele Organisationen, da herkömmliche Perimeter-Security in den meisten Fällen versagt.

Obwohl sehr viel Aufwand für die Abwehr von Angriffen betrieben wird, fließt meist zu wenig Zeit in die Überwachung der Systeme und deren Aktivitäten. Honeypots werden zwar eingesetzt, um abnorme Aktivitäten und Zugriffe zu protokollieren, geben jedoch nur selten Hinweise und Informationen über die genaue Vorgehensweise der Angreifer. Ein weiteres Problem ist, dass Angreifer die eingesetzte Monitoring-Software in den meisten Fällen erkennen und möglicherweise ausschalten bzw. manipulieren können.

Primäres Ziel dieser Arbeit ist die Ausarbeitung und Beispiel-Implementierung eines sich versteckenden Monitoring Rootkits für den Linux Kernel.

Ziel

Das Ziel dieser Arbeit ist die Ausarbeitung von verschiedenen Monitoring-Möglichkeiten und Stealth-Techniken, welche in einem Linux Kernel Modul implementiert werden könnten. Zusätzlich zu bereits bekannten Hooking Techniken wird im speziellen das Linux Security Module Framework genauer betrachtet und auf Eignung für die Entwicklung eines Monitoring Rootkits untersucht.

Ergebnis

Durch die Offenheit des Linux Quellcodes steht der Entwicklung von Linux-Rootkits auf den ersten Blick nur wenig im Wege. Je mehr man sich jedoch dem Kernel Source-Code nähert, desto schneller stößt man an die Grenzen der verfügbaren Dokumentation.

Die in dieser Arbeit aufgezeigten Methoden und Techniken sind vielversprechend, aber auch mit Nachteilen behaftet. So kann das Linux Security Module Framework zwar sehr gut für das Monitoring von Systemaktivitäten verwendet werden, bietet jedoch keinerlei Möglichkeiten, um das Rootkit zu verstecken beziehungsweise die Ergebnisse eines Aufrufs zu manipulieren. Anstelle muss hier auf Hooking-Techniken, welche das System instabil machen können,  zurückgegriffen werden. Trotz der in dieser Arbeit diskutierten Herausforderungen sollten verborgene Überwachungskomponenten die Sicherheit von Systemen und das Monitoring von Angriffen erheblich verbessern können.

FH-Betreuer: DI Robert Luh, BSc