Exchange mailbox activities (per-item)

OperationDescriptionSampleRule
anyCatch-all for M365-ExchangeItem rules matching the RecordType but no specific Operation.NY
Add-MailboxFolderPermissionA permission entry was added to a mailbox folder (UAL operation AddFolderPermissions), granting a delegate access to a specific folder.NY
Add-MailboxPermissionFullAccess (delegate) mailbox permission was granted, allowing another user to access the mailbox; logged as a mailbox activity even when an admin performs it.NY
AddFolderPermissionsPermissions were added to a mailbox folder, granting another user access to the folder's contents.YY
CreateCreate activity in Exchange mailbox, recorded in the Unified Audit Log (observed in first-party capture).YN
HardDeleteA mailbox item was permanently deleted (hard-deleted) and is not recoverable from the Deleted Items folder.NY
MailboxLoginA sign-in to a mailbox was recorded by Exchange mailbox auditing.YN
ModifyFolderPermissionsPermissions on a mailbox folder were modified, changing who can access the folder's contents.YY
MoveToDeletedItemsA mailbox item was moved to the Deleted Items folder.NY
SendThe mailbox user sent, replied to, or forwarded an email message (mailbox Send action).YY
SendAsA message was sent using the SendAs permission, sending as though it came from the mailbox owner; a common impersonation technique.YY
SendOnBehalfA message was sent using the SendOnBehalf permission, sending on behalf of the mailbox owner.NY
SoftDeleteA mailbox item was soft-deleted (moved to the Recoverable Items / Deleted Items dumpster and recoverable by the user).NY
UpdateUpdate activity in Exchange mailbox, recorded in the Unified Audit Log (observed in first-party capture).YN
UpdateInboxRulesAn inbox rule was added, removed, or changed; inbox rules process Inbox messages by condition and are commonly abused for auto-forwarding or evidence deletion.YY

any: Exchange mailbox activities (per-item) (catch-all)

#
RecordType
ExchangeItem

Description

Catch-all for M365-ExchangeItem rules matching the RecordType but no specific Operation.

Detection Fields #

Fields referenced by at least one attached detection rule. This view counts distinct rules and is not a complete event schema.

NameRulesVendors
Operation2 detection rulesSplunk
Workload2 detection rulesSplunk

Common Indicators #

Positive field/value combinations most frequently checked by detection rules targeting this event, derived from cross-vendor predicate analysis. This is separate from Fields accounting, which also includes exclusions and counts distinct attached rules.

FieldKindValueRulesVendors
m365::Folder.Path (splunk rule field)in\\recoverable items\\deletions2 rulessplunk
m365::Folder.Path (splunk rule field)in\\sent items2 rulessplunk
Status (splunk rule field)eqdelivered1 rulesplunk

Detection Rules #

Full rule details for this event, including ATT&CK technique mappings and native queries →

Splunk #

References #

Add-MailboxFolderPermission

#
RecordType
ExchangeItem

Description

A permission entry was added to a mailbox folder (UAL operation AddFolderPermissions), granting a delegate access to a specific folder.

Detection Fields #

Fields referenced by at least one attached detection rule. This view counts distinct rules and is not a complete event schema.

NameRulesVendors
Operation3 detection rulesKusto, Splunk
UserId2 detection rulesKusto
TimeGenerated1 detection ruleKusto
Workload1 detection ruleSplunk

Detection Rules #

Full rule details for this event, including ATT&CK technique mappings and native queries →

Splunk #

Kusto #

  • High risk Office operation conducted by IP Address that recently attempted to log into a disabled account source medium: It is possible that a disabled user account is compromised and another account on the same IP is used to perform operations that are not typical for that user. The query filters the SigninLogs for entries where ResultType is indicates a disabled account and the TimeGenerated is within a defined time range. It then summarizes these entries by IPAddress and AppId, calculating various statistics such as number of login attempts, distinct UPNs, App IDs etc and joins these results with another set of results from SigninLogs, filtering for entries with less than normal number of successful sign-ins. It then filters out entries where there were no successful sign-ins or where successful sign-ins did not occur within the same lookback period as the failed sign-ins, later projecting relevant fields by the count of login attempts, and expands the set of successful sign-ins into individual events. Finally, it joins these results with entries from OfficeActivity where certain operations deemed rare and high risk have been performed, ensuring their occurrance within a certain time range of the successful sign-ins.T1078, T1098, T1114↳ also matches Add-MailboxPermission
  • Rare and potentially high-risk Office operations source low: Identifies Office operations that are typically rare and can provide capabilities useful to attackers.T1098, T1114↳ also matches Add-MailboxPermission

References #

Add-MailboxPermission

#
RecordType
ExchangeItem

Description

FullAccess (delegate) mailbox permission was granted, allowing another user to access the mailbox; logged as a mailbox activity even when an admin performs it.

Detection Fields #

Fields referenced by at least one attached detection rule. This view counts distinct rules and is not a complete event schema.

NameRulesVendors
Operation4 detection rulesKusto, Splunk
UserId2 detection rulesKusto
AccessRights1 detection ruleSplunk
event.action1 detection ruleElastic
event.outcome1 detection ruleElastic
event.provider1 detection ruleElastic
o365.audit.Parameters.AccessRights1 detection ruleElastic
ResultStatus1 detection ruleKusto
TimeGenerated1 detection ruleKusto
user.id1 detection ruleElastic
UserType1 detection ruleElastic
Workload1 detection ruleSplunk

Common Indicators #

Positive field/value combinations most frequently checked by detection rules targeting this event, derived from cross-vendor predicate analysis. This is separate from Fields accounting, which also includes exclusions and counts distinct attached rules.

FieldKindValueRulesVendors
AccessRightseqfullaccess2 ruleselastic, splunk
AccessRights (splunk rule field)eqchangeowner1 rulesplunk
AccessRights (splunk rule field)eqchangepermission1 rulesplunk
Parameters[3].Value (kusto rule field)containsfullaccess1 rulekusto
ResultStatus (kusto rule field)eqTrue1 rulekusto
event.outcome (elastic rule field)eqsuccess1 ruleelastic

Detection Rules #

Full rule details for this event, including ATT&CK technique mappings and native queries →

Elastic #

  • M365 Exchange Mailbox High-Risk Permission Delegated source low: Identifies the assignment of rights to access content from another mailbox. An adversary may use the compromised account to send messages to other accounts in the network of the target organization while creating inbox rules, so messages can evade spam/phishing detection mechanisms.T1098, T1098.002

Splunk #

Kusto #

  • High risk Office operation conducted by IP Address that recently attempted to log into a disabled account source medium: It is possible that a disabled user account is compromised and another account on the same IP is used to perform operations that are not typical for that user. The query filters the SigninLogs for entries where ResultType is indicates a disabled account and the TimeGenerated is within a defined time range. It then summarizes these entries by IPAddress and AppId, calculating various statistics such as number of login attempts, distinct UPNs, App IDs etc and joins these results with another set of results from SigninLogs, filtering for entries with less than normal number of successful sign-ins. It then filters out entries where there were no successful sign-ins or where successful sign-ins did not occur within the same lookback period as the failed sign-ins, later projecting relevant fields by the count of login attempts, and expands the set of successful sign-ins into individual events. Finally, it joins these results with entries from OfficeActivity where certain operations deemed rare and high risk have been performed, ensuring their occurrance within a certain time range of the successful sign-ins.T1078, T1098, T1114↳ also matches Add-MailboxFolderPermission
  • Detecting Impossible travel with mailbox permission tampering & Privilege Escalation attempt source medium: This hunting query will alert on any Impossible travel activity in correlation with mailbox permission tampering followed by account being added to a PIM managed privileged group. Ensure this impossible travel incident with increase of privileges is legitimate in your environment.T1078, T1548
  • Rare and potentially high-risk Office operations source low: Identifies Office operations that are typically rare and can provide capabilities useful to attackers.T1098, T1114↳ also matches Add-MailboxFolderPermission

References #

AddFolderPermissions

#
RecordType
ExchangeItem

Description

Permissions were added to a mailbox folder, granting another user access to the folder's contents.

Detection Fields #

Fields referenced by at least one attached detection rule. This view counts distinct rules and is not a complete event schema.

NameRulesVendors
object1 detection ruleSplunk
Operation1 detection ruleSplunk
Workload1 detection ruleSplunk

Example Audit Record #

{
  "ClientIP": "::1",
  "ClientIPAddress": "::1",
  "ClientInfoString": "Client=WebServices;Action=ConfigureGroupMailbox",
  "CreationTime": "2026-07-04T16:14:07Z",
  "ExternalAccess": true,
  "Id": "a13c7c20-7e3e-4b97-60c5-08ded9e74629",
  "InternalLogonType": 1,
  "Item": {
    "Id": "LgAAAABMYtd4GPx9R7PxdHNLUNBPAQAuIGs53Y6iSr2GkXQN/2i/AAAAAAENAAAC",
    "ImmutableId": "ErrorDuringIdConversion",
    "ParentFolder": {
      "Id": "LgAAAABMYtd4GPx9R7PxdHNLUNBPAQAuIGs53Y6iSr2GkXQN/2i/AAAAAAENAAAC",
      "MemberRights": "ReadAny, Create, EditOwned, DeleteOwned, EditAny, DeleteAny, Visible, FreeBusySimple, FreeBusyDetailed",
      "MemberSid": "S-1-8-3887482716-1326096224-1882406844-699167947-0",
      "MemberUpn": "Owner@local",
      "Name": "Calendar",
      "Path": "\\Calendar"
    }
  },
  "LogonType": 1,
  "LogonUserSid": "S-1-5-80-447828073-3829008076-3733868015-3112024911-3885364408",
  "MailboxGuid": "e7b6475c-9f60-4f0a-bc3f-3370cb74ac29",
  "MailboxOwnerMasterAccountSid": "S-1-5-10",
  "MailboxOwnerSid": "S-1-5-21-2202824495-2635967380-1894632064-35782174",
  "MailboxOwnerUPN": "AllCompany.181245214720.zzjydiec@example.onmicrosoft.com",
  "Operation": "AddFolderPermissions",
  "OrganizationId": "00000000-0000-0000-0000-000000000001",
  "OrganizationName": "example.onmicrosoft.com",
  "OriginatingServer": "DS4PR16MB7145 (15.20.4200.000)\r\n",
  "RecordType": 2,
  "ResultStatus": "Succeeded",
  "UserId": "S-1-5-80-447828073-3829008076-3733868015-3112024911-3885364408",
  "UserKey": "00000000-0000-0000-0000-000000000000",
  "UserType": 2,
  "Version": 1,
  "Workload": "Exchange"
}

Common Indicators #

Positive field/value combinations most frequently checked by detection rules targeting this event, derived from cross-vendor predicate analysis. This is separate from Fields accounting, which also includes exclusions and counts distinct attached rules.

FieldKindValueRulesVendors
group.name (splunk rule field)necalendar1 rulesplunk
group.name (splunk rule field)necontacts1 rulesplunk
group.name (splunk rule field)nepersonmetadata1 rulesplunk

Detection Rules #

Full rule details for this event, including ATT&CK technique mappings and native queries →

Splunk #

References #

Create

#
RecordType
ExchangeItem

Description

Create activity in Exchange mailbox, recorded in the Unified Audit Log (observed in first-party capture).

Example Audit Record #

{
  "ActorInfoString": "Client=REST;python-requests/2.34.2[AppId=22222222-2222-2222-2222-222222222222];",
  "AppAccessContext": {
    "AADSessionId": "0022840a-e4ab-884c-587f-d20d24637227",
    "APIId": "00000003-0000-0000-c000-000000000000",
    "ClientAppId": "22222222-2222-2222-2222-222222222222",
    "IssuedAtTime": "2026-07-04T15:04:45Z",
    "UniqueTokenId": "pO6tpCIhWEeDjtm8HsIAAA"
  },
  "AppId": "00000003-0000-0000-c000-000000000000",
  "AuthType": "MSAuth1.0",
  "ClientAppId": "22222222-2222-2222-2222-222222222222",
  "ClientIP": "203.0.113.10",
  "ClientIPAddress": "203.0.113.10",
  "ClientInfoString": "Client=REST;;",
  "ClientRequestId": "1a689a70-c828-402c-82e8-10b44c2bee66",
  "CreationTime": "2026-07-04T15:09:47Z",
  "ExternalAccess": false,
  "HostAppId": "c999ed3e-27ae-4cb3-b3a2-46b056af63d3",
  "Id": "f43f0730-a65d-4238-97d9-08ded9de49be",
  "InternalLogonType": 0,
  "Item": {
    "Id": "RgAAAAAXRoXzP5fNR6PyEo/HqixABwA7mE7t4w9CSqNKCbVE7kkMAAAAAAEPAAA7mE7t4w9CSqNKCbVE7kkMAABt2TLTAAAJ",
    "ImmutableId": "LgAAAAAdhAMRqmYRzZvIAKoAL8RaDQA7mE7t4w9CSqNKCbVE7kkMAABt2ebvAAAJ",
    "InternetMessageId": "<SA1PR16MB4707133E40F11D3AF6535600A2F32@SA1PR16MB4707.namprd16.prod.outlook.com>",
    "IsRecord": false,
    "ParentFolder": {
      "Id": "LgAAAAAXRoXzP5fNR6PyEo/HqixAAQA7mE7t4w9CSqNKCbVE7kkMAAAAAAEPAAAB",
      "Path": "\\Drafts"
    },
    "SizeInBytes": 2824,
    "Subject": "dw-harness-afc127f4 move-test"
  },
  "LogonType": 0,
  "LogonUserSid": "S-1-5-21-2202824495-2635967380-1894632064-31996139",
  "MailboxGuid": "2bc72b5a-02f0-45d2-97a2-5f0152098603",
  "MailboxOwnerSid": "S-1-5-21-2202824495-2635967380-1894632064-31996139",
  "MailboxOwnerUPN": "adminuser@example.onmicrosoft.com",
  "Operation": "Create",
  "OrganizationId": "00000000-0000-0000-0000-000000000001",
  "OrganizationName": "example.onmicrosoft.com",
  "OriginatingServer": "SA1PR16MB4707 (15.20.4200.000)\r\n",
  "RecordType": 2,
  "ResultStatus": "Succeeded",
  "SessionId": "0022840a-e4ab-884c-587f-d20d24637227",
  "TokenObjectId": "11111111-1111-1111-1111-111111111111",
  "TokenTenantId": "00000000-0000-0000-0000-000000000001",
  "TokenType": "AadPft",
  "UserId": "adminuser@example.onmicrosoft.com",
  "UserKey": "10000000AAAAAAAA",
  "UserType": 0,
  "Version": 1,
  "Workload": "Exchange"
}

References #

HardDelete

#
RecordType
ExchangeItem

Description

A mailbox item was permanently deleted (hard-deleted) and is not recoverable from the Deleted Items folder.

Detection Fields #

Fields referenced by at least one attached detection rule. This view counts distinct rules and is not a complete event schema.

NameRulesVendors
Operation5 detection rulesSplunk
Workload5 detection rulesSplunk
Folder.Path4 detection rulesSplunk
event.action1 detection ruleElastic
event.outcome1 detection ruleElastic
event.provider1 detection ruleElastic
o365.audit.AffectedItems.Subject1 detection ruleElastic

Common Indicators #

Positive field/value combinations most frequently checked by detection rules targeting this event, derived from cross-vendor predicate analysis. This is separate from Fields accounting, which also includes exclusions and counts distinct attached rules.

FieldKindValueRulesVendors
m365::Folder.Path (splunk rule field)in\\recoverable items\\deletions4 rulessplunk
m365::Folder.Path (splunk rule field)in\\sent items4 rulessplunk
subject (splunk rule field)in*account recovery*2 rulessplunk
subject (splunk rule field)in*banking*2 rulessplunk
subject (splunk rule field)in*direct deposit*2 rulessplunk
subject (splunk rule field)in*mfa *2 rulessplunk
subject (splunk rule field)in*otp *2 rulessplunk
subject (splunk rule field)in*passcode *2 rulessplunk
subject (splunk rule field)in*password *2 rulessplunk
subject (splunk rule field)in*pay-to*2 rulessplunk
Status (splunk rule field)eqdelivered1 rulesplunk
count (splunk rule field)gt501 rulesplunk

Detection Rules #

Full rule details for this event, including ATT&CK technique mappings and native queries →

Elastic #

  • M365 Exchange MFA Notification Email Deleted or Moved source low: Identifies when an MFA enrollment, registration, or security notification email is deleted or moved to deleted items in Microsoft 365 Exchange. Adversaries who compromise accounts and register their own MFA device often delete the notification emails to cover their tracks and prevent the legitimate user from noticing the unauthorized change. This technique is commonly observed in business email compromise (BEC) and account takeover attacks.T1070, T1070.008, T1098, T1098.005↳ also matches MoveToDeletedItems, SoftDelete

Splunk #

References #

MailboxLogin

#
RecordType
ExchangeItem

Description

A sign-in to a mailbox was recorded by Exchange mailbox auditing.

Example Audit Record #

{
  "ClientIP": "223.236.114.61",
  "ClientIPAddress": "223.236.114.61",
  "ClientInfoString": "Client=/owa/SuiteServiceProxy.aspx; Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.88 Safari/537.36",
  "CreationTime": "2020-12-16T04:57:50",
  "ExternalAccess": false,
  "Id": "ef8f13e2-d588-483c-0a0c-08d8a17f2384",
  "InternalLogonType": 0,
  "LogonType": 0,
  "LogonUserSid": "S-1-5-21-2181005278-2312080842-1333184807-3028140",
  "MailboxGuid": "49277dc2-e091-4bf8-96a8-695246b9d09b",
  "MailboxOwnerSid": "S-1-5-21-2181005278-2312080842-1333184807-3028140",
  "MailboxOwnerUPN": "admin@a830edad9050849NDA3079.onmicrosoft.com",
  "Operation": "MailboxLogin",
  "OrganizationId": "2ed28a74-1f6f-4829-8530-fe359c77d35c",
  "OrganizationName": "a830edad9050849NDA3079.onmicrosoft.com",
  "OriginatingServer": "CY4PR12MB1445",
  "RecordType": 2,
  "ResultStatus": "Succeeded",
  "SessionId": "4ffecc86-c88d-4521-be31-450c4daebbdc",
  "UserId": "admin@a830edad9050849NDA3079.onmicrosoft.com",
  "UserKey": "10037FFE8EC1E08E",
  "UserType": 0,
  "Version": 1,
  "Workload": "Exchange"
}

References #

ModifyFolderPermissions

#
RecordType
ExchangeItem

Description

Permissions on a mailbox folder were modified, changing who can access the folder's contents.

Detection Fields #

Fields referenced by at least one attached detection rule. This view counts distinct rules and is not a complete event schema.

NameRulesVendors
object2 detection rulesSplunk
Operation2 detection rulesSplunk
Workload2 detection rulesSplunk
Item.ParentFolder.MemberUpn1 detection ruleSplunk

Example Audit Record #

{
  "ClientIP": "::1",
  "ClientIPAddress": "::1",
  "ClientInfoString": "Client=WebServices;Action=ConfigureGroupMailbox",
  "CreationTime": "2026-07-04T16:14:08Z",
  "ExternalAccess": true,
  "Id": "3e8a0b6b-cdee-4a26-217f-08ded9e74717",
  "InternalLogonType": 1,
  "Item": {
    "Id": "LgAAAABMYtd4GPx9R7PxdHNLUNBPAQAuIGs53Y6iSr2GkXQN/2i/AAAAAAEfAAAB",
    "ImmutableId": "ErrorDuringIdConversion",
    "ParentFolder": {
      "Id": "LgAAAABMYtd4GPx9R7PxdHNLUNBPAQAuIGs53Y6iSr2GkXQN/2i/AAAAAAEfAAAB",
      "MemberRights": "ReadAny, Create, EditOwned, DeleteOwned, EditAny, DeleteAny, Visible, FreeBusySimple, FreeBusyDetailed",
      "MemberSid": "S-1-8-3887482716-1326096224-1882406844-699167947-0",
      "MemberUpn": "Owner@local",
      "Name": "Team Chat",
      "Path": "\\Conversation History\\Team Chat"
    }
  },
  "LogonType": 1,
  "LogonUserSid": "S-1-5-80-447828073-3829008076-3733868015-3112024911-3885364408",
  "MailboxGuid": "e7b6475c-9f60-4f0a-bc3f-3370cb74ac29",
  "MailboxOwnerMasterAccountSid": "S-1-5-10",
  "MailboxOwnerSid": "S-1-5-21-2202824495-2635967380-1894632064-35782174",
  "MailboxOwnerUPN": "AllCompany.181245214720.zzjydiec@example.onmicrosoft.com",
  "Operation": "ModifyFolderPermissions",
  "OrganizationId": "00000000-0000-0000-0000-000000000001",
  "OrganizationName": "example.onmicrosoft.com",
  "OriginatingServer": "DS4PR16MB7145 (15.20.4200.000)\r\n",
  "RecordType": 2,
  "ResultStatus": "Succeeded",
  "UserId": "S-1-5-80-447828073-3829008076-3733868015-3112024911-3885364408",
  "UserKey": "00000000-0000-0000-0000-000000000000",
  "UserType": 2,
  "Version": 1,
  "Workload": "Exchange"
}

Common Indicators #

Positive field/value combinations most frequently checked by detection rules targeting this event, derived from cross-vendor predicate analysis. This is separate from Fields accounting, which also includes exclusions and counts distinct attached rules.

FieldKindValueRulesVendors
Item.ParentFolder.MemberUpn (splunk rule field)eqeveryone1 rulesplunk
group.name (splunk rule field)eqinbox1 rulesplunk
group.name (splunk rule field)necalendar1 rulesplunk
group.name (splunk rule field)necontacts1 rulesplunk
group.name (splunk rule field)nepersonmetadata1 rulesplunk

Detection Rules #

Full rule details for this event, including ATT&CK technique mappings and native queries →

Splunk #

References #

MoveToDeletedItems

#
RecordType
ExchangeItem

Description

A mailbox item was moved to the Deleted Items folder.

Detection Fields #

Fields referenced by at least one attached detection rule. This view counts distinct rules and is not a complete event schema.

NameRulesVendors
event.action1 detection ruleElastic
event.outcome1 detection ruleElastic
event.provider1 detection ruleElastic
o365.audit.AffectedItems.Subject1 detection ruleElastic

Common Indicators #

Positive field/value combinations most frequently checked by detection rules targeting this event, derived from cross-vendor predicate analysis. This is separate from Fields accounting, which also includes exclusions and counts distinct attached rules.

FieldKindValueRulesVendors
event.outcome (elastic rule field)eqsuccess1 ruleelastic
o365.audit.AffectedItems.Subject (elastic rule field)contains2-step1 ruleelastic
o365.audit.AffectedItems.Subject (elastic rule field)contains2fa1 ruleelastic
o365.audit.AffectedItems.Subject (elastic rule field)containsauthenticator1 ruleelastic
o365.audit.AffectedItems.Subject (elastic rule field)containsdevice activate1 ruleelastic
o365.audit.AffectedItems.Subject (elastic rule field)containsdevice added1 ruleelastic
o365.audit.AffectedItems.Subject (elastic rule field)containsdevice change1 ruleelastic
o365.audit.AffectedItems.Subject (elastic rule field)containsdevice configure1 ruleelastic
o365.audit.AffectedItems.Subject (elastic rule field)containsdevice enroll1 ruleelastic
o365.audit.AffectedItems.Subject (elastic rule field)containsdevice register1 ruleelastic
o365.audit.AffectedItems.Subject (elastic rule field)containsdevice setup1 ruleelastic
o365.audit.AffectedItems.Subject (elastic rule field)containsdevice update1 ruleelastic
o365.audit.AffectedItems.Subject (elastic rule field)containsdevice verify1 ruleelastic
o365.audit.AffectedItems.Subject (elastic rule field)containsfactor activate1 ruleelastic
o365.audit.AffectedItems.Subject (elastic rule field)containsfactor added1 ruleelastic

Detection Rules #

Full rule details for this event, including ATT&CK technique mappings and native queries →

Elastic #

  • M365 Exchange MFA Notification Email Deleted or Moved source low: Identifies when an MFA enrollment, registration, or security notification email is deleted or moved to deleted items in Microsoft 365 Exchange. Adversaries who compromise accounts and register their own MFA device often delete the notification emails to cover their tracks and prevent the legitimate user from noticing the unauthorized change. This technique is commonly observed in business email compromise (BEC) and account takeover attacks.T1070, T1070.008, T1098, T1098.005↳ also matches HardDelete, SoftDelete

References #

Send

#
RecordType
ExchangeItem

Description

The mailbox user sent, replied to, or forwarded an email message (mailbox Send action).

Detection Fields #

Fields referenced by at least one attached detection rule. This view counts distinct rules and is not a complete event schema.

NameRulesVendors
Operation3 detection rulesSplunk
Workload3 detection rulesSplunk
Folder.Path2 detection rulesSplunk

Example Audit Record #

{
  "ActorInfoString": "Client=REST;python-requests/2.34.2[AppId=22222222-2222-2222-2222-222222222222];",
  "AppAccessContext": {
    "AADSessionId": "0022840a-e4ab-884c-587f-d20d24637227",
    "APIId": "00000003-0000-0000-c000-000000000000",
    "ClientAppId": "22222222-2222-2222-2222-222222222222",
    "IssuedAtTime": "2026-07-04T15:04:45Z",
    "UniqueTokenId": "pO6tpCIhWEeDjtm8HsIAAA"
  },
  "AppId": "00000003-0000-0000-c000-000000000000",
  "AuthType": "MSAuth1.0",
  "ClientAppId": "22222222-2222-2222-2222-222222222222",
  "ClientIP": "203.0.113.10",
  "ClientIPAddress": "203.0.113.10",
  "ClientInfoString": "Client=REST;;",
  "ClientRequestId": "4f090712-2278-4b01-b594-afd205ca5f2a",
  "CreationTime": "2026-07-04T15:09:46Z",
  "ExternalAccess": false,
  "HostAppId": "c999ed3e-27ae-4cb3-b3a2-46b056af63d3",
  "Id": "162e2810-3ab6-4a06-86bf-08ded9de493f",
  "InternalLogonType": 0,
  "Item": {
    "Id": "RgAAAAAXRoXzP5fNR6PyEo/HqixABwA7mE7t4w9CSqNKCbVE7kkMAAAAAAEPAAA7mE7t4w9CSqNKCbVE7kkMAABt2TLRAAAJ",
    "ImmutableId": "LgAAAAAdhAMRqmYRzZvIAKoAL8RaDQA7mE7t4w9CSqNKCbVE7kkMAABt2ebnAAAJ",
    "InternetMessageId": "<SA1PR16MB4707CF583F9878E07C434A1DA2F32@SA1PR16MB4707.namprd16.prod.outlook.com>",
    "ParentFolder": {
      "Id": "LgAAAAAXRoXzP5fNR6PyEo/HqixAAQA7mE7t4w9CSqNKCbVE7kkMAAAAAAEPAAAB",
      "Path": "\\Drafts"
    },
    "Recipients": [
      {
        "Address": "adminuser@example.onmicrosoft.com",
        "Name": "Admin User"
      }
    ],
    "RecipientsCount": 1,
    "SizeInBytes": 3094,
    "Subject": "dw-harness-afc127f4 audit test"
  },
  "LogonType": 0,
  "LogonUserSid": "S-1-5-21-2202824495-2635967380-1894632064-31996139",
  "MailboxGuid": "2bc72b5a-02f0-45d2-97a2-5f0152098603",
  "MailboxOwnerSid": "S-1-5-21-2202824495-2635967380-1894632064-31996139",
  "MailboxOwnerUPN": "adminuser@example.onmicrosoft.com",
  "Operation": "Send",
  "OrganizationId": "00000000-0000-0000-0000-000000000001",
  "OrganizationName": "example.onmicrosoft.com",
  "OriginatingServer": "SA1PR16MB4707 (15.20.4200.000)\r\n",
  "RecordType": 2,
  "ResultStatus": "Succeeded",
  "SaveToSentItems": true,
  "SessionId": "0022840a-e4ab-884c-587f-d20d24637227",
  "TokenObjectId": "11111111-1111-1111-1111-111111111111",
  "TokenTenantId": "00000000-0000-0000-0000-000000000001",
  "TokenType": "AadPft",
  "UserId": "adminuser@example.onmicrosoft.com",
  "UserKey": "10000000AAAAAAAA",
  "UserType": 0,
  "Version": 1,
  "Workload": "Exchange"
}

Common Indicators #

Positive field/value combinations most frequently checked by detection rules targeting this event, derived from cross-vendor predicate analysis. This is separate from Fields accounting, which also includes exclusions and counts distinct attached rules.

FieldKindValueRulesVendors
m365::Folder.Path (splunk rule field)in\\recoverable items\\deletions2 rulessplunk
m365::Folder.Path (splunk rule field)in\\sent items2 rulessplunk
Status (splunk rule field)eqdelivered1 rulesplunk
count (splunk rule field)gt501 rulesplunk

Detection Rules #

Full rule details for this event, including ATT&CK technique mappings and native queries →

Splunk #

References #

SendAs

#
RecordType
ExchangeItem

Description

A message was sent using the SendAs permission, sending as though it came from the mailbox owner; a common impersonation technique.

Detection Fields #

Fields referenced by at least one attached detection rule. This view counts distinct rules and is not a complete event schema.

NameRulesVendors
Operation3 detection rulesSplunk
Workload3 detection rulesSplunk
Folder.Path2 detection rulesSplunk

Example Audit Record #

{
  "ActorInfoString": "Client=REST;Client=RESTSystem;Python-urllib/3.11[AppId=151b4737-5960-4f64-b94c-e7f890c955fa];",
  "AppAccessContext": {
    "APIId": "00000003-0000-0000-c000-000000000000",
    "ClientAppId": "151b4737-5960-4f64-b94c-e7f890c955fa",
    "IssuedAtTime": "2026-07-25T21:32:09",
    "UniqueTokenId": "UfJmJthOG0-myf6YW2gnAA"
  },
  "AppId": "00000003-0000-0000-c000-000000000000",
  "AuthType": "MSAuth1.0",
  "ClientAppId": "151b4737-5960-4f64-b94c-e7f890c955fa",
  "ClientIP": "203.0.113.10",
  "ClientIPAddress": "203.0.113.10",
  "ClientInfoString": "Client=REST;Client=RESTSystem;;",
  "ClientRequestId": "ba4f3dc4-4417-4ee9-ab39-f9bc4ea4b1ca",
  "CreationDate": "2026-07-25T21:37:10",
  "CreationTime": "2026-07-25T21:37:10",
  "ExternalAccess": false,
  "HostAppId": "c999ed3e-27ae-4cb3-b3a2-46b056af63d3",
  "Id": "4b8d0d8f-5918-433f-eac6-08deea94e258",
  "InternalLogonType": 0,
  "Item": {
    "Id": "RgAAAAAXRoXzP5fNR6PyEo/HqixABwA7mE7t4w9CSqNKCbVE7kkMAAAAAAEPAAA7mE7t4w9CSqNKCbVE7kkMAAB83/fxAAAJ",
    "ImmutableId": "ErrorDuringIdConversion",
    "InternetMessageId": "<SA1PR16MB4707AF614409B18A40D8FDB1A2CE2@SA1PR16MB4707.namprd16.prod.outlook.com>",
    "ParentFolder": {
      "Id": "LgAAAAAXRoXzP5fNR6PyEo/HqixAAQA7mE7t4w9CSqNKCbVE7kkMAAAAAAEPAAAB",
      "Path": "\\Drafts"
    },
    "Recipients": [
      {
        "Address": "adminuser@example.onmicrosoft.com",
        "Name": "Admin User"
      }
    ],
    "RecipientsCount": 1,
    "SizeInBytes": 3232,
    "Subject": "dwharn rt2probe1 SendAs probe"
  },
  "LogonType": 2,
  "LogonUserSid": "S-1-5-21-2202824495-2635967380-1894632064-31996139",
  "MailboxGuid": "2bc72b5a-02f0-45d2-97a2-5f0152098603",
  "MailboxOwnerSid": "S-1-5-21-2202824495-2635967380-1894632064-31996139",
  "MailboxOwnerUPN": "adminuser@example.onmicrosoft.com",
  "Operation": "SendAs",
  "Operations": "SendAs",
  "OrganizationId": "00000000-0000-0000-0000-000000000001",
  "OrganizationName": "example.onmicrosoft.com",
  "OriginatingServer": "SA1PR16MB4707 (15.20.4200.000)\r\n",
  "RecordType": 2,
  "ResultStatus": "Succeeded",
  "SaveToSentItems": true,
  "SendAsUserMailboxGuid": "2da5bd57-8c8a-49c4-abf0-1764cf8d63c3",
  "SendAsUserSmtp": "dwharn-shared@example.onmicrosoft.com",
  "TokenObjectId": "dd86db54-3d88-43c1-a8a9-60841a369ec0",
  "TokenTenantId": "00000000-0000-0000-0000-000000000001",
  "TokenType": "AadPft",
  "UserId": "S-1-5-21-2202824495-2635967380-1894632064-31996139",
  "UserKey": "151b4737-5960-4f64-b94c-e7f890c955fa",
  "UserType": "Application",
  "Version": 1,
  "Workload": "Exchange"
}

Common Indicators #

Positive field/value combinations most frequently checked by detection rules targeting this event, derived from cross-vendor predicate analysis. This is separate from Fields accounting, which also includes exclusions and counts distinct attached rules.

FieldKindValueRulesVendors
m365::Folder.Path (splunk rule field)in\\recoverable items\\deletions2 rulessplunk
m365::Folder.Path (splunk rule field)in\\sent items2 rulessplunk
Status (splunk rule field)eqdelivered1 rulesplunk
count (splunk rule field)gt501 rulesplunk

Detection Rules #

Full rule details for this event, including ATT&CK technique mappings and native queries →

Splunk #

References #

SendOnBehalf

#
RecordType
ExchangeItem

Description

A message was sent using the SendOnBehalf permission, sending on behalf of the mailbox owner.

Detection Fields #

Fields referenced by at least one attached detection rule. This view counts distinct rules and is not a complete event schema.

NameRulesVendors
Operation3 detection rulesSplunk
Workload3 detection rulesSplunk
Folder.Path2 detection rulesSplunk

Common Indicators #

Positive field/value combinations most frequently checked by detection rules targeting this event, derived from cross-vendor predicate analysis. This is separate from Fields accounting, which also includes exclusions and counts distinct attached rules.

FieldKindValueRulesVendors
m365::Folder.Path (splunk rule field)in\\recoverable items\\deletions2 rulessplunk
m365::Folder.Path (splunk rule field)in\\sent items2 rulessplunk
Status (splunk rule field)eqdelivered1 rulesplunk
count (splunk rule field)gt501 rulesplunk

Detection Rules #

Full rule details for this event, including ATT&CK technique mappings and native queries →

Splunk #

References #

SoftDelete

#
RecordType
ExchangeItem

Description

A mailbox item was soft-deleted (moved to the Recoverable Items / Deleted Items dumpster and recoverable by the user).

Detection Fields #

Fields referenced by at least one attached detection rule. This view counts distinct rules and is not a complete event schema.

NameRulesVendors
Operation2 detection rulesSplunk
Workload2 detection rulesSplunk
event.action1 detection ruleElastic
event.outcome1 detection ruleElastic
event.provider1 detection ruleElastic
Folder.Path1 detection ruleSplunk
o365.audit.AffectedItems.Subject1 detection ruleElastic

Common Indicators #

Positive field/value combinations most frequently checked by detection rules targeting this event, derived from cross-vendor predicate analysis. This is separate from Fields accounting, which also includes exclusions and counts distinct attached rules.

FieldKindValueRulesVendors
m365::Folder.Path (splunk rule field)in\\recoverable items\\deletions1 rulesplunk
m365::Folder.Path (splunk rule field)in\\sent items1 rulesplunk
subject (splunk rule field)in*account recovery*1 rulesplunk
subject (splunk rule field)in*banking*1 rulesplunk
subject (splunk rule field)in*direct deposit*1 rulesplunk
subject (splunk rule field)in*mfa *1 rulesplunk
subject (splunk rule field)in*otp *1 rulesplunk
subject (splunk rule field)in*passcode *1 rulesplunk
subject (splunk rule field)in*password *1 rulesplunk
subject (splunk rule field)in*pay-to*1 rulesplunk

Detection Rules #

Full rule details for this event, including ATT&CK technique mappings and native queries →

Elastic #

  • M365 Exchange MFA Notification Email Deleted or Moved source low: Identifies when an MFA enrollment, registration, or security notification email is deleted or moved to deleted items in Microsoft 365 Exchange. Adversaries who compromise accounts and register their own MFA device often delete the notification emails to cover their tracks and prevent the legitimate user from noticing the unauthorized change. This technique is commonly observed in business email compromise (BEC) and account takeover attacks.T1070, T1070.008, T1098, T1098.005↳ also matches HardDelete, MoveToDeletedItems

Splunk #

References #

Update

#
RecordType
ExchangeItem

Description

Update activity in Exchange mailbox, recorded in the Unified Audit Log (observed in first-party capture).

Example Audit Record #

{
  "ActorInfoString": "Client=REST;python-requests/2.34.2[AppId=22222222-2222-2222-2222-222222222222];",
  "AppAccessContext": {
    "AADSessionId": "0022840a-e4ab-884c-587f-d20d24637227",
    "APIId": "00000003-0000-0000-c000-000000000000",
    "ClientAppId": "22222222-2222-2222-2222-222222222222",
    "IssuedAtTime": "2026-07-04T15:04:45Z",
    "UniqueTokenId": "pO6tpCIhWEeDjtm8HsIAAA"
  },
  "AppId": "00000003-0000-0000-c000-000000000000",
  "AuthType": "MSAuth1.0",
  "ClientAppId": "22222222-2222-2222-2222-222222222222",
  "ClientIP": "203.0.113.10",
  "ClientIPAddress": "203.0.113.10",
  "ClientInfoString": "Client=REST;;",
  "ClientRequestId": "ce23ec0b-1ca3-4b0e-aad7-555dd5f12c3a",
  "CreationTime": "2026-07-04T15:09:49Z",
  "ExternalAccess": false,
  "HostAppId": "c999ed3e-27ae-4cb3-b3a2-46b056af63d3",
  "Id": "769f1bb4-de68-47d7-e8e0-08ded9de4a9d",
  "InternalLogonType": 0,
  "Item": {
    "Id": "RgAAAAAXRoXzP5fNR6PyEo/HqixABwA7mE7t4w9CSqNKCbVE7kkMAAAAAAENAAA7mE7t4w9CSqNKCbVE7kkMAABt2T6TAAAP",
    "ImmutableId": "LgAAAAAdhAMRqmYRzZvIAKoAL8RaDQA7mE7t4w9CSqNKCbVE7kkMAABt2erfAAAP",
    "InternetMessageId": "<SA1PR16MB4707803C250B4D869491F367A2F32@SA1PR16MB4707.namprd16.prod.outlook.com>",
    "IsRecord": false,
    "ParentFolder": {
      "Id": "LgAAAAAXRoXzP5fNR6PyEo/HqixAAQA7mE7t4w9CSqNKCbVE7kkMAAAAAAENAAAC",
      "Path": "\\Calendar"
    },
    "SizeInBytes": 4710,
    "Subject": "dw-harness-afc127f4 calendar test (updated)"
  },
  "LogonType": 0,
  "LogonUserSid": "S-1-5-21-2202824495-2635967380-1894632064-31996139",
  "MailboxGuid": "2bc72b5a-02f0-45d2-97a2-5f0152098603",
  "MailboxOwnerSid": "S-1-5-21-2202824495-2635967380-1894632064-31996139",
  "MailboxOwnerUPN": "adminuser@example.onmicrosoft.com",
  "ModifiedProperties": [
    "MapiSubject",
    "NormalizedSubjectInternal"
  ],
  "Operation": "Update",
  "OrganizationId": "00000000-0000-0000-0000-000000000001",
  "OrganizationName": "example.onmicrosoft.com",
  "OriginatingServer": "SA1PR16MB4707 (15.20.4200.000)\r\n",
  "RecordType": 2,
  "ResultStatus": "Succeeded",
  "SessionId": "0022840a-e4ab-884c-587f-d20d24637227",
  "TokenObjectId": "11111111-1111-1111-1111-111111111111",
  "TokenTenantId": "00000000-0000-0000-0000-000000000001",
  "TokenType": "AadPft",
  "UserId": "adminuser@example.onmicrosoft.com",
  "UserKey": "10000000AAAAAAAA",
  "UserType": 0,
  "Version": 1,
  "Workload": "Exchange"
}

References #

UpdateInboxRules

#
RecordType
ExchangeItem

Description

An inbox rule was added, removed, or changed; inbox rules process Inbox messages by condition and are commonly abused for auto-forwarding or evidence deletion.

Detection Fields #

Fields referenced by at least one attached detection rule. This view counts distinct rules and is not a complete event schema.

NameRulesVendors
Operation2 detection rulesSigma, Splunk
OperationProperties1 detection ruleSigma
Parameters1 detection ruleSigma
Workload1 detection ruleSplunk

Example Audit Record #

{
  "CreationTime": "2024-03-27T22:25:09",
  "Id": "8c6e96d4-f00c-4ccf-98f0-08dc4eacc2f0",
  "Operation": "UpdateInboxRules",
  "OrganizationId": "75243ab2-44f8-435c-a7a6-b479385df6d4",
  "RecordType": 2,
  "ResultStatus": "Succeeded",
  "UserKey": "100320030DF47B14",
  "UserType": 0,
  "Version": 1,
  "Workload": "Exchange",
  "ClientIP": "120.1.121.43",
  "UserId": "user15@splunkresearch.com",
  "AppId": "00b41c95-dab0-4487-9791-b9d2c32c80f2",
  "ClientIPAddress": "120.1.121.43",
  "ClientInfoString": "Client=WebServices;python-requests/2.25.1;",
  "ExternalAccess": false,
  "InternalLogonType": 0,
  "LogonType": 0,
  "LogonUserSid": "S-1-5-21-1148582062-3132321681-773847816-49307764",
  "MailboxGuid": "7cfcc8fc-0d4a-4e1c-9592-dbb3de1e3859",
  "MailboxOwnerSid": "S-1-5-21-1148582062-3132321681-773847816-49307764",
  "MailboxOwnerUPN": "user15@splunkresearch.com",
  "OperationProperties": [
    {
      "Name": "Actions",
      "Value": "ForwardToRecipientsAction"
    },
    {
      "Name": "Conditions",
      "Value": "ContainsBodyStringCondition"
    },
    {
      "Name": "Provider",
      "Value": "RuleOrganizer"
    },
    {
      "Name": "RemoveOutlookRuleBlob"
    },
    {
      "Name": "Name",
      "Value": "haags rule"
    },
    {
      "Name": "IsNew",
      "Value": "True"
    },
    {
      "Name": "IsDirty",
      "Value": "True"
    },
    {
      "Name": "RuleOperation",
      "Value": "Create"
    },
    {
      "Name": "ServerRule",
      "Value": {
        "ID": 0,
        "IDx": null,
        "ExecutionSequence": 10,
        "Level": 0,
        "StateFlags": 1,
        "UserFlags": 0,
        "Condition": {
          "Flags": 65537,
          "PropTag": {},
          "PropValue": {
            "PropTag": {},
            "PropType": 31,
            "Value": "gitlabs",
            "RawValue": "gitlabs"
          },
          "MultiValued": false,
          "Type": 3
        },
        "Actions": [
          {
            "Flags": 0,
            "Recipients": [
              {
                "Values": [
                  {
                    "PropTag": {},
                    "PropType": 258,
                    "Value": "AAAAAIErH6S+oxAZnW4A3QEPVAIAAAGAaABhAGEAZwBAAGUAdgBpAGwALgBjAG8AbQAAAFMATQBUAFAAAABoAGEAYQBnAEAAZQB2AGkAbAAuAGMAbwBtAAAA",
                    "RawValue": "AAAAAIErH6S+oxAZnW4A3QEPVAIAAAGAaABhAGEAZwBAAGUAdgBpAGwALgBjAG8AbQAAAFMATQBUAFAAAABoAGEAYQBnAEAAZQB2AGkAbAAuAGMAbwBtAAAA"
                  },
                  {
                    "PropTag": {},
                    "PropType": 31,
                    "Value": "haag@evil.com",
                    "RawValue": "haag@evil.com"
                  },
                  {
                    "PropTag": {},
                    "PropType": 3,
                    "Value": 0,
                    "RawValue": 0
                  },
                  {
                    "PropTag": {},
                    "PropType": 31,
                    "Value": "haag@evil.com",
                    "RawValue": "haag@evil.com"
                  },
                  {
                    "PropTag": {},
                    "PropType": 258,
                    "Value": "U01UUDpIQUFHQEVWSUwuQ09NAA==",
                    "RawValue": "U01UUDpIQUFHQEVWSUwuQ09NAA=="
                  },
                  {
                    "PropTag": {},
                    "PropType": 3,
                    "Value": 1,
                    "RawValue": 1
                  },
                  {
                    "PropTag": {},
                    "PropType": 31,
                    "Value": "SMTP",
                    "RawValue": "SMTP"
                  },
                  {
                    "PropTag": {},
                    "PropType": 31,
                    "Value": "haag@evil.com",
                    "RawValue": "haag@evil.com"
                  }
                ]
              }
            ],
            "UserFlags": 0,
            "ActionType": 7
          }
        ],
        "Name": "haags rule",
        "Provider": "RuleOrganizer",
        "ProviderData": "AQAAAAAAAAAq1HSglYDaAQ==",
        "IsExtended": false,
        "ExtraProperties": null,
        "Operation": 1
      }
    }
  ],
  "OrganizationName": "splunkresearch.com",
  "OriginatingServer": "MN2PR18MB3053 (15.20.4200.000)\r\n",
  "SessionId": "004b39b1-b0a8-4f90-91e4-67dd1b6ca5a8",
  "Item": {
    "Id": "LgAAAAC0AxwgOj/BRq9Bs1bhMPw/AQDh+UNSDzeHSLWfq+fr83BDAAAAAAEMAAAB",
    "ParentFolder": {
      "Id": "LgAAAAC0AxwgOj/BRq9Bs1bhMPw/AQDh+UNSDzeHSLWfq+fr83BDAAAAAAEMAAAB",
      "Name": "Inbox",
      "Path": "Not Available"
    }
  }
}

Common Indicators #

Positive field/value combinations most frequently checked by detection rules targeting this event, derived from cross-vendor predicate analysis. This is separate from Fields accounting, which also includes exclusions and counts distinct attached rules.

FieldKindValueRulesVendors
m365::OperationProperties (sigma rule field)containsforward1 rulesigma
m365::OperationProperties (sigma rule field)containsrecipients1 rulesigma
m365::Parameters (sigma rule field)containsforwardasattachmentto1 rulesigma
m365::Parameters (sigma rule field)containsforwardingaddress1 rulesigma
m365::Parameters (sigma rule field)containsforwardingsmtpaddress1 rulesigma
m365::Parameters (sigma rule field)containsforwardto1 rulesigma
m365::Parameters (sigma rule field)containsredirectto1 rulesigma
m365::Parameters (sigma rule field)containsredirecttorecipients1 rulesigma

Detection Rules #

Full rule details for this event, including ATT&CK technique mappings and native queries →

Sigma #

Splunk #

  • O365 New Email Forwarding Rule Enabled source: The following analytic identifies the creation of new email forwarding rules in an Office 365 environment via the UpdateInboxRules operation. It leverages Office 365 management activity events to detect rules that forward emails to…T1114, T1114.003

References #

M365 audit records use different field names on each surface #

The same Unified Audit Log record uses different field names on each surface. A query built for one surface can silently miss on another. These pages document the Management Activity API JSON names, the same names Search-UnifiedAuditLog and the Office 365 Management Activity API return.

  • Purview CSV export flattens each record to four columns (CreationDate, UserIds, Operations, AuditData). The API field names live only inside the AuditData JSON blob. Expand it with ConvertFrom-Json. The wrapper columns are renamed too: CreationDate not CreationTime, UserIds not UserId, Operations not Operation.
  • Sentinel's OfficeActivity table renames several fields and turns two integer enum columns into strings. The table below maps them.
API JSON (event pages)OfficeActivity columnNote
IdOfficeIdRenamed.
WorkloadOfficeWorkloadRenamed.
ObjectIdOfficeObjectIdRenamed.
CreationTimeTimeGeneratedRenamed. OfficeActivity has no CreationTime column.
SiteUrlSite_UrlRenamed (SharePoint family).
RecordTypeRecordTypeSame name; the Int32 enum becomes its string enum name.
UserTypeUserTypeSame name; the Int32 enum becomes a string.
ClientIPClientIP, Client_IPAddressBoth columns present on OfficeActivity.
Scope(none)No OfficeActivity equivalent under any name. Recover it from the API JSON or the Purview AuditData blob.
Operation, UserId, ResultStatus, UserKey, AppAccessContext, OrganizationIdsame namesUnchanged. No _s / _d suffixes (a native table, not a custom log).

Mapping verified against the OfficeActivity table reference, the Management Activity API schema, and the Purview audit-record export format.