Detection rules › Splunk
Abuse EQNEDT32.EXE (Windows Event Log)
Detects potential malicious Microsoft Office payload (CVE-2017-11882 or CVE-2018-0798) on host. Equation Editor
MITRE ATT&CK coverage
| Tactic | Techniques |
|---|---|
| Execution | T1203 Exploitation for Client Execution |
References
Event coverage
| Provider | Event | Title |
|---|---|---|
| Security-Auditing | Event ID 4688 | A new process has been created. |
Rule body yaml
id: '1074.1113'
title: Abuse EQNEDT32.EXE
description: 'Detects potential malicious Microsoft Office payload (CVE-2017-11882
or CVE-2018-0798) on host. Equation Editor. -- Threat Actor Association: Bitter
APT, Lotus Blossom, SideWinder, TA428, Tonto Team - Software Association: Soul'
logic_format: Splunk
logic: '`get_endpoint_data` `get_endpoint_data_winevent` (TERM(EventCode=4688) OR
"<EventID>4688<") "EQNEDT32.EXE"| table _time, host, user _time, host, session_id,
process, signature_id, parent_process_name, process_name, user| bin span=300s |
stats values(*) as * by _time, host | where match(parent_process_name, "(?i)EQNEDT32.EXE")
| table _time, host, user _time, host, session_id, process, signature_id, parent_process_name,
user `hec_collect`'
techniques:
- execution:exploitation for client execution
technique_id:
- T1203
data_category:
- Windows event logs
references:
- https://www.fireeye.com/blog/threat-research/2017/12/targeted-attack-in-middle-east-by-apt34.html
Stages and Predicates
Stage 1: search
`get_endpoint_data` `get_endpoint_data_winevent` (TERM(EventCode=4688) OR "<EventID>4688<") "EQNEDT32.EXE"
Stage 2: table
| table _time, host, user _time, host, session_id, process, signature_id, parent_process_name, process_name, user
Stage 3: bucket
| bin span=300s
Stage 4: stats
| stats values(*) as * by _time, host
Stage 5: where
| where match(parent_process_name, "(?i)EQNEDT32.EXE")
Stage 6: table
| table _time, host, user _time, host, session_id, process, signature_id, parent_process_name, user `hec_collect`
Indicators
Each row is a field, operator, and value that the rule matches. The corpus column counts how many other rules in the catalog look for the same combination: high numbers point to widely-used, community-vetted indicators. Blank or 1 shows that the indicator is specific to this rule.
| Field | Kind | Values |
|---|---|---|
EventCode | eq |
|
parent_process_name | match |
|
Search terms
Bare-string tokens in the SPL search body. Splunk matches each token against _raw (the untyped raw event text) anywhere it appears, not against a specific field. These don't surface in the Indicators table because they aren't predicates on a known field.
| Stage | Term |
|---|---|
| 1 | TERM |
| 1 | "<EventID>4688<" |
| 1 | "EQNEDT32.EXE" |