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.

Common Indicators #

Field/value combinations most frequently checked by detection rules targeting this event, derived from cross-vendor predicate analysis.

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.

Common Indicators #

Field/value combinations most frequently checked by detection rules targeting this event, derived from cross-vendor predicate analysis.

FieldKindValueRulesVendors
isReadRole (splunk rule field)eqtrue1 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 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.

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"
}

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.

Common Indicators #

Field/value combinations most frequently checked by detection rules targeting this event, derived from cross-vendor predicate analysis.

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
Provider_Name (elastic rule field)eqExchange1 ruleelastic
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.

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 #

Field/value combinations most frequently checked by detection rules targeting this event, derived from cross-vendor predicate analysis.

FieldKindValueRulesVendors
isReadRole (splunk rule field)eqtrue1 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.

Common Indicators #

Field/value combinations most frequently checked by detection rules targeting this event, derived from cross-vendor predicate analysis.

FieldKindValueRulesVendors
Provider_Name (elastic rule field)eqExchange1 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).

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 #

Field/value combinations most frequently checked by detection rules targeting this event, derived from cross-vendor predicate analysis.

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.

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 #

Field/value combinations most frequently checked by detection rules targeting this event, derived from cross-vendor predicate analysis.

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.

Common Indicators #

Field/value combinations most frequently checked by detection rules targeting this event, derived from cross-vendor predicate analysis.

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).

Common Indicators #

Field/value combinations most frequently checked by detection rules targeting this event, derived from cross-vendor predicate analysis.

FieldKindValueRulesVendors
Provider_Name (elastic rule field)eqExchange1 ruleelastic
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.

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 #

Field/value combinations most frequently checked by detection rules targeting this event, derived from cross-vendor predicate analysis.

FieldKindValueRulesVendors
m365::Parameters (sigma rule field)containsforwardingsmtpaddress1 rulesigma
m365::Parameters (sigma rule field)containsforwardto1 rulesigma
m365::Parameters (sigma rule field)containsredirectto1 rulesigma
match1 (splunk rule field)ge01 rulesplunk
match2 (splunk rule field)ge01 rulesplunk
match3 (splunk rule field)ge01 rulesplunk

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.