
EntraFalcon V20260824
Ein leichtgewichtiges PowerShell-Tool zur Bewertung der Sicherheitslage von Microsoft Entra ID-Umgebungen. Es hilft, privilegierte Objekte, riskante Zuweisungen und potenzielle Fehlkonfigurationen zu identifizieren.
EntraFalcon

EntraFalcon ist ein PowerShell-basiertes Assessment-Tool für Pentester, Sicherheitsanalysten und Systemadministratoren zur Bewertung der Sicherheitslage einer Microsoft Entra ID-Umgebung.
EntraFalcon wurde für eine einfache Nutzung entwickelt, läuft auf PowerShell 5.1 und 7, unterstützt sowohl Windows als auch Linux und erfordert keine zusätzlichen PowerShell-Module, keine zusätzlichen Installationen und keine Zustimmung zur Microsoft Graph API.
Das Tool hilft dabei, privilegierte Objekte, potenziell riskante Zuweisungen und Fehlkonfigurationen bei Conditional Access aufzudecken, die oft übersehen werden, wie zum Beispiel:
- Benutzer mit Kontrolle über hochprivilegierte Gruppen oder Anwendungen
- Externe oder interne Unternehmensanwendungen mit übermäßigen Berechtigungen (z. B. Microsoft Graph API, Azure-Rollen)
- Benutzer mit Azure IAM-Rollenzuweisungen direkt auf Ressourcen
- Privilegierte Konten, die von On-Premises synchronisiert werden
- Inaktive Benutzer oder Benutzer ohne MFA-Fähigkeit
- Ungeschützte Gruppen, die in sensiblen Zuweisungen verwendet werden (z. B. Conditional Access-Ausschlüsse, Subscription Owner oder berechtigtes Mitglied einer privilegierten Gruppe)
Die Ergebnisse werden in interaktiven HTML-Berichten präsentiert, um eine effiziente Erkundung und Analyse zu unterstützen.
🚀 Funktionen
- Einfaches PowerShell-Skript, kompatibel mit PowerShell 5.1 und 7. Läuft auf Windows und Linux
- Integrierte Authentifizierung mit Unterstützung mehrerer Methoden
- Verwendet First-Party-Microsoft-Anwendungen mit vorab zugestimmten Scopes, um Graph API-Zustimmungsaufforderungen zu umgehen
- Generiert navigierbare HTML-Berichte, die Filterung, Sortierung, Datenexport usw. unterstützen
- Führt über 90 automatisierte Prüfungen durch und fasst die Ergebnisse in einem Security Findings Report zusammen
- Enthält Prüfungen auf schwache Tenant-Konfigurationen und riskante Objekteigenschaften oder Berechtigungen
- Bietet Schweregradbewertungen sowie Beschreibungen des Problems, potenzieller Bedrohungen und Hinweise zur Behebung
- Listet betroffene Objekte auf und verlinkt direkt zu deren detaillierten Berichten für weitere Untersuchungen
- Führt eine grundlegende Bewertung von Auswirkung, Wahrscheinlichkeit und Risiko durch, um schwach geschützte hochprivilegierte Objekte hervorzuheben und die Daten zu sortieren.
- Zeigt Warnungen für riskante Konfigurationen und erhöhte Privilegien an
- Zählt Entra ID-Objekte auf, darunter:
- Benutzer (einschließlich Agent Users)
- Gruppen
- Unternehmensanwendungen
- App-Registrierungen
- Managed Identities
- Agent-Identitäten
- Agent Identity Blueprint Principals
- Agent Identity Blueprints
- PIM-Zuweisungen:
- PIM für Entra-Rollen
- PIM für Gruppen
- PIM für Azure-Rollen
- Entra-Rollenzuweisungen
- Azure-Rollenzuweisungen
- Intune RBAC-Zuweisungen
- Access Packages
- Entitlement Management-Kataloge
- Katalog-RBAC
- Conditional Access-Richtlinien
- Administrative Units
- PIM-Einstellungen:
- PIM für Entra-Rollen
- PIM für Gruppen (nur BroCi-Authentifizierung)
✅ Voraussetzungen
| Typ | Berechtigung | Erforderlich | Auswirkung bei Fehlen |
|---|---|---|---|
| Entra ID-Rolle | Global Reader | Ja | Skripte können nicht ausgeführt werden |
| Azure-Rolle | Reader: Auf jeder Management Group oder Subscription | Nein | Azure IAM-Zuweisungen können nicht bewertet werden |
Darüber hinaus müssen Sie sich von dem Gerät, auf dem Sie das Tool ausführen, bei der Microsoft Graph API und optional bei der Azure ARM API authentifizieren können. Stellen Sie sicher, dass Conditional Access-Richtlinien Ihre Authentifizierung nicht blockieren.
▶️ Verwendung
EntraFalcon herunterladen
Um zu beginnen, klonen Sie das Repository und navigieren Sie in das Projektverzeichnis:```powershell git clone https://github.com/CompassSecurity/EntraFalcon cd EntraFalcon
Hinweis: Möglicherweise müssen Sie die PowerShell-Ausführungsrichtlinie vorübergehend ändern, um das Skript auszuführen.
Tun Sie dies nur bei vertrauenswürdigen Skripten!```
Set-ExecutionPolicy -ExecutionPolicy Unrestricted -Scope Process
EntraFalcon ausführen
EntraFalcon enthält integrierte Unterstützung für die Entra ID-Authentifizierung. Verwenden Sie -AuthFlow, um den Authentifizierungsablauf auszuwählen.
Für normale Assessments verwenden Sie einen der Abläufe mit vollständiger Abdeckung:
| Empfohlener Ablauf | Am besten geeignet für | Plattform | Abdeckung |
|---|---|---|---|
BroCi (Standard) | Interaktive Windows-Ausführungen | Windows | Vollständig |
BroCiManualCode | Authentifizierung in einem anderen Browser | Windows, Linux, macOS | Vollständig |
BroCiToken | Vorhandenes Azure Portal-Aktualisierungstoken | Windows, Linux, macOS | Vollständig |
ServicePrincipal | Automatisierung / CI | Windows, Linux, macOS | Vollständig |
BroCi verwendet eine interaktive Anmeldung. BroCiToken und ServicePrincipal verwenden keine. Fallback-Benutzerabläufe können mehrere interaktive Anmeldungen erfordern, da separate Ressourcentoken angefordert werden.
Fallback-Authentifizierungsabläufe
Aufgrund des Fehlens vorab genehmigter First-Party-Anwendungen können die Fallback-Abläufe nicht die vollständige Enumeration (PIM for Groups, Access Packages, Catalogs) durchführen. Daher bleiben sie derzeit nur Fallback-Optionen.
| Ablauf | Nur verwenden, wenn | Plattform | Einschränkungen |
|---|---|---|---|
AuthCode | Legacy-Kompatibilität erforderlich ist | Windows | Teilweise Abdeckung. Kein eigenständiger Bericht für PIM for Groups, Access Packages oder Catalogs. |
DeviceCode | Browserbasierte Authentifizierung nicht möglich ist | Windows, Linux, macOS | Teilweise Abdeckung. Kein eigenständiger Bericht für PIM for Groups, Access Packages oder Catalogs. Einige Security Findings-Prüfungen werden mit reduzierter Tiefe ausgeführt. |
ManualCode | Die Authentifizierung über eine separate Browsersitzung abgeschlossen werden muss | Windows, Linux, macOS | Teilweise Abdeckung. Kein eigenständiger Bericht für PIM for Groups, Access Packages oder Catalogs. |
Empfohlen: BroCi-Ablauf (Standard / nur Windows)
BroCi verwendet alternative First-Party-Anwendungen und erfordert nur eine interaktive Anmeldung.
Es ist nützlich, wenn der Azure Active Directory PowerShell-Client eine Zuweisung erfordert und vermieden werden muss.```powershell
.\run_EntraFalcon.ps1
Explizite BroCi-Auswahl:```powershell
.\run_EntraFalcon.ps1 -AuthFlow BroCi
Empfohlen: BroCi + Manueller Code-Flow```powershell
.\run_EntraFalcon.ps1 -AuthFlow BroCiManualCode
1. Das Skript kopiert die Authentifizierungs-URL in die Zwischenablage.
2. Füge die URL in einen Browser ein (optional auf einem anderen Gerät für SSO-Unterstützung).
3. Öffne die Entwicklertools des Browsers und aktiviere im Netzwerk-Tab `Preserve log`.
4. Schließe die Authentifizierung ab.
5. Suche im Netzwerkprotokoll nach `code=1.` und kopiere die Anfrage-URL, die den Code enthält, in die Zwischenablage.
6. Drücke die Eingabetaste, um fortzufahren; das Skript liest den Code aus der Zwischenablage und schließt den Token-Erwerb ab.