Jak wyeksportować zunifikowany dziennik inspekcji Microsoft 365

Jak wyeksportować zunifikowany dziennik inspekcji Microsoft 365

SOC Prime Team
SOC Prime Team linkedin icon Śledź

Portal Purview (Audyt → Wyszukiwanie) pozwala przeszukiwać Zunifikowany Dziennik Audytu i eksportować wyniki do pliku CSV. Całe zdarzenie znajduje się w jednej kolumnie, AuditData, jako blob JSON. Aby uzyskać czysty JSON, jedno zdarzenie na linię, użyj Exchange Online PowerShell i Search-UnifiedAuditLog. Skrypt znajduje się poniżej. Standardowy czas przechowywania audytu wynosi 180 dni; Audyt (Premium) domyślnie przechowuje rok.

Zunifikowany Dziennik Audytu obejmuje Exchange, SharePoint, OneDrive, Teams i aktywność administracyjną w jednym miejscu. W przypadku przejęcia biznesowej skrzynki e-mail to miejsce, gdzie można zauważyć reguły skrzynki odbiorczej, przekazywanie i masowe pobieranie. Prime Core ma 79 reguł wykrywania dla danych audytu Microsoft 365, powiązanych z 33 technikami MITRE ATT&CK. Wśród nich: reguły przekazywania, które wyprowadzają pocztę (T1114.003), dodatkowe uprawnienia do skrzynki pocztowej (T1098.002) oraz dane pobierane z SharePoint (T1213.002).

Rozpocznij za darmo

Zanim zaczniesz

Czy audyt jest włączony? Domyślnie w większości dzierżaw, ale sprawdź:

Connect-ExchangeOnline

Get-AdminAuditLogConfig | Format-List UnifiedAuditLogIngestionEnabled

True to, czego chcesz. Jeśli jest False, nic nie było rejestrowane, a włączenie tego nie uzupełni zapisów.

Role. Potrzebujesz roli Audit Logs lub View-Only Audit Logs. Potrzebujesz też modułu ExchangeOnlineManagement (Install-Module ExchangeOnlineManagement).

Opóźnienie. Zdarzenia nie pojawiają się natychmiast. Większość pojawia się w ciągu jednej lub dwóch godzin, niektóre trwają dłużej. Jeśli ścigasz coś z tego ranka, może jeszcze nie być dostępne do wyszukiwania.

Eksport za pomocą PowerShell

Search-UnifiedAuditLog zwraca maksymalnie 5 000 rekordów na jedno wywołanie. Z ID sesji i ReturnLargeSet można przewijać do 50 000 na jedno wyszukiwanie. Ta pętla to robi i zapisuje dane AuditData każdego rekordu, już jako JSON, w jednej linii:

$session = [guid]::NewGuid().ToString()

$out = "ual_2026-10-19.jsonl"

do {

    $batch = Search-UnifiedAuditLog -StartDate "2026-10-19 00:00" -EndDate "2026-10-20 00:00" `

             -SessionId $session -SessionCommand ReturnLargeSet -ResultSize 5000

    $batch | ForEach-Object { $_.AuditData } | Add-Content $out

} while ($batch.Count -eq 5000)

Dziennik zapisuje czasy w UTC. Pamiętaj o tym, ustawiając okno.

Co należy szukać

OperacjaDlaczego to jest ważne
New-InboxRule, Set-InboxRule, UpdateInboxRulesReguły, które przekazują, przenoszą lub usuwają pocztę; sprawdź parametry w AuditData
Set-Mailbox z ForwardingSmtpAddressPrzekierowywanie na poziomie skrzynki pocztowej do zewnętrznego adresu
Add-MailboxPermission, Add-RecipientPermissionKtoś zdobywa dostęp do innej skrzynki pocztowej
MailItemsAccessedKtóre wiadomości zostały faktycznie przeczytane; kluczowe dla zakresu naruszenia
FileDownloaded, FileSyncDownloadedFull burstsMasowe pobieranie z SharePoint lub OneDrive
Zgoda na aplikacjęZłośliwa aplikacja uzyskała dostęp do poczty lub plików

Klasyczna sekwencja BEC: logowanie z nowej lokalizacji, a następnie w ciągu kilku minut reguła skrzynki odbiorczej, która przenosi odpowiedzi od zespołu finansowego do niejasnego folderu.

Prześlij, wyczyść i przeglądaj w LogTotal

  • Prześlij. Otwórz logtotal.com i wrzuć plik .jsonl.
  • Wyczyść. 
  • Przegląd.

Gdy coś pójdzie nie tak

ObjawPrawdopodobna przyczynaFix
Search-UnifiedAuditLog nie jest rozpoznawanyBrak połączenia z Exchange Online PowerShellNajpierw połącz się z ExchangeOnline
Brak wynikówAudyt wyłączony, zdarzenia zbyt nowe lub poza okresem retencjiSprawdź przechwytywanie; poczekaj; sprawdź swój poziom audytu
Dokładnie 5 000 wynikówPrzekroczony limit połączeń bez sesjiUżyj pętli sesji powyżej
Zatrzymany na 50 000Limit sesjiPodziel okno na mniejsze kawałki
Odmowa dostępuBrak roli audytuPoproś o View-Only Audit Logs

FAQ

Czy to nie to samo co dzienniki logowania Entra?

Nakładają się: UAL ma zdarzenia UserLoggedIn. Ale dla szczegółów uwierzytelnienia (MFA, Dostęp Warunkowy, ryzyko), dzienniki logowania Entra są znacznie bogatsze. Eksportuj oba.

Co z Management Activity API?

To jest ścieżka do ciągłego zbierania do SIEM. Dla jednorazowego śledztwa, PowerShell jest prostszy.

Dołącz do platformy Detection as Code firmy SOC Prime aby zwiększyć widoczność zagrożeń najbardziej istotnych dla Twojego biznesu. Aby pomóc Ci rozpocząć i natychmiast uzyskać wartość, umów się teraz na spotkanie z ekspertami SOC Prime.