-
Notifications
You must be signed in to change notification settings - Fork 446
Nterl0k - T1114.003 O365 Transport Rule Changed #3280
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
patel-bhavin
merged 12 commits into
splunk:develop
from
nterl0k:nterl0k-t1114.003-o365-transport-rule-change
Feb 11, 2025
Merged
Changes from 8 commits
Commits
Show all changes
12 commits
Select commit
Hold shift + click to select a range
46bc87e
Add files via upload
nterl0k 61dcaf1
Update o365_email_transport_rule_changed.yml
nterl0k c0de38c
Update o365_email_transport_rule_changed.yml
nterl0k 4bd74d8
Update o365_email_transport_rule_changed.yml
nterl0k ffc6443
Update o365_email_transport_rule_changed.yml
nterl0k 977c678
Update o365_email_transport_rule_changed.yml
nterl0k 02c5a24
Update o365_email_transport_rule_changed.yml
nterl0k 93fdd5a
Merge branch 'splunk:develop' into nterl0k-t1114.003-o365-transport-r…
nterl0k dfc98cf
Merge branch 'develop' into nterl0k-t1114.003-o365-transport-rule-change
patel-bhavin 5462f1c
Merge branch 'develop' into nterl0k-t1114.003-o365-transport-rule-change
patel-bhavin 25af092
rba message
patel-bhavin f3e0d87
Merge branch 'develop' into nterl0k-t1114.003-o365-transport-rule-change
patel-bhavin File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,67 @@ | ||
| name: O365 Email Transport Rule Changed | ||
| id: 11ebb7c2-46bd-41c9-81e1-d0b4b34583a2 | ||
| version: 1 | ||
| date: '2025-01-15' | ||
| author: Steven Dick | ||
| status: production | ||
| type: Anomaly | ||
| description: The following analytic identifies when a user with sufficient access to Exchange Online alters the mail flow/transport rule configuration of the organization. Transport rules are a set of rules that can be used by attackers to modify or delete emails based on specific conditions, this activity could indicate an attacker hiding or exfiltrated data. | ||
| data_source: | ||
| - Office 365 Universal Audit Log | ||
| search: |- | ||
| `o365_management_activity` Workload=Exchange AND Operation IN ("Set-*","Disable-*","New-*","Remove-*") AND Operation="*TransportRule" | ||
| | eval object_name = case('Parameters{}.Name'=="Name",mvindex('Parameters{}.Value',mvfind('Parameters{}.Name',"^Name$")),true(),ObjectId), object_id = case('Parameters{}.Name'=="Identity",mvindex('Parameters{}.Value',mvfind('Parameters{}.Name',"^Identity$")),true(),Id) | ||
| | stats values(object_name) as object_name, min(_time) as firstTime, max(_time) as lastTime, count by object_id, UserId, Operation | ||
| | rename UserId as user, Operation as signature | ||
| | `security_content_ctime(firstTime)` | ||
| | `security_content_ctime(lastTime)` | ||
| | `o365_email_transport_rule_changed_filter` | ||
| how_to_implement: You must install the Splunk Microsoft Office 365 Add-on and ingest Office 365 management activity events. | ||
| known_false_positives: Legitimate administrative changes for business needs. | ||
| references: | ||
| - https://attack.mitre.org/techniques/T1114/003/ | ||
| - https://cardinalops.com/blog/cardinalops-contributes-new-mitre-attck-techniques-related-to-abuse-of-mail-transport-rules/ | ||
| - https://www.microsoft.com/en-us/security/blog/2022/09/22/malicious-OAuth-applications-used-to-compromise-email-servers-and-spread-spam/ | ||
| drilldown_searches: | ||
| - name: View the detection results for - "$user$" | ||
| search: '%original_detection_search% | search user = "$user$"' | ||
| earliest_offset: $info_min_time$ | ||
| latest_offset: $info_max_time$ | ||
| - name: View risk events for the last 7 days for - "$user$" | ||
| search: '| from datamodel Risk.All_Risk | search normalized_risk_object IN ("$user$") starthoursago=168 | stats count min(_time) as firstTime max(_time) as lastTime values(search_name) as "Search Name" values(risk_message) as "Risk Message" values(analyticstories) as "Analytic Stories" values(annotations._all) as "Annotations" values(annotations.mitre_attack.mitre_tactic) as "ATT&CK Tactics" by normalized_risk_object | `security_content_ctime(firstTime)` | `security_content_ctime(lastTime)`' | ||
| earliest_offset: $info_min_time$ | ||
| latest_offset: $info_max_time$ | ||
| - name: Investigate changes by $user$ | ||
| search: '`o365_management_activity` Workload=Exchange AND Operation IN ("Set-*","Disable-*","New-*","Remove-*") AND Operation="*Transport*" UserId=$user$' | ||
| earliest_offset: $info_min_time$ | ||
| latest_offset: $info_max_time$ | ||
| rba: | ||
| message: The user [$user$] altered the exchange transport rule id $object_id$ [$object_name$] | ||
| risk_objects: | ||
| - field: user | ||
| type: user | ||
| score: 25 | ||
| threat_objects: | ||
| - field: object_id | ||
| type: signature | ||
| - field: object_name | ||
| type: signature | ||
| tags: | ||
| analytic_story: | ||
| - Data Exfiltration | ||
| - Office 365 Account Takeover | ||
| asset_type: O365 Tenant | ||
| mitre_attack_id: | ||
| - T1114.003 | ||
| - T1564.008 | ||
| product: | ||
| - Splunk Enterprise | ||
| - Splunk Enterprise Security | ||
| - Splunk Cloud | ||
| security_domain: threat | ||
| tests: | ||
| - name: True Positive Test | ||
| attack_data: | ||
| - data: https://media.githubusercontent.com/media/splunk/attack_data/master/datasets/attack_techniques/T1114.003/transport_rule_change/transport_rule_change.log | ||
| source: o365 | ||
| sourcetype: o365:management:activity | ||
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.