ID | Technique | Tactic |
---|---|---|
T1134.005 | SID-History Injection | Defense Evasion |
T1134 | Access Token Manipulation | Privilege Escalation |
Detection: Windows AD Same Domain SID History Addition
Description
The following analytic detects changes to the sIDHistory attribute of user or computer objects within the same domain. 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 can be abused by adversaries to grant unauthorized access by inheriting permissions from another account. If confirmed malicious, this could allow attackers to maintain persistent access or escalate privileges within the domain, posing a severe security risk.
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 OR SidHistoryMatch=TargetDomainName
8| rename TargetSid as userSid, TargetDomainName as userDomainName
9| table _time action status host user userSid userDomainName SidHistory Logon_ID src_user
10| `windows_ad_same_domain_sid_history_addition_filter`
Data Source
Name | Platform | Sourcetype | Source |
---|---|---|---|
Windows Event Log Security 4738 | Windows | 'xmlwineventlog' |
'XmlWinEventLog:Security' |
Windows Event Log Security 4742 | Windows | 'xmlwineventlog' |
'XmlWinEventLog:Security' |
Macros Used
Name | Value |
---|---|
wineventlog_security | eventtype=wineventlog_security OR Channel=security OR source=XmlWinEventLog:Security |
windows_ad_same_domain_sid_history_addition_filter | search * |
windows_ad_same_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. SID resolution is not required..
Known False Positives
Unknown
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$ | 100 | 100 | 100 |
References
-
https://learn.microsoft.com/en-us/windows/win32/adschema/a-sidhistory?redirectedfrom=MSDN
-
https://book.hacktricks.xyz/windows-hardening/active-directory-methodology/sid-history-injection
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: 4