Skip to content
3.0 preview2.3.0 stable

These docs describe the preview. Pick the version you run and every page marks what it doesn't have yet. Get the preview →
Maester 2.x docs (archived) →

Sponsor

(L1) Ensure mailbox audit actions are configured

CIS.M365.6.1.2MediumExchange OnlineMailbox auditingPreview 3.0

Part of CIS · Exchange Online · Mailbox auditing · All checks

Run this check
Invoke-Maester -TestId CIS.M365.6.1.2

Every user mailbox audits the recommended set of actions for administrators, delegates and mailbox owners.

Exchange Online audits a default set of actions. Some actions that matter in an investigation, such as MailItemsAccessed, which shows which messages an attacker read, and the actions that change inbox rules and folder permissions, are not part of every default set, or an administrator may have reduced the list.

The test looks at all user mailboxes and lists those that have auditing disabled or miss one of the recommended actions. A listed mailbox needs the recommended actions added to its own audit settings. If the tenant has no user mailboxes, the check is not applicable and is skipped. Microsoft Purview Audit (Standard) is enough for the default set, and MailItemsAccessed needs a licence that includes Audit (Premium) for some users.

  1. Connect to Exchange Online with Connect-ExchangeOnline.
  2. Run the following script to add the CIS audit actions to every user mailbox while preserving any additional actions already configured. It also enables auditing and sets the audit log age limit to 180 days as shown in the CIS remediation procedure.
$AuditAdmin = @(
'ApplyRecord', 'Copy', 'Create', 'FolderBind', 'HardDelete',
'MailItemsAccessed', 'Move', 'MoveToDeletedItems', 'SendAs',
'SendOnBehalf', 'Send', 'SoftDelete', 'Update',
'UpdateCalendarDelegation', 'UpdateFolderPermissions', 'UpdateInboxRules'
)
$AuditDelegate = @(
'ApplyRecord', 'Create', 'FolderBind', 'HardDelete', 'Move',
'MailItemsAccessed', 'MoveToDeletedItems', 'SendAs', 'SendOnBehalf',
'SoftDelete', 'Update', 'UpdateFolderPermissions', 'UpdateInboxRules'
)
$AuditOwner = @(
'ApplyRecord', 'Create', 'HardDelete', 'MailboxLogin', 'Move',
'MailItemsAccessed', 'MoveToDeletedItems', 'Send', 'SoftDelete',
'Update', 'UpdateCalendarDelegation', 'UpdateFolderPermissions', 'UpdateInboxRules'
)
$Mailboxes = Get-EXOMailbox -RecipientTypeDetails UserMailbox -PropertySets Audit,Minimum -ResultSize Unlimited
foreach ($Mailbox in $Mailboxes) {
Set-Mailbox -Identity $Mailbox.UserPrincipalName `
-AuditEnabled $true `
-AuditLogAgeLimit 180 `
-AuditAdmin @{ Add = $AuditAdmin } `
-AuditDelegate @{ Add = $AuditDelegate } `
-AuditOwner @{ Add = $AuditOwner }
}
  1. Check the result with Get-EXOMailbox -RecipientTypeDetails UserMailbox -PropertySets Audit,Minimum -ResultSize Unlimited and confirm AuditEnabled and the required actions are present.
Every attribute of this check
FieldValue
Test IDCIS.M365.6.1.2
SeverityMedium
SuiteCIS
ProductExchange Online
FeatureMailbox auditing
AreaLogging and detection
Resource typeMailbox
User impactLow
Implementation costLow
MITRE ATT&CKT1685.002 Disable or Modify Cloud Log
Supports benchmarkCIS Microsoft 365 Foundations Benchmark (version 7.0.0), requirement 6.1.2
Benchmark levelL1
Benchmark profilesE3 Level 1
Supports controlscis-m365:6.1.2, nist-800-53-r5:AU-12
PowerShell testTest-MtCisMailboxAuditAction
ServicesExchangeOnline