ID | Technique | Tactic |
---|---|---|
T1134.005 | SID-History Injection | Defense Evasion |
T1134 | Access Token Manipulation | Privilege Escalation |
Detection: Windows AD Cross Domain SID History Addition
Description
The following analytic detects changes to the sIDHistory attribute of user or computer objects across different domains. It leverages Windows Security Event Codes 4738 and 4742 to identify when the sIDHistory attribute is modified. This activity is significant because the sIDHistory attribute allows users to inherit permissions from other AD accounts, which can be exploited by adversaries for inter-domain privilege escalation and persistence. If confirmed malicious, this could enable attackers to gain unauthorized access to resources, maintain persistence, and escalate privileges across domain boundaries.
Search
1`wineventlog_security` (EventCode=4742 OR EventCode=4738) NOT SidHistory IN ("%%1793", -)
2| rex field=SidHistory "(^%{
3|^)(?P<SidHistoryMatch>.*)(\-
4|\\\)"
5| rex field=TargetSid "^(?P<TargetSidmatch>.*)(\-
6|\\\)"
7| where SidHistoryMatch!=TargetSidmatch AND SidHistoryMatch!=TargetDomainName
8| rename TargetSid as userSid
9| table _time action status host user userSid SidHistory Logon_ID src_user
10| `windows_ad_cross_domain_sid_history_addition_filter`
Data Source
Name | Platform | Sourcetype | Source | Supported App |
---|---|---|---|---|
Windows Event Log Security 4738 | Windows | 'xmlwineventlog' |
'XmlWinEventLog:Security' |
N/A |
Macros Used
Name | Value |
---|---|
wineventlog_security | eventtype=wineventlog_security OR Channel=security OR source=XmlWinEventLog:Security |
windows_ad_cross_domain_sid_history_addition_filter | search * |
windows_ad_cross_domain_sid_history_addition_filter
is an empty macro by default. It allows the user to filter out any results (false positives) without editing the SPL.
Annotations
Default Configuration
This detection is configured by default in Splunk Enterprise Security to run with the following settings:
Setting | Value |
---|---|
Disabled | true |
Cron Schedule | 0 * * * * |
Earliest Time | -70m@m |
Latest Time | -10m@m |
Schedule Window | auto |
Creates Notable | Yes |
Rule Title | %name% |
Rule Description | %description% |
Notable Event Fields | user, dest |
Creates Risk Event | True |
Implementation
To successfully implement this search, you need to be ingesting eventcodes 4738
and 4742
. The Advanced Security Audit policy settings Audit User Account Management
and Audit Computer Account Management
within Account Management
all need to be enabled.
Known False Positives
Domain mergers and migrations may generate large volumes of false positives for this analytic.
Associated Analytic Story
Risk Based Analytics (RBA)
Risk Message | Risk Score | Impact | Confidence |
---|---|---|---|
Active Directory SID History Attribute was added to $user$ by $src_user$ | 80 | 100 | 80 |
References
Detection Testing
Test Type | Status | Dataset | Source | Sourcetype |
---|---|---|---|---|
Validation | ✅ Passing | N/A | N/A | N/A |
Unit | ✅ Passing | Dataset | XmlWinEventLog:Security |
XmlWinEventLog |
Integration | ✅ Passing | Dataset | XmlWinEventLog:Security |
XmlWinEventLog |
Replay any dataset to Splunk Enterprise by using our replay.py
tool or the UI.
Alternatively you can replay a dataset into a Splunk Attack Range
Source: GitHub | Version: 2