| ID | Technique | Tactic |
|---|---|---|
| T1059 | Command and Scripting Interpreter | Execution |
| T1566.001 | Spearphishing Attachment | Initial Access |
| T1566.002 | Spearphishing Link | Initial Access |
Detection: Windows Defender ASR Block Events
Description
This detection searches for ASR block events that are generated when a process or application attempts to perform an action that is blocked by an ASR rule. Typically, these will be enabled in block most after auditing and tuning the ASR rules themselves.
Search
1`ms_defender`
2EventCode IN (
3 1121,
4 1126,
5 1129,
6 1131,
7 1133
8)
9
10| fillnull value=NULL
11
12| stats count min(_time) as firstTime
13 max(_time) as lastTime
14 by host EventCode
15 Parent_Commandline Process_Name Target_Commandline
16 Path ID RuleType
17
18
19| lookup local=t asr_rules ID OUTPUT ASR_Rule
20
21
22| rename host as dest
23
24
25| `security_content_ctime(firstTime)`
26
27| `security_content_ctime(lastTime)`
28
29| `windows_defender_asr_block_events_filter`
Data Source
| Name | Platform | Sourcetype | Source |
|---|---|---|---|
| Windows Event Log Defender 1131 | 'XmlWinEventLog' |
'XmlWinEventLog:Security' |
|
| Windows Event Log Defender 1133 | 'XmlWinEventLog' |
'XmlWinEventLog:Security' |
|
| Windows Event Log Defender 1126 | 'XmlWinEventLog' |
'XmlWinEventLog:Security' |
|
| Windows Event Log Defender 1121 | 'XmlWinEventLog' |
'WinEventLog:Microsoft-Windows-Windows Defender/Operational' |
|
| Windows Event Log Defender 1129 | 'XmlWinEventLog' |
'WinEventLog:Microsoft-Windows-Windows Defender/Operational' |
Macros Used
| Name | Value |
|---|---|
| security_content_ctime | convert timeformat="%Y-%m-%dT%H:%M:%S" ctime($field$) |
| windows_defender_asr_block_events_filter | search * |
windows_defender_asr_block_events_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 Finding (Notable) | No |
| Creates Intermediate Finding (Risk Event) | Yes |
Implementation
The following analytic requires collection of Windows Defender Operational logs in either XML or multi-line. To collect, setup a new input for the Windows Defender Operational logs. In addition, it does require a lookup that maps the ID to ASR Rule name. Note that Audit and block Event IDs have different fields, therefore the analytic will need to be modified for each type of event.
Known False Positives
Some false positives are expected initially as the ASR rules are tuned and configured.
Associated Analytic Story
Intermediate Findings
| Message | Entity Field | Entity Type | Risk Score |
|---|---|---|---|
| The ASR block event [$ASR_Rule$] was triggered on [$dest$]. | dest | system | 20 |
Threat Objects
| Field | Type |
|---|---|
| Target_Commandline | process |
| Parent_Commandline | parent_process |
| Process_Name | file_path |
References
Detection Testing
| Test Type | Status | Dataset | Source | Sourcetype |
|---|---|---|---|---|
| Validation | ✅ Passing | N/A | N/A | N/A |
| Unit | ✅ Passing | Dataset | XmlWinEventLog:Microsoft-Windows-Windows Defender/Operational |
XmlWinEventLog |
| Integration | ✅ Passing | Dataset | XmlWinEventLog:Microsoft-Windows-Windows Defender/Operational |
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: 11