Unified Audit Log und Entra-Anmeldeprotokolle exportieren
Schritt für Schritt: Purview Unified Audit Log sowie Anmelde- und Überwachungsprotokolle von Entra ID für einen BEC exportieren. Rollen, Limits, PowerShell.
Kurz gesagt. Exportieren Sie heute drei Dinge: das Unified Audit Log aus dem Microsoft-Purview-Portal (Audit → Search → Export), die interaktiven und nicht interaktiven Benutzeranmeldungen von Entra ID (Entra Admin Center → Monitoring & health → Sign-in logs → Download) und die Entra-Überwachungsprotokolle (gleiche Stelle, möglichst als JSON). Beginnen Sie mindestens 30 Tage vor dem ersten verdächtigen Ereignis. Achten Sie auf die Limits: 50.000 Zeilen pro Purview-Export mit Audit (Standard), 100.000 Anmeldezeilen und 250.000 Überwachungszeilen pro Entra-Download. Lassen Sie die Dateien unverändert.
Die meisten BEC-Untersuchungen, die im Sand verlaufen, scheitern an diesem Schritt, nicht an der Analyse. Jemand exportiert nur die interaktiven Anmeldungen des Opfers aus der letzten Woche, das Replay fand vor zwölf Tagen im nicht interaktiven Protokoll statt, und das Fazit lautet „nichts gefunden“. Exportieren Sie breit und filtern Sie erst bei der Analyse.
Vorab: Rollen und Zeitbedarf
| Quelle | Mindestrolle (geringste Rechte) | Wo |
|---|---|---|
| Unified Audit Log | Rolle Audit Logs oder View-Only Audit Logs in Purview | Microsoft-Purview-Portal → Audit |
| Entra-Anmeldungen | Reports Reader (Berichtsleser) | Microsoft Entra Admin Center |
| Entra-Überwachung | Reports Reader (Berichtsleser) | Microsoft Entra Admin Center |
Die Rollen stammen aus Microsofts Dokumentation zur Überwachungssuche und zum Herunterladen von Protokollen. Zwei Zeitfaktoren zählen. Überwachungseinträge erscheinen bei den Kerndiensten in der Regel 60 bis 90 Minuten nach dem Ereignis, manchmal später. Und eine breite Purview-Suche in einem großen Tenant kann Stunden dauern: Starten Sie sie zuerst und exportieren Sie die Entra-Protokolle, während sie läuft.
1. Das Unified Audit Log aus Purview exportieren
- Melden Sie sich beim Microsoft-Purview-Portal an und öffnen Sie Audit.
- Legen Sie den Datums- und Zeitbereich (UTC) fest. Der maximale Bereich pro Suche beträgt 180 Tage. Beginnen Sie mindestens 30 Tage vor der ersten verdächtigen E-Mail.
- Lassen Sie Activities und Record types im ersten Durchgang leer. Sie wollen alles: Postfächer, SharePoint, in das UAL gespiegelte Entra-ID-Ereignisse.
- Optional können Sie Users auf die verdächtigen Konten einschränken. Beim ersten Vorfall nehme ich lieber den ganzen Tenant: Password Spraying und Zustimmungs-Phishing treffen selten nur eine Person.
- Starten Sie die Suche, warten Sie auf Completed, öffnen Sie sie und wählen Sie Export.
Der Export ist eine CSV, deren Spalte AuditData den vollständigen JSON-Eintrag enthält. Diese Spalte ist der Beweis; die übrigen sind eine Zusammenfassung. Zum Lesen: Untersuchung des Unified Audit Log.
Zeilenlimits. Der Export unterstützt bis zu 50.000 Zeilen mit Audit (Standard) und bis zu 1.000.000 Zeilen mit Audit (Premium) (Microsoft Learn). Hat Ihr Export genau 50.000 Zeilen, ist er abgeschnitten. Teilen Sie die Suche nach Wochen oder Benutzern auf und exportieren Sie jeden Teil. Überlappende Exporte sind unproblematisch, wenn Ihr Analysewerkzeug anhand von RecordId / Id dedupliziert.
Alternative: Search-UnifiedAuditLog in PowerShell
Wenn das Portal in ein Zeitlimit läuft oder Sie reproduzierbare Exporte brauchen, verwenden Sie Exchange Online PowerShell. Das Cmdlet liefert standardmäßig 100 Einträge; -ResultSize geht bis 5.000, und mit Paging über -SessionCommand ReturnLargeSet sind bis zu 50.000 Ergebnisse pro Sitzung möglich (Cmdlet-Referenz):
Connect-ExchangeOnline
$sid = "bec-" + (Get-Date -Format yyyyMMddHHmmss)
$all = @()
do {
$page = Search-UnifiedAuditLog -StartDate "2026-08-15" -EndDate "2026-09-16" `
-SessionId $sid -SessionCommand ReturnLargeSet -ResultSize 5000
$all += $page
} while ($page.Count -gt 0)
$all | Export-Csv .\ual.csv -NoTypeInformation -Encoding UTF8
Drei Regeln: Behalten Sie für die gesamte Schleife dieselbe SessionId, mischen Sie nie ReturnLargeSet und ReturnNextPreviewPage in einer Sitzung (die Ausgabe fällt dann auf 10.000), und teilen Sie nach Datum auf, wenn Sie 50.000 erreichen. Für die programmatische Erfassung im großen Maßstab empfiehlt Microsoft die Office 365 Management Activity API.
Bevor Sie einem leeren Ergebnis trauen, prüfen Sie, ob die Überwachung aktiv ist. In Exchange Online PowerShell muss Get-AdminAuditLogConfig | Format-List UnifiedAuditLogIngestionEnabled den Wert True liefern. Ein Angreifer mit Administratorrechten kann sie abschalten; das Tool markiert Änderungen per Set-AdminAuditLogConfig als Manipulation der Überwachung.
2. Die Anmeldeprotokolle von Entra ID exportieren
- Gehen Sie im Microsoft Entra Admin Center zu Entra ID → Monitoring & health → Sign-in logs.
- Legen Sie den Datumsfilter fest. Das Portal enthält nur, was die Aufbewahrung behalten hat: 7 Tage mit Entra ID Free, 30 Tage mit P1/P2 (Datenaufbewahrung).
- Wählen Sie Download, dann CSV oder JSON, und laden Sie Interactive sign-ins und Non-interactive sign-ins herunter. Anwendungs- und Managed-Identity-Anmeldungen lohnen sich ebenfalls, wenn eine App beteiligt ist.
- Behalten Sie die ursprünglichen Dateinamen. Sie unterscheiden interaktiv von nicht interaktiv, und manche Tools (darunter M365 Forensics) nutzen sie, wenn der Eintrag es nicht angibt.
Limits. Bis zu 100.000 Anmeldeeinträge pro Datei. Größere Mengen laufen im Browser in ein Zeitlimit: Grenzen Sie den Zeitraum ein, filtern Sie nach den betroffenen Benutzern oder nutzen Sie die Graph-API (erfordert eine P1/P2-Lizenz) bzw. Diagnoseeinstellungen nach Log Analytics. Landen die Anmeldungen bereits in Log Analytics, ist ein KQL-Export von SigninLogs und AADNonInteractiveUserSignInLogs als JSON die vollständigste Option.
Warum nicht interaktiv wichtig ist. Wird ein gestohlenes Cookie oder Aktualisierungstoken wiederverwendet, gibt der Benutzer nichts ein. Entra ID protokolliert eine nicht interaktive Anmeldung von der IP des Angreifers mit derselben Session ID wie das Original. Das ist der Kern der Erkennung von Token-Replay.
Die Download-Varianten „authentication details“ werden für die hier beschriebene Analyse nicht benötigt; M365 Forensics überspringt sie und weist darauf hin.
3. Die Überwachungsprotokolle von Entra ID exportieren
- Gleiches Admin Center: Entra ID → Monitoring & health → Audit logs.
- Datum festlegen, Download, nach Möglichkeit JSON wählen. Die CSV flacht Ziele und geänderte Eigenschaften in nummerierte Spalten ab und behält nur einen Teil; JSON bewahrt jeden
modifiedProperties-Eintrag, und genau dort stehen die zugestimmten Berechtigungen und die neue MFA-Methode. - Bis zu 250.000 Überwachungseinträge pro Datei.
Viele Entra-Überwachungsereignisse (Zustimmungen, Rollenzuweisungen, App-Anmeldeinformationen) erscheinen auch im UAL unter dem Workload AzureActiveDirectory. Die Details einer MFA-Registrierung sind im Entra-Überwachungsprotokoll selbst oft klarer.
Export-Checkliste
| Datei | Umfasst | Übliches Limit | Nicht vergessen |
|---|---|---|---|
| Purview-Überwachungs-CSV | Postfächer, Dateien, Verwaltung, Entra-Spiegelung | 50.000 Zeilen (Standard) | Aufteilen, wenn das Limit erreicht ist |
| Interaktive Anmeldungen | Anmeldungen mit Passwort / MFA | 100.000 Zeilen, 7–30 Tage | Ganzer Tenant, wegen Password Spraying |
| Nicht interaktive Anmeldungen | Token-Nutzung, Replay | 100.000 Zeilen, 7–30 Tage | Meist die größte Datei |
| Entra-Überwachung | MFA, Zustimmungen, Rollen, Verbund | 250.000 Zeilen | JSON statt CSV |
Optional, falls vorhanden: die Ausgabe von Get-InboxRule -Mailbox <Benutzer> -IncludeHidden für den aktuellen Stand der Regeln und die Nachrichtenablaufverfolgung für gesendete E-Mails. Die aktuelle Version von M365 Forensics liest diese beiden Quellen noch nicht.
Dateien als Beweismittel behandeln
- Berechnen Sie für jede Datei direkt nach dem Download einen Hashwert (SHA-256) und notieren Sie, wer sie wann mit welchen Filtern exportiert hat.
- Bearbeiten Sie die Originale nie. Eine UAL-CSV in Excel zu öffnen und zu speichern kann das
AuditData-JSON und die Datumswerte beschädigen. - Speichern Sie Kopien außerhalb des kompromittierten Tenants (nicht im OneDrive des Opfers).
- Notieren Sie die Zeitzone: Die von Purview und Entra exportierten Zeitstempel sind UTC.
Nächster Schritt
Legen Sie die Dateien in M365 Forensics ab oder folgen Sie der Schritt-für-Schritt-Analyse. Fehlt etwas, das Sie erwartet haben, erklärt Aufbewahrung und fehlende Protokolle die üblichen Gründe.
Häufige Fragen
Wie viele Zeilen kann ich aus einer Purview-Überwachungssuche exportieren?
Microsoft nennt bis zu 50.000 Zeilen pro Export mit Audit (Standard) und bis zu 1.000.000 Zeilen mit Audit (Premium). Wenn Sie das Limit erreichen, teilen Sie die Suche nach Zeitraum oder Benutzer auf.
Brauche ich die nicht interaktiven Anmeldungen?
Ja. Wenn ein gestohlenes Sitzungscookie oder Aktualisierungstoken wiederverwendet wird, protokolliert Entra ID keine interaktiven, sondern nicht interaktive Anmeldungen. Ohne diese Datei bleibt Token-Replay unsichtbar.
Wie lange werden die Anmeldeprotokolle von Entra ID aufbewahrt?
Sieben Tage mit Microsoft Entra ID Free und 30 Tage mit P1 oder P2, sofern sie nicht an ein Speicherkonto oder Log Analytics weitergeleitet werden. Exportieren Sie sie zuerst.
Weiterführende Links
- Microsoft Learn: Durchsuchen des Überwachungsprotokolls, Herunterladen von Protokollen in Microsoft Entra ID
- Glossar: Unified Audit Log, AuditData
- Die Aktivität von Azure-Abonnements (Steuerungsebene) ist eine andere Protokollfamilie und wird auf azureforensics.app behandelt.