Zombie-PCs - Analyse und Abwehr

Netzwerkverbindungen prüfen

Donnerstag den 03.07.2008 um 08:40 Uhr

von Christian Löbering

TCP-View
© 2014
Analyse der Netzverbindungen
Wenn ein Hacker eine Backdoor auf Ihrem System geöffnet hat, dann bedeutet das: Er hat es geschafft, eine Malware zu platzieren und zu starten. Diese Malware läuft in der Regel mit Admin-Rechten und wartet etwa über einen eigens dafür geöffneten Port auf Befehle des Hackers. : Sobald der Zombie-Rechner etwa zur Spam-Schleuder wird, verschickt die Malware meist über eine eigene SMTP-Engine (Systemdienst zum Mailversand) massenhaft Mails an den Port 25 eines regulären SMTP-Servers von einem beliebigen Internet Service Provider (ISP). Port 25 fordert nicht, dass sich der Benutzer authentifiziert, da er an sich der Kommunikation zweier Mail-Server dient. Deshalb können die Mails beliebige Absender haben und werden einfach weitergeleitet. Übrigens: Das Spam-Problem könnte reduziert werden, wenn alle ISPs den Port 25 blocken und stattdessen nur noch Mails über Port 587 weiterleiten, bei dem eine Authentifizierung erforderlich ist. So lange das nicht der Fall ist, müssen Sie den ausgehenden Netzverkehr von Ihrem Rechner genau im Auge behalten.

Mit einem Tool wie Tcpview sehen Sie in Echtzeit die bestehenden Netzverbindungen jeder einzelnen laufenden Anwendung und deren Verbindungspartner. In der Ergebnis-Tabelle stehen in der ersten Spalte der Name des Prozesses und seine Prozess-ID (PID). Die nächste Spalte enthält das verwendete Protokoll, also TCP (Transmission Control Protocol) oder UDP (User Datagram Protocol). Das spielt für Sie keine Rolle. Eine Spalte weiter erscheint Ihr Rechnername und der verwendete Port, auf dem gehorcht oder kommuniziert wird. In der vierten Spalte sehen Sie die Adresse der Gegenstelle, mit der der Prozess verbunden ist. Die letzte Spalte liefert den Status der Verbindung ("Established" für verbunden oder "Listening" für horchend). Übrigens: Wenn bei der Gegenstelle "localhost" oder "127.0.0.1" steht, ist das Ihr eigener Rechner. Der Prozess läuft also auf Ihrem PC und kommuniziert etwa mit Ihrem eigenen Webserver.

: Wie so oft im Bereich der IT-Forensik gibt es keine einfache Regel, um bösartige von gutartigen Verbindungen eindeutig zu unterscheiden. Es gibt aber Anzeichen, bei denen Sie stutzig werden sollten. Das wichtigste Kriterium bei der Analyse ist der verwendete Port. Die Ports aus dem Bereich 0 bis 1023 (Well Known Ports) werden nur von definierten Diensten benutzt und sind in der Regel unkritisch (wenn keine Sicherheitslücke vorliegt). Ports aus dem Bereich 1024 bis 49.151 (Registered Ports) sind nicht fest an bestimmte Dienste gebunden, jedoch werden Sie oftmals von FTP-Clients, Browsern, Mailprogrammen oder Messengern verwendet. Die Programme öffnen temporär einen zufälligen Port aus dem Bereich, um eine Kommunikation (etwa den Besuch einer Web-Seite) zu ermöglichen, ohne ständig einen Port geöffnet zu halten. Ein weiteres Merkmal der Ports aus diesem Bereich ist, dass sie wieder geschlossen werden, sobald die Kommunikation beendet ist. Wenn Sie in der Ergebnisliste von Tcpview eine Anwendung mit einem Namen sehen, der Ihnen nichts sagt, und die außerdem einen Port aus diesem Bereich geöffnet hat, sollten Sie Verdacht schöpfen: Merken Sie sich den Prozessnamen und die PID. Um den genauen Pfad zur jeweiligen Anwendung zu erhalten, klicken Sie mit der rechten Maustaste auf den Prozess und wählen "Process Properties". Die Ports aus dem Bereich 49.152 bis 65.535 (Dynamic Ports) werden selten genutzt - hier liegt die ideale Spielwiese für Trojaner. Sollte eine Anwendung einen Port aus diesem Bereich geöffnet haben, merken Sie sich Pfad und ID, und fahren Sie mit der Recherche beim nächsten Punkt fort. : Eine Liste mit allen definierten Port-Nummern und den dazugehörigen Diensten erhalten Sie über www.pcwelt.de/tcp.

Prozess Explorer
Vergrößern Prozess Explorer
© 2014

Überpüfen, was lokal läuft
Sie haben eine verdächtige Internet-Verbindung ermittelt und möchten nun genauer wissen, worum es sich handelt. Zu diesem Zweck starten Sie den englischsprachigen Process Explorer . Prozess analysieren: Standardmäßig finden Sie alle laufenden Prozesse nach ihren Abhängigkeiten sortiert in einer Baum-Ansicht. Die Hintergrundfarbe verrät, um welche Art von Prozess es sich handelt. So steht etwa Rosa für Dienste, Blau für normale Prozesse, Braun für geplante Tasks und Violett für gepackte Abbilder (Images). Im Prinzip kann sich Malware hinter jeder dieser Prozess-Arten verbergen. In der Regel versucht sie aber, sich zu tarnen. Deshalb wird sie eher als Dienst oder als gepacktes Abbild unterwegs sein. Um mehr über einen Prozess zu erfahren, suchen Sie in Spalte zwei die entsprechende Prozess-ID, klicken sie mit der rechten Maustaste an und wählen "Properties". Auf der Registerkarte "TCP/IP" können Sie prüfen, ob es tatsächlich die Anwendung ist, die eine verdächtige Netzverbindung aufgebaut hat (Punkt 3). Öffnen Sie dann die Registerkarte "Security", um zu erfahren, mit welchen Rechten der Prozess ausgestattet ist. Steht in der obersten Zeile neben "User" etwa der Eintrag "NT-Autorität\System", dann läuft der Prozess mit System-Rechten (meist als Dienst) und hat somit alle Freiheiten auf Ihrem Rechner. Alternativ kann auch Ihr eigener Benutzername in dieser Zeile stehen. Dann haben Sie den Prozess (wohl unwissentlich) selbst gestartet oder starten lassen. Wenn Sie selbst über Admin-Rechte verfügen, hat der Prozess sie auch - und das ist schlecht. Auf der Registerkarte "Threads" sehen Sie, welche Unterprozesse der Prozess initiiert hat. Falls sich Ihr Verdacht erhärtet, dass es sich um eine bösartige Variante handelt, dann öffnen Sie die Registerkarte "Image". Merken Sie sich den Pfad zur Anwendung, und klicken Sie auf "Kill Process", um den Prozess zu beenden.

: Ist Ihnen beim Analysieren mit Tcpview eine verdächtige Verbindung aufgefallen, die vom Prozess Svchost.exe ausgeht, dann handelt es sich wahrscheinlich nur um die automatischen Updates von Windows. Sie sollten sich trotzdem vergewissern: Die Svchost.exe ist ein Host-Prozess für Windows-Dienste (Service Host Process). Das bedeutet, dieser Prozess lädt und verwaltet alle wesentlichen Windows-Dienste. Aus diesem Grund laufen meist auch mehrere Instanzen parallel. Welche Dienste hinter einer Instanz von Svchost stecken, die eine Netzwerkverbindung aufgebaut hat, zeigt Ihnen ebenfalls der Process Explorer. Klicken Sie im Tool mit der rechten Maustaste auf den Eintrag mit der entsprechenden Prozess-ID, und wählen Sie "Properties". Wenn Sie dann die Registerkarte "Services" öffnen, finden Sie eine Liste mit allen verwalteten Diensten. Kommt in der ersten Spalte der Liste der Eintrag "wuauserv" vor, bestätigt sich die Vermutung, dass es sich nur um die automatischen Updates handelt. Andernfalls können Sie unter Dienste:http://pcwelt-wiki.de/wiki/Kategorie\:Dienste eine Beschreibung zu allen anderen Diensten in der Liste finden. Klicken Sie dazu auf unserer Web-Seite einfach auf die Links mit den entsprechenden Namen der Dienste, die im Process Explorer in der Spalte "Display Name" stehen. Sollten Sie hier keine Beschreibung finden, handelt es sich nicht um einen standardmäßigen Windows-Dienst, und Sie sollten Verdacht schöpfen. Einen verdächtigen Dienst können Sie über die Schaltfläche "Stop" im Process Explorer anhalten.

PC nach Rootkits duchsuchen
Im letzten Schritt der Analyse sollten Sie Ihr System auf Rootkits checken. Der Begriff "Rootkit" kommt ursprünglich aus der Unix-Welt. Er bezeichnet eine Tool-Sammlung, die beim Einbruch in ein Computersystem installiert wird, um die Kompromittierung des Systems zu verbergen. Die Malware wird also vor Windows versteckt. : Rootkits lassen sich in mehrere Arten einteilen. Residente Rootkits überleben einen Neustart und müssen sich dafür zumindest in eine Autostart-Rampe eintragen. Speicher-Rootkits hingegen sind nach dem nächsten Neustart weg. Weiterhin gibt es Benutzer-Rootkits, die API-Aufrufe (Application Programming Interface) von Anwendungen im Benutzerkontext abfangen und ändern. So kann beispielsweise eine bestimmte Datei im Explorer versteckt werden. Die ausgefeilteren Kernel-Rootkits fangen sogar Aufrufe der nativen Windows-API ab. Dabei handelt es sich um den Befehlssatz, den auf der Kernel-Ebene etwa auch Treiber verwenden. Obwohl Sie beim einem externen Virenscan (Punkt 2) wahrscheinlich schon alle Rootkits beziehungsweise die damit versteckte Malware aufgespürt haben, sollten Sie Ihr System noch einmal mit Spezial-Software untersuchen.

: Der einfachste Weg, ein Rootkit aufzuspüren, führt über Blacklight Rootkit Eliminator . Nach dem Aufruf des englischsprachigen Tools klicken Sie auf "Scan", um Ihr System zu überprüfen. Rootkit-Scanner funktionieren dabei nach dem Prinzip des Vergleichs. Zunächst werden die Platten regulär über die Windows-API gecheckt, in einem zweiten Durchlauf die rohen Daten direkt von der Platte gelesen. Falls die beiden Scans Unterschiede zutage fördern, bedeutet das, dass eine Datei, ein Registry-Schlüssel, ein Dienst oder ein anderer Prozess vor Windows verborgen werden soll - und das ist verdächtig. Blacklight vergleicht die Ergebnisse dann ähnlich wie ein normaler Virenscanner mit einer Rootkit-Datenbank und eliminiert ermittelte Bösewichte. Das Ganze läuft ohne Ihr Zutun. : Wenn Sie sich eher auf sich selbst als auf eine Rootkit-Datenbank verlassen möchten, können Sie Ihr System mit Gmer nach Rootkits durchsuchen. Das englischsprachige Tool arbeitet im Prinzip ähnlich wie Blacklight. Es bietet jedoch keine Aufräum-Funktion, sondern zeigt nur das Ergebnis des Vergleichs an. Es ist einiges an Know-how erforderlich, um gutartige Einträge von System- oder Antiviren-Software von bösartigen Rootkits zu unterscheiden. Der Vorteil von Gmer: Dieses Tool zeigt Ihnen ein Rootkit in jedem Fall an. Sie müssen aber wissen, wie Sie es identifizieren.

Donnerstag den 03.07.2008 um 08:40 Uhr

von Christian Löbering

Kommentieren Kommentare zu diesem Artikel (0)
124212