Le journal d’audit unifié
Le journal d’audit unifié centralise les activités d’Exchange, SharePoint, OneDrive, Teams et Entra ID. Il est activé par défaut dans les nouveaux tenants, mais nous le trouvons encore parfois désactivé. Deux vérifications dans Exchange Online PowerShell :
Connect-ExchangeOnline -ShowBanner:$false
# Journal d'audit unifié : doit renvoyer True
Get-AdminAuditLogConfig | Select-Object UnifiedAuditLogIngestionEnabled
# Audit des boîtes aux lettres : doit renvoyer False (audit non désactivé)
Get-OrganizationConfig | Select-Object AuditDisabledS’assurer que des événements arrivent
Une configuration active ne garantit pas que les événements sont bien consignés. Une recherche sur les dernières 24 heures le confirme :
Search-UnifiedAuditLog -StartDate (Get-Date).AddDays(-1) -EndDate (Get-Date) -ResultSize 10 |
Select-Object CreationDate, UserIds, OperationsAucun résultat dans un tenant actif mérite une investigation : journal récemment activé, permissions insuffisantes ou ingestion désactivée.
Combien de temps les journaux sont conservés
Les durées de rétention par défaut sont souvent plus courtes qu’on ne le pense, et un incident est souvent découvert des semaines après le début de l’intrusion :
- Journal d’audit (Audit Standard) : 180 jours.
- Audit Premium (licences E5 ou module complémentaire) : un an par défaut, extensible.
- Journaux de connexion Entra ID : 7 jours sans licence P1, 30 jours avec P1 ou P2.
Pour aller au-delà, nous recommandons d’exporter les journaux vers un espace de travail Log Analytics ou un SIEM, avec une durée de conservation adaptée à vos obligations.
Un signal à vérifier : les règles de transfert
Après la compromission d’une boîte aux lettres, les attaquants créent souvent une règle qui transfère discrètement les courriels vers l’extérieur. Cette commande liste les règles de boîte de réception qui transfèrent ou redirigent des messages :
Get-Mailbox -ResultSize Unlimited | ForEach-Object {
Get-InboxRule -Mailbox $_.UserPrincipalName |
Where-Object { $_.ForwardTo -or $_.ForwardAsAttachmentTo -or $_.RedirectTo }
} | Select-Object MailboxOwnerId, Name, ForwardTo, RedirectToDans un grand tenant, cette commande peut être longue : limitez d’abord aux comptes privilégiés et aux postes sensibles (finances, direction). Toute règle de transfert vers une adresse externe inconnue doit être validée avec l’utilisateur.
Et ensuite ?
Cette série couvre les vérifications que nous jugeons prioritaires. Un audit complet ajoute le partage externe, les applications tierces et, le cas échéant, l’environnement Azure.
Vous préférez qu’on s’en charge ? Voyez notre service Sécurité Microsoft 365 et Azure ou écrivez-nous.