ADMIN

2025

03

2025-02-27T12:00:00

Monitoring und Hochverfügbarkeit

SCHWERPUNKT

061

Sicherheit

Monitoring

Entra-ID

Sicherheitslücken finden mit AzureADRecon

Aufklärungsmission

von Philip Lorenz

Veröffentlicht in Ausgabe 03/2025 - SCHWERPUNKT

Angreifer suchen gezielt nach Schwachstellen in Azure Entra ID – warum nicht die gleiche Perspektive einnehmen? Mit AzureADRecon steht ein Open-Source-Tool bereit, das detaillierte Einblicke in Benutzer, Rollen und Service Principals bietet. Ohne allzu tiefe PowerShell-Kenntnisse können Admins ihre Entra-ID-Umgebung analysieren, Berichte erstellen und potenzielle Risiken frühzeitig erkennen. Lesen Sie, wie Sie das Tool einrichten, automatisieren und für Sicherheitschecks einsetzen.

Weltweit setzen unzählige Unternehmen auf Entra ID (ehemals Azure AD) als Identity Provider, um die Authentifizierung und Zugriffsverwaltung für Cloud- und lokale Anwendungen zu organisieren. Doch genau diese breite Nutzung macht Entra ID auch zu einem attraktiven Ziel für Angreifer.
Der Grund ist klar: Wer Zugriff auf das Identitätsmanagement erhält, öffnet potenziell die Türen zu einer Vielzahl geschützter Anwendungen und Daten. Cyberkriminelle versuchen daher mit allen Mitteln, initialen Zugang zu Entra ID zu erlangen – sei es durch Phishing, Credential Stuffing oder die Ausnutzung von Fehlkonfigurationen. Einmal drin, geht es um Informationsbeschaffung, Zielidentifikation und die Vorbereitung weiterführender Angriffe.
Schwachstellen aufdecken mit AzureADRecon
Ein nützliches Werkzeug in diesem Zusammenhang ist das Open-Source-Tool AzureADRecon [1]. Es ermöglicht die systematische Sammlung von Informationen über die Entra-ID-Umgebung, darunter Benutzerkonten, Gruppen, Rollen sowie Sicherheitsrichtlinien und Konfigurationen. Allerdings ist zu beachten, dass das Tool keinen unautorisierten Zugriff ermöglicht. Vielmehr dient es der schnellen Extraktion von Informationen, wenn bereits initialer Zugriff auf die Umgebung besteht.
Weltweit setzen unzählige Unternehmen auf Entra ID (ehemals Azure AD) als Identity Provider, um die Authentifizierung und Zugriffsverwaltung für Cloud- und lokale Anwendungen zu organisieren. Doch genau diese breite Nutzung macht Entra ID auch zu einem attraktiven Ziel für Angreifer.
Der Grund ist klar: Wer Zugriff auf das Identitätsmanagement erhält, öffnet potenziell die Türen zu einer Vielzahl geschützter Anwendungen und Daten. Cyberkriminelle versuchen daher mit allen Mitteln, initialen Zugang zu Entra ID zu erlangen – sei es durch Phishing, Credential Stuffing oder die Ausnutzung von Fehlkonfigurationen. Einmal drin, geht es um Informationsbeschaffung, Zielidentifikation und die Vorbereitung weiterführender Angriffe.
Schwachstellen aufdecken mit AzureADRecon
Ein nützliches Werkzeug in diesem Zusammenhang ist das Open-Source-Tool AzureADRecon [1]. Es ermöglicht die systematische Sammlung von Informationen über die Entra-ID-Umgebung, darunter Benutzerkonten, Gruppen, Rollen sowie Sicherheitsrichtlinien und Konfigurationen. Allerdings ist zu beachten, dass das Tool keinen unautorisierten Zugriff ermöglicht. Vielmehr dient es der schnellen Extraktion von Informationen, wenn bereits initialer Zugriff auf die Umgebung besteht.
Für Admins und Sicherheitsverantwortliche bietet das Tool einen wertvollen Mehrwert: Sie können ihr eigenes Entra ID aus der Sicht eines potenziellen Angreifers betrachten, Schwachstellen frühzeitig aufdecken und so Sicherheitsmaßnahmen gezielt verstärken. Der Vorteil: Eine schnelle, unkomplizierte Möglichkeit, die eigene Infrastruktur zu scannen, bevor es Dritte tun.
Wer nun glaubt, für den Blick hinter die Kulissen von Azure Entra ID tief in die PowerShell eintauchen zu müssen, irrt. Mit AzureADRecon genügen wenige Handgriffe, um fundierte Einblicke in die Umgebung zu erhalten. Das Tool lässt sich intuitiv bedienen und liefert auf Knopfdruck wertvolle Informationen für IT-Admins und Sicherheitsverantwortliche gleichermaßen.
Entra ID als Schaltzentrale
Entra ID ist Microsofts cloudbasierte Identitäts- und Zugriffsverwaltungslösung. Es dient als zentraler Baustein für die Authentifizierung und Autorisierung in hybriden und rein cloudbasierten IT-Infrastrukturen. Entra ID ermöglicht Benutzern den Zugriff auf Anwendungen, Dienste und Ressourcen, sei es in der Cloud, lokal oder in hybriden Szenarien. Diese umfassende Funktionalität macht es zu einem unverzichtbaren Werkzeug für Unternehmen jeder Größe.
Entra ID ist somit integraler Bestandteil von Microsofts Ökosystem und kommt häufig für die nachfolgenden Zwecke zum Einsatz:
- Single Sign-On (SSO) ermöglicht Mitarbeitern, sich mit einer einzigen Anmeldedatenkombination nahtlos bei verschiedenen Anwendungen anzumelden, was die Benutzererfahrung verbessert und gleichzeitig Sicherheitsrisiken minimiert.
- Multi-Faktor-Authentifizierung (MFA) schützt die Zugänge zu sensiblen Ressourcen vor unbefugten Zugriffen.
- Identitätsverwaltung bietet Funktionen zur zentralen Verwaltung von Benutzerkonten, Rollen und Zugriffsrechten.
- Integrierte Sicherheitsrichtlinien: Funktionen wie Conditional Access helfen, Sicherheitsrichtlinien dynamisch basierend auf Benutzerstandort, Gerät oder Verhalten durchzusetzen.
Beliebtes Ziel für Angreifer
EntraID ist ein attraktives Ziel für Cyberkriminelle, weil es für Cloudressourcen als Gatekeeper fungiert: Sobald ein Angreifer Zugang zu einem Entra-ID-Konto mit hohen Berechtigungen (etwa Administratorrechte) erlangt, erhält er damit Zugang zu einer Vielzahl sensibler Unternehmensressourcen. Dies beinhaltet
1. Zugriff auf geschäftskritische Anwendungen: Entra ID ist mit wichtigen Diensten wie M365, Exchange Online, SharePoint, Teams und OneDrive verknüpft. Ein kompromittiertes Benutzerkonto kann Angreifern unmittelbaren Zugriff auf diese geschäftskritischen Anwendungen gewähren. Dadurch können Kriminelle Unternehmensdaten stehlen, Kommunikation ausspionieren oder E-Mails in Phishing-Kampagnen missbrauchen.
2. Zugriff auf privilegierte Konten: Wenn Angreifer in den Besitz eines Global-Admin-Kontos oder eines Accounts mit erhöhten Rechten gelangen, haben sie Zugriff auf administrative Funktionen. Das ermöglicht es ihnen, neue Benutzer zu erstellen, Passwörter zurückzusetzen, Zugriffskontrollen zu ändern oder sogar Backdoor-Konten zu erstellen, die langfristigen Zugang zu der Umgebung sichern.
3. Directory Enumeration und Reconnaissance: Entra ID ermöglicht den Zugriff auf Benutzer- und Gruppeninformationen. Angreifer, die Zugriff auf ein Benutzerkonto haben, können diese Informationen verwenden, um zu erkennen, welche Benutzer, Gruppen und Service Principals in der Umgebung existieren. Dieses Wissen lässt sich als Grundlage für weitere Attacken wie Phishing, Social Engineering oder Lateral Movement nutzen.
Der Einstieg in die Cyber Kill Chain
Die Cyber Kill Chain beschreibt die typischen Phasen eines Cyberangriffs – von der ersten Erkundung bis zur vollständigen Ausnutzung der Zielumgebung. In der Aufklärungsphase (Reconnaissance), dem ersten Schritt der Kill Chain, sammeln Angreifer gezielt Informationen über ihre Zielumgebung. Das Ziel: Schwachstellen identifizieren und die nächsten Schritte planen. Genau hier kommt AzureADRecon ins Spiel – der Name ist Programm.
Nach einem ersten Zugriff auf die Entra-ID-Umgebung nutzen Cyberkriminelle AzureADRecon, um systematisch interne Informationen auszulesen. Dazu gehören Benutzerkonten, Gruppen, Rollen, Berechtigungen und registrierte Anwendungen. Diese Daten verraten, welche Konten besonders schützenswert sind und wo sich mögliche Angriffspunkte für eine Privilegieneskalation verbergen könnten.
Mit seiner automatisierten Datensammlung bietet AzureADRecon eine effiziente Möglichkeit, die gesamte Entra-ID-Umgebung mit wenigen Befehlen zu durchleuchten. Für Angreifer ist dies ein entscheidender Schritt, der den Weg zu den nächsten Phasen der Kill Chain, wie Privilege Escalation und Lateral Movement, ebnet.
Bild 1: Die Cyber Kill Chain ist ein Modell, das den Lebenszyklus eines Cyberangriffs beschreibt. In der Recon(naissance)-Phase setzt AzureADRecon zur Aufklärung an.
Überblick und Installation
Das Open-Source-basierte AzureADRecon sammelt systematisch detaillierte Informationen aus einer Entra-ID-Umgebung und bereitet sie übersichtlich auf. Der Nutzer kann die Ergebnisse in verschiedenen Formaten exportieren, darunter HTML und Excel, was die Auswertung und Weiterverarbeitung erheblich erleichtert. Mit nur wenigen Befehlen liest AzureADRecon gezielt Informationen aus und fasst diese in einem strukturierten Bericht zusammen. Dazu gehören:
- Tenant
- Domain
- Licenses
- Users
- ServicePrincipals
- DirectoryRoles
- DirectoryRoleMembers
- Groups
- GroupMembers
- Devices
Dank der automatisierten Erfassung bietet AzureADRecon eine schnelle Möglichkeit, sich einen umfassenden Überblick über die Entra-ID-Umgebung zu verschaffen. Das Tool ist flexibel einsetzbar – egal ob für Sicherheitsanalysen oder zur Optimierung der eigenen IT-Umgebung.
Bild 2: Die von AzureADRecon erfassten Service Principals listen Apps auf, die Entra ID als Identity Provider verwenden, und geben somit Hinweise, welche Dienste bei kompromittierten Konten potenziell ausnutzbar sind.
Installation und Abhängigkeiten
Damit AzureADRecon reibungslos funktioniert, sind die im Kasten aufgelisteten Voraussetzungen erforderlich. Das Werkzeug ist kein PowerShell-Modul aus der PSGallery. Stattdessen laden Sie den Code direkt über GitHub. Dafür gibt es drei Wege: Entweder Sie laden AzureADRecon als ZIP-Datei über die GitHub-Weboberfläche herunter [2]. Oder Sie klonen das Git-Repository mit folgendem Befehl:
git clone https://github.com/adrecon/AzureADRecon.git
Als dritte Option laden Sie einen PowerShell-Einzeiler des Autors herunter – das hinterlegte Skript installiert auch gleich die notwendigen Voraussetzungen:
iex (iwr "https://raw.githubusercontent.com/philiplorenz-code/AzureADRecon/refs/heads/feature/setup/install.ps1" -UseBasicParsing)
Voraussetzungen für AzureADRecon
- .NET Framework 3.0 oder neuer (ab Windows 7 enthalten)- PowerShell 2.0 oder neuer (ab Windows 7 enthalten)- AzureAD PowerShell Module 3.0 oder neuer – installierbar mit Install-Module -Name AzureAD- Microsoft Graph Module für PowerShell Core, Excel-Generierung erfordert Windows, und die Berechtigungen (Scopes) "AuditLog.Read.All", "User.Read.All" und "UserAuthenticationMethod.Read.All" – installierbar mit Install-Module -Name Microsoft.Graph- Microsoft Excel für die Reportgenerierung empfehlenswert
Reporte generieren
Um AzureADRecon zu starten, führen Sie folgende Schritte aus:
1. Öffnen Sie eine PowerShell-Konsole.
2. Geben Sie den Pfad zum Skript an und bestätigen Sie mit Enter: C:\Scripts\ AzureADRecon.ps1
3. Falls Sie das Skript per Einzeiler-Installation heruntergeladen haben, können Sie es direkt im Anschluss ausführen.
Nach dem Start fordert das Tool den Benutzer zur Verifizierung via Entra ID auf. Anschließend beginnt der Scan der Umgebung. Die generierten CSV-Dateien sowie der aggregierte Excel-Report werden im angegebenen Output-Directory gespeichert. Der Excel-Bericht bietet eine übersichtliche Darstellung der Entra-ID-Objekte, einschließlich Benutzerkonten, Eigenschaften und hinterlegter Lizenzen.
Besonders interessant für Angreifer sind die erfassten Service Principals. Diese liefern Einblicke in verwendete Apps, die Entra ID als Identity Provider nutzen, und geben Hinweise darauf, welche Dienste bei kompromittierten Konten potenziell ausgenutzt werden können. Für Administratoren ist dieser Bericht ebenfalls wertvoll, um nicht mehr verwendete App-Registrierungen aufzuspüren.
AzureADRecon bietet die Möglichkeit, verschiedene Parameter beim Start des Skripts zu übergeben. Die Parameter geben Sie direkt beim Aufruf an, zum Beispiel mit
C:\Scripts\AzureADRecon.ps1 -OutputType "Excel" -Log
Eine Übersicht der wichtigsten Parameter finden Sie in der Tabelle. Diese Parameter ermöglichen eine feinere Steuerung des Scans und der Berichtsausgabe – ideal, um die Ergebnisse an spezifische Anforderungen anzupassen.
Wichtige Paramater für AzureADRecon
ParameterBeschreibungStandardwert
-Method
Zu verwendende Methode: AzureAD (Standard) oder MSGraph
AzureAD
-Credential
Anmeldeinformationen für die Domäne
-GenExcel
Generiert die aggregierte Excel-Datei im Ausgabeordner
-TenantID
Tenant-ID für Multi-Tenant-Umgebungen
-OutputDir
Speicherpfad für die Ausgabedateien
AzureAD
-Collect
Module, die gesammelt werden sollen (durch Komma getrennt)
AzureAD
-OutputType
Ausgabetyp: CSV, Excel, JSON, HTML
AzureAD
-DormantTimeSpan
Zeitraum für inaktive Konten (Tage)
30 Tage
-PassMaxAge
Maximales Kennwortalter für Maschinenkonten (Tage)
90 Tage
-Threads
Anzahl der Threads für die Verarbeitung
10
-Log
Aktiviert die Erstellung eines Protokolls (Start-Transcript)
Automatisierte Scans
Um regelmäßig aktuelle Informationen aus der Entra-ID-Umgebung zu erhalten, bietet sich eine automatisierte Ausführung von AzureADRecon an. Dies lässt sich bequem über den Windows Task Scheduler realisieren, der das Skript beispielsweise jede Nacht um 3 Uhr ausführt.
Durch die regelmäßige Automatisierung erhalten Administratoren täglich aktualisierte Berichte, ohne das Tool manuell ausführen zu müssen. Dies ermöglicht eine proaktive Überwachung der Umgebung und hilft, potenzielle Schwachstellen frühzeitig zu erkennen.
Scheduled Tasks können Sie natürlich über das GUI anlegen. Alternativ lässt sich der PowerShell-Code aus Listing 1 verwenden. Hierbei müssen Sie lediglich die Werte wie gewünscht anpassen. Relevant ist vor allem "$scriptPath". Diese Variable gibt an, welches Skript Sie regelmäßig laufen lassen wollen. Denn damit der Task ordnungsgemäß funktioniert, benötigen Sie das passende PowerShell-Skript, das den Aufruf von AzureADRecon mit den erforderlichen Parametern übernimmt. Dieses Skript finden Sie im Listing-Kasten 2. Das Skript speichern Sie in der Datei "runazadrecon.ps1".
Listing 1: Anlegen des Scheduled Tasks
$taskName = "RunAzADRecon" # Name des geplanten Tasks
$taskDescription = "Führt AzureADRecon jede Nacht um 3 Uhr aus."
$scriptPath = "C:\code\runazadrecon.ps1" # Pfad zum auszuführenden PowerShell-Skript
# Definition der Trigger, die den Task ausführen
$trigger = New-ScheduledTaskTrigger -Daily -At "03:00AM"
# Aktion definieren, die der Task ausführen soll
$action = New-ScheduledTaskAction -Execute "powershell.exe" -Argument "-NoProfile -WindowStyle Hidden -File $scriptPath"
# Optional: Einstellungen des Tasks definieren
$settings = New-ScheduledTaskSettingsSet -AllowStartIfOnBatteries -DontStopIfGoingOnBatteries -StartWhenAvailable
# Neuen Task registrieren
$registerParameters = @{
    TaskName = $taskParameters.TaskName
    Description = $taskParameters.Description
    Trigger = $trigger
    Action = $action
    Settings = $settings
}
Register-ScheduledTask @registerParameters
Listing 2: Skript "runazadrecon.ps1"
# Anmeldedaten hinterlegen
$mail = "<Nutzer>"
$pass = "<Kennwort>"
$outputDir = "<Pfad>" # Ort, an dem die Reports gespeichert werden
$parameters = @{
    Credential = New-Object System.Management.Automation.PSCredential (
        $mail,
        (ConvertTo-SecureString $pass -AsPlainText -Force)
    )
    OutputDir = $outputDir
}
# Aufruf des Skripts mit Splatting
C:\Scripts\AzureADRecon.ps1 @parameters
Ohne MFA sicher authentifizieren
Um eine automatisierte Anmeldung zu ermöglichen, benötigt das Skript Anmeldeinformationen (Benutzername und Passwort). Da Multifaktor-Authentifizierung (MFA) den automatisierten Zugriff verhindert, muss hier ein Benutzer zum Einsatz kommen, der keine MFA erfordert. Wir empfehlen dringend, das Kennwort nicht direkt im Skript zu hinterlegen, sondern es sicher zu speichern. Ein gängiger Ansatz ist die Nutzung des PowerShell Secret Vaults. Nur zur Vereinfachung nutzen wir in unserem Beispiel das Passwort direkt im Skript.
Um zu testen, ob der Scheduled Task wie erwartet funktioniert, öffnen Sie das GUI und wählen mit einem Rechtsklick auf den Task "Run" aus. Anschließend sollten die Daten gesammelt im Excel-Format in dem unter "$outputDir" definierten Verzeichnis liegen.
Fazit
AzureADRecon beweist, wie effizient und zielgerichtet sich Informationen aus einer Entra.ID-Umgebung sammeln lassen – und das mit minimalem Aufwand. Das Tool ist nicht nur für Admins und Sicherheitsverantwortliche ein wertvolles Werkzeug, um Schwachstellen frühzeitig zu erkennen, sondern es schärft auch den Blick für die Perspektive potenzieller Angreifer.
Die einfache Handhabung und die vielseitigen Exportmöglichkeiten, insbesondere der aggregierte Excel-Bericht, machen AzureADRecon zu einem nützlichen Werkzeug. Für Administratoren bietet sich die Gelegenheit, ungenutzte Ressourcen aufzuspüren, Konfigurationen zu prüfen und proaktiv Sicherheitsmaßnahmen zu verstärken.
(ln)
Link-Codes
[1] GitHub: AzureADRecon: https://github.com/adrecon/AzureADRecon