Mit dem Bloodhound auf Active-Directory-Jagd
Auf seiner SO-CON zeigte SpecterOps viele Aktualisierungen für Security-Werkzeuge, darunter BloodHound 4.0 für Active-Directory-Angriffe.
- Hagen Molzer
Auf der ersten virtuellen SO-CON gab Veranstalter SpecterOps in vielen verschiedenen Vorträgen Einblicke in das Handwerkszeug und die Denkweisen professioneller Red und Blue Teams. Auch wenn der Name SpecterOps in Deutschland eventuell weniger geläufig ist, so sind die Open-Source-Werkzeuge, des Unternehmens umso bekannter. Dazu zählen die Projekte PowerShell Empire, BloodHound, PowerSploit und GhostPack.
Im Rahmen des Vortrags "Six Degrees of Global Admin" stellte Andy Robbins BloodHound 4.0 vor. Halfen die älteren Versionen des Werkzeugs noch, klassische Active-Directory-Umgebungen zu analysieren und mögliche Angriffspfade per Graphentheorie darzustellen, kann die neue Version nun auch Microsoft Azure untersuchen. Hierzu sammelt der neue Ingestor namens AzureHound die Daten aus dem Azure Active Directory und dem Azure Resource Manager. Diese importiert das Tool über die BloodHound GUI in eine Neo4j-Graphendatenbank.
Active Directory lokal oder in der Cloud angreifen
Insbesondere bei hybriden Infrastrukturen – klassisches Active Directory und Azure AD im parallelen Einsatz – oder für VMs bei Azure, ist es sinnvoll, die Daten aus beiden Verzeichnisdiensten in eine Datenbank und damit in einen Graphen zu laden. Die Software kann auf diese Weise eventuell zusätzliche Angriffspfade abbilden, die zuvor nicht erkennbar waren. Beispielsweise könnte ein aus dem lokalen Active Directory in das Azure AD synchronisierter Benutzer erweiterte Rechte auf eine VM besitzen, die eine Kompromittierung der lokalen Domäne erlauben, oder über eine Verschachtelung von Gruppenmitgliedschaften ließe sich der globale Administrator im Azure AD kompromittieren.
Um die Daten aus der Azure-Infrastruktur extrahieren und abbilden zu können, erhält der BloodHound-Graph zehn neue Knoten: Tenants, Azure Users, Azure Security Groups, Apps, Service Principals, Subscriptions, Resource Groups, Virtual Machines, Devices und Key Vaults. Hinzu kommen 14 neue Kanten, die die jeweils möglichen Angriffe darstellen.
Wie schon beim klassischen, lokalen Active Directory reichen die Rechte eines gewöhnlichen Azure-AD-Benutzers zur Abfrage fast sämtlicher benötigter Informationen aus. Lediglich die Subscriptions lassen sich so per Standardeinstellung nicht abfragen. Zum Sammeln der Daten benötigt der AzureHound laut SpecterOps auch in großen Umgebungen mit 240.000 Benutzern knapp zwei Stunden.