Ein interner Netzwerktest - Was geschieht denn da?

Einführung in die Methodologie eines Penetrationstests – Teil 6, von Dr. Erlijn van Genuchten

In vorigen Beiträgen wurde bereits die Methodologie für 1) Webapplikations-, 2) Perimeter-, 3) Hardware-, 4) Mobile-App- und 5) WLAN-Tests in den Blick genommen. Der vorliegende Artikel bietet als nächstes eine Einführung in die Durchführung eines internen Netzwerktests. Das primäre Ziel dabei ist es, Schwachstellen im internen Netzwerk zu identifizieren und zu dokumentieren, die einen realen Angriff begünstigen können. Um diese Schwachstellen an unterschiedlichen Stellen im Netzwerk feststellen zu können, wird versucht, möglichst weitreichende Berechtigungen innerhalb des Kundennetzwerks zu erlangen, zum Beispiel durch eine Umgehung von Schutzmaßnahmen oder durch die Ausnutzung von Software- und Diensteschwachstellen. Um dorthin zu kommen, ist die Ausbreitung im internen Netz inklusive der Erlangung lokaler Administratorrechte auf einzelnen Serversystemen (siehe Abbildung 1) ein wichtiger Zwischenschritt. Die beiden Fragen, die dabei gestellt werden, sind:

  1. Welche Möglichkeiten stehen einem Angreifer zur Verfügung, der Zugang zu den Räumlichkeiten hat? („Putzpersonalszenario“ genannt).
  2. Welche zusätzlichen Möglichkeiten bieten sich einem solchen Angreifer, wenn er außerdem physischen Zugriff auf einen typischen Mitarbeiterclient hat und ihm ein Active Directory-Konto mit Standardrechten zur Verfügung steht? („Praktikantenszenario“ genannt). Im Active Directory ist hinterlegt, auf welche Dienste, Dateien u. v. m. dieser Benutzer Zugriff hat.       

Wie schon bei den bisherigen Testtypen lassen sich auch hier Ansätze aus der Webapplikationsanalyse übertragen und die bereits bekannten Testphasen können durchlaufen werden. Zudem ist eine Testnachbereitung wichtig, um den Stand der Netzwerksicherheit vor dem Test wieder herzustellen. Zur Nachbereitung gehören zum Beispiel das Löschen von angelegten Accounts oder zumindest eine Änderung von Zugangsdaten sowie das Löschen von angelegten Dateien. In diesem Zusammenhang ist eine Dokumentation der einzelnen Testschritte bedeutsam, um durch den Test erfolgte Änderungen – beispielsweise in Logdateien – nachvollziehen zu können und ausfindig zu machen.

Die Reconnaissance-Phase

In der ersten Phase des Tests wird gemeinsam mit dem Kunden festgelegt, welche Systeme angegriffen werden dürfen. Falls relevant, wird auch geklärt, welche Adressbereiche zu welchen Standorten gehören. Benötigte Accounts werden je nach Testszenario zur Verfügung gestellt.

Die Mapping-Phase

Wenn von einem Putzpersonalszenario ausgegangen wird, besteht der erste Schritt des Consultants darin, sich mit dem Netzwerk zu verbinden. Dies ermöglicht es unter Umständen, den Datenverkehr mitzuhören und Datenpakete mitzuschneiden. Zusätzlich können oft Informationen über andere Systeme gesammelt werden, die sich im gleichen Netzwerk befinden. Dazu können Portscans durchgeführt werden (zur Beschreibung eines Portscans sei auf den Artikel über den Perimetertest verwiesen). Auch kann zum Beispiel festgestellt werden, welche Betriebssystemversionen zum Einsatz kommen. Wird dahingegen von einem Praktikantenszenario ausgegangen, können Informationen dazu gesammelt werden, welche Clientbenutzer vorhanden sind und welche Berechtigungen diese haben.

Die Discovery-Phase

Beide Szenarien – Putzpersonal- und Praktikantenszenario – können Überschneidungen aufweisen. In beiden Szenarien können mithilfe eines Schwachstellenscanners weitere Informationen gesammelt werden. Zudem führt dieser Scanner Prüfungen durch, um automatisiert auf den zu testenden Systemen Schwachstellen mittels Rateangriffen, dem Extrahieren von Bannerinformationen und durch Ausprobieren von Angriffsvektoren zu identifizieren (siehe auch Perimeteranalyse). Beispiele für Funde sind die Verwendung von Trivialzugangsdaten oder schwachen Passwörtern und einer schwachen Passwortrichtlinie, ein unzureichendes oder fehlerhaftes Berechtigungskonzept und der Einsatz von veralteter Software. Letzteres deutet darauf hin, dass kein oder ein unzureichendes Patchmanagement vorhanden ist. Beim Praktikantenszenario wird auch geprüft, welche Konfigurationen auf dem bereitgestellten Client genutzt werden. Dabei wird unter anderem der Bootvorgang geprüft. Wird zum Beispiel Zugriff auf das BIOS und das Bootmenü verhindert? Ist eine Festplattenverschlüsselung vorhanden? Wenn ja, muss vor der Entschlüsselung ein Passwort eingegeben werden? Wenn nicht, dann kann über verschiedene Wege Administratorzugriff erlangt werden.

Die Exploitation-Phase

Bei einem internen Netzwerktest ist die vierte Phase, die Exploitation-Phase, von großer Bedeutung. Denn in dieser Phase werden identifizierte Schwachstellen ausgenutzt, um zum Beispiel administrative Berechtigungen zu erlangen und sich im internen Netz auszubreiten. Zu diesem Zweck werden Schwachstellen ausgenutzt, um eine lokale Rechteausweitung zu ermöglichen, das heißt, sich lokal vom normalen Benutzer zum Administrator zu "befördern". Ein Weg dafür ist das Auslesen von Passwort-Hashes aus der Registry oder von Klartextzugangsdaten aus dem Speicher. Auch können Dienste, wie eine Softwareverteilungslösung, die mit zu hohen Berechtigungen laufen, missbraucht werden. Wenn der Consultant es geschafft hat, Zugriff auf ein anderes System zu erlangen, wiederholt er die Mapping-, Discovery- und Exploitation-Phase – die nicht unbedingt nacheinander, sondern auch parallel laufen können – solange, bis er die Berechtigungen eines Domain-Administrators erlangt hat. Mit diesen Berechtigungen hat er vollen Zugriff auf das interne Netzwerk, inklusive Accounts und Dateien.

Für alle Schwachstellen, die während einer Netzwerkanalyse identifiziert wurden, spricht die SySS GmbH Empfehlungen aus, wie die Sicherheit des internen Netzes und die Konfiguration auf den Clients nachhaltig verbessert werden können. Auch werden strukturelle Empfehlungen gegeben, die die Sicherheit des Netzwerks nachhaltig verbessern sollten, wie beispielsweise Schwächen im Berechtigungs- und Patchmanagement. Werden die empfohlenen Maßnahmen umgesetzt, kann die Angriffsoberfläche so gering wie möglich gehalten und eine Ausbreitung im internen Netz erschwert werden. Wichtig ist jedoch, dass eine Prüfung regelmäßig durchgeführt wird, um neue Angriffsvektoren zu erkennen und Schwachstellen zeitnah beheben zu können. 

 

Ihr direkter Kontakt zu SySS +49 (0)7071 - 40 78 56-0 oder anfrage@syss.de | IN DRINGENDEN FÄLLEN AUSSERHALB DER GESCHÄFTSZEITEN +49 (0)7071 - 40 78 56-99

Als Rahmenvertragskunde wählen Sie bitte die bereitgestellte Rufbereitschaftsnummer

Ihr direkter Kontakt zu SySS +49 (0)7071 - 40 78 56-0 oder anfrage@syss.de

IN DRINGENDEN FÄLLEN AUSSERHALB DER GESCHÄFTSZEITEN +49 (0)7071 - 40 78 56-99

Als Rahmenvertragskunde wählen Sie bitte die bereitgestellte Rufbereitschaftsnummer

Direkter Kontakt

+49 (0)7071 - 40 78 56-0 oder anfrage@syss.de

IN DRINGENDEN FÄLLEN AUSSERHALB DER GESCHÄFTSZEITEN

+49 (0)7071 - 40 78 56-99

Als Rahmenvertragskunde wählen Sie bitte die bereitgestellte Rufbereitschaftsnummer