La première chose que font les attaquants une fois qu'ils ont accès à un compte de boîte aux lettres est de définir une règle de transfert de boîte aux lettres qui leur permet d'exfiltrer des données sensibles vers une adresse e-mail externe et de les utiliser à des fins malveillantes. Il est donc essentiel d’analyser votre environnement et de voir si des règles sont actives et ne sont pas configurées à de telles intentions. Dans cet article, vous apprendrez comment obtenir des règles de transfert de boîtes aux lettres dans Microsoft 365 – Exchange Online avec PowerShell.
La redirection externe estpar défaut désactivédans Microsoft 365, et vous devriez le conserver ainsi. Toutefois, s'il existe des raisons pour lesquelles le transfert externe doit être activé, vous devez créer une stratégie sortante et sélectionner les utilisateurs et les groupes autorisés à transférer le courrier externe.
Important:Créez une stratégie sortante selon laquelle seuls les utilisateurs et groupes sélectionnés peuvent transférer du courrier externe.
Les types de transfert automatique suivants sont disponibles dans Microsoft 365 :
- Les utilisateurs peuvent configurer les règles de la boîte de réception pour transférer automatiquement les messages vers des expéditeurs externes
- Les administrateurs peuvent configurer le transfert de boîte aux lettres (également appelé transfert SMTP) pour transférer automatiquement les messages vers des destinataires externes. L'administrateur peut choisir de simplement transférer les messages ou de conserver des copies des messages transférés dans la boîte aux lettres.
Connectez-vous à Exchange Online PowerShell
Avant de commencer, vous devez vous connecter à Exchange Online PowerShell. Sinon, les commandes ne fonctionneront pas.
Obtenir les règles de transfert de boîte aux lettres pour un seul utilisateur
Pour obtenir les règles de transfert de boîte aux lettres pour un seul utilisateur.
Lecture recommandée :Comment activer le transfert externe dans Microsoft 365
Get-Mailbox "[email protected]" | Where-Object { ($_.ForwardingAddress -ne $null) -or ($_.ForwardingsmtpAddress -ne $null) } | ft DisplayName, UserPrincipalName, ForwardingAddress, ForwardingSmtpAddress, DeliverToMailboxAndForwardLa sortie apparaîtra comme ceci.
DisplayName UserPrincipalName ForwardingAddress ForwardingSmtpAddress DeliverToMailboxAndForward
----------- ----------------- ----------------- --------------------- --------------------------
Amanda Morgan [email protected] smtp:[email protected] TrueObtenir la règle de transfert de boîte aux lettres pour tous les utilisateurs
Pour obtenir les règles de transfert de boîte aux lettres pour tous les utilisateurs
Get-Mailbox -ResultSize Unlimited | Where-Object { ($_.ForwardingAddress -ne $null) -or ($_.ForwardingsmtpAddress -ne $null) } | ft DisplayName, UserPrincipalName, ForwardingAddress, ForwardingSmtpAddress, DeliverToMailboxAndForwardLa sortie s'affichera comme ceci.
DisplayName UserPrincipalName ForwardingAddress ForwardingSmtpAddress DeliverToMailboxAndForward
----------- ----------------- ----------------- --------------------- --------------------------
Amanda Morgan [email protected] smtp:[email protected] True
Phil Peters [email protected] smtp:[email protected] True
SharedMailbox1 [email protected] smtp:[email protected] True
SharedMailbox2 [email protected] smtp:[email protected] FalseScript de rapport PowerShell de transfert de boîte aux lettres
Il est préférable d’exporter un rapport sur les règles de transfert de boîte aux lettres pour terminer le tout.
Pour obtenir un rapport dans un tableau interactif dans une fenêtre séparée, utilisons leVue hors grilleapplet de commande. Exportons-le également vers un fichier CSV dans le chemin du dossierC:temp.
# Connect Exchange Online PowerShell
Connect-ExchangeOnline
# Change the export path to your desired location
$exportPath = "C:tempForwardingAddress.csv"
# Retrieve mailboxes with forwarding addresses
$mailboxes = Get-Mailbox -ResultSize Unlimited | Where-Object { $_.ForwardingAddress -ne $null -or $_.ForwardingSmtpAddress -ne $null }
# Select the desired properties for display
$mailboxProperties = $mailboxes | select DisplayName, UserPrincipalName, ForwardingAddress, ForwardingSmtpAddress, DeliverToMailboxAndForward
# Show the results in an Out-GridView
$mailboxProperties | Out-GridView -Title "Mailboxes with Forwarding Addresses"
# Export all the data to a CSV file
$mailboxProperties | Export-Csv -Path $exportPath -NoTypeInformation -Encoding UTF8
Write-Host "Mailbox data has been exported to $exportPath" -ForegroundColor GreenVoici à quoi cela ressemble dans la fenêtre séparée.

Ouvrons le fichier CSV.

C'est ça!
Conclusion
Vous avez appris à obtenir des règles de transfert de boîtes aux lettres avec PowerShell dans Microsoft 365. Vérifiez toujours s'il existe des boîtes aux lettres avec transfert externe configurées dans l'organisation et bloquez les comptes si vous constatez une activité suspecte.
Avez-vous apprécié cet article ? Vous aimerez peut-être également Ajouter une balise aux e-mails externes dans Microsoft 365 pour plus de sécurité. N’oubliez pas de nous suivre et de partager cet article.













