Penetrationstests sind wichtig
Wenn ein Mailanhang unüberlegt geöffnet wird, ein Mitarbeiter zum Download verleitet wird oder die VPN-Einwahl ohne einen zweiten Faktor erfolgt, dann muss man früher oder später damit rechnen, dass sich ein potenzieller Angreifer in das interne Netzwerk eindringt. Doch was passiert danach? Zur Verwaltung von Benutzern, Gruppen, und Berechtigungen kommt bei den meisten Unternehmen und Behörden ein Active Directory zum Einsatz. Der Angreifer wird üblicherweise versuchen, sich höhere Privilegien zu verschaffen, um weitreichenden Zugriff auf die Unternehmensdaten zu erhalten. Das Active Directory bietet hierfür leider etliche Hintertüren, welche es häufig in kürzester Zeit ermöglichen, sich administrative Rechte zu verschaffen.
Genau hier kann ein Penetrationstest helfen: Damit prüft man die Domain auf fehlerhafte Konfigurationen, zu offene Berechtigungen und schwache Kennworte, bevor es ein möglicher Angreifer tut. Folgende Ziele wurden für einen simulierten Angriff auf das IT-System einer Hochschule festgelegt: Zugriff auf das interne Netzwerk erhalten, Kompromittierung eines Domainaccounts und das Erlangen von domainadministrativen Rechten.
Zur Erreichung des ersten Ziels genügte ein kurzer Besuch vor Ort: Der Campus, die Verwaltungsgebäude sowie die dazugehörige Bibliothek sind öffentlich zugänglich. Der Weg zu einer Netzwerkdose war deshalb nicht weit. Der erste Versuch, das Gerät des Angreifers in das Netzwerk zu bringen und einfach anzustecken, scheiterte allerdings durch die von der Hochschule eingesetzte NAC-Lösung (Network Access Control). Ein Blick in das Konfigurationsmenü der Drucker, die in einem abseits gelegenen Verwaltungstrakt standen, verriet jedoch, dass der Netzwerkzugriff hier ohne erweitere Schutzmaßnahmen vonstattenging. Dort konnte man sich Zugriff auf das interne Netzwerk verschaffen.
Doch wie gelangt man nun als Angreifer in den Besitz eines Benutzeraccounts? Beispielsweise durch das Ausnutzen von einem der ältesten Angriffsvektoren in windows-verwalteten Netzwerken, und zwar über die „Fall-Back“-Protokolle. Dadurch konnten nach einer Weile mehrere Anmeldeversuche von Verwaltungsangestellten aufgezeichnet werden. Das Programm „Hashcat“ war anschließend das Mittel der Wahl, um die Kennworte aus den Anmeldeversuchen zu knacken und um an Ziel Nummer 2 einen Haken zu setzen.
Frisch ausgestattet mit einem internen Domainaccount der Hochschule ging es nun darum, möglichst weitreichende Rechte zu erhalten. Einer dieser Wege führt beispielsweise über die Zertifizierungsstelle (CA). Die CA vor Ort wurde mit der microsoft-eigenen Lösung „Active Directory Certificate Service (ADCS)“ realisiert. Und um die Zertifikate bequem über eine Weboberfläche zu beantragen, wurde während der Installation auch das sogenannte „Web Enrollment“ in den Serverrollen aktiviert. Sofern keine weiteren Änderungen vorgenommen werden, geht die Grundeinstellung der Webschnittstelle mit einer unsicheren Anmeldemethode einher und stellt ein eklatantes Sicherheitsrisiko dar. Diese Grundeinstellung konnte letztlich dazu genutzt werden, um in den Besitz eines „Domaincontroller (DC)“-Zertifikats zu kommen und um sich als Domaincontroller zu authentifizieren. Und da jeder Domaincontroller das Recht „Verzeichnisänderung replizieren“ hat, konnten anschließend alle Benutzer samt ihrer gespeicherten Zugangsdaten abgefragt werden – auch von allen Domainadministratoren. Somit wurden alle gesetzten Ziele vom Angreifer erreicht.
Der hier geschilderte Fall zur Kompromittierung der Domain ist nur einer von vielen und hat weniger als einen Tag in Anspruch genommen. Sofern eine Domain in der Standardkonfiguration vorliegt, ist es für einen potenziellen Angreifer häufig ein Leichtes, diese zu übernehmen. Ergänzt wird die Problematik durch mögliche Lücken im Rollen- und Berechtigungskonzept, welche in einer sogenannten „historisch gewachsenen“ Domain früher oder später auftreten.
In Anbetracht dessen, dass nahezu täglich Änderungen innerhalb der Domain durchgeführt werden − sei es beim Anlegen von Benutzern oder beim Ändern von Gruppen − sollten regelmäßige Sicherheitsüberprüfungen durchgeführt werden. Dies kann durch Audit-Tools wie „Ping Castle“ oder „Purple Knight“ unterstützt werden. Allerdings ersetzen diese Tools keinesfalls einen eigenständigen Penetration Test des Active Directory. Einerseits werden von solchen Tools die Konfigurationen auf Client/Server-Ebene nicht geprüft, und andererseits, weil der individuelle Kontext zu Ihrem etablierten Rollen- und Berechtigungskonzept nicht interpretiert werden kann.
Bild: Shutterstock, HSD