Detect a document or archive application spawning a system utility
Matches a document viewer, browser or archive tool spawning one of the living-off-the-land binaries MITRE lists in AN1314 — the two selections are that analytic's HighRiskParents and HighRiskChildren knobs written out and ANDed. AN1314 is a four-stage chain: an application open/click/crash event, a file created in a user-writable path, the LOLBIN child, then egress from the same lineage inside a 15-minute window. Sigma has no process-lineage join and no timeframe, so only stage three is expressed here, and the UserPaths and EgressAllowList knobs have no equivalent in a single process_creation event. explorer.exe is omitted from the parent list despite MITRE naming it, because a user launching cmd.exe or powershell.exe from the shell produces the same event and would drown every real hit. UNVERIFIED AS AUTHORED — derived from MITRE ATT&CK DET0478, not hand-written and not tested by its author. Any lab result is on this rule's own page.Full descriptionShow less
The detection
The 4 SIEM queries below are previews produced by Siemphony’s own translator, not pySigma, and none has been executed against a real backend — review before you deploy.
detection.yml
title: Detect a document or archive application spawning a system utilityid: 190b7574-8f2d-47cd-b1ed-168a3789ab2estatus: experimentaldescription: | Matches a document viewer, browser or archive tool spawning one of the living-off-the-land binaries MITRE lists in AN1314 — the two selections are that analytic's HighRiskParents and HighRiskChildren knobs written out and ANDed. AN1314 is a four-stage chain: an application open/click/crash event, a file created in a user-writable path, the LOLBIN child, then egress from the same lineage inside a 15-minute window. Sigma has no process-lineage join and no timeframe, so only stage three is expressed here, and the UserPaths and EgressAllowList knobs have no equivalent in a single process_creation event. explorer.exe is omitted from the parent list despite MITRE naming it, because a user launching cmd.exe or powershell.exe from the shell produces the same event and would drown every real hit. UNVERIFIED AS AUTHORED — derived from MITRE ATT&CK DET0478, not hand-written and not tested by its author. Any lab result is on this rule's own page.references: - https://attack.mitre.org/techniques/T1204 - https://attack.mitre.org/detectionstrategies/DET0478author: Siemphony pipeline (machine-derived from MITRE ATT&CK v19.2)date: 2026-08-16tags: - attack.execution - attack.t1204logsource: category: process_creation product: windowsdetection: high_risk_parent: ParentImage|endswith: - '\winword.exe' - '\excel.exe' - '\powerpnt.exe' - '\acrord32.exe' - '\chrome.exe' - '\msedge.exe' - '\firefox.exe' - '\7zFM.exe' - '\winrar.exe' high_risk_child: Image|endswith: - '\powershell.exe' - '\cmd.exe' - '\wscript.exe' - '\cscript.exe' - '\mshta.exe' - '\rundll32.exe' - '\regsvr32.exe' - '\msiexec.exe' - '\curl.exe' - '\bitsadmin.exe' - '\pcalua.exe' - '\expand.exe' - '\tar.exe' condition: high_risk_parent and high_risk_childfalsepositives: - "Browser- and reader-driven updaters. Chrome, Edge and Acrobat launch msiexec.exe or rundll32.exe during self-update and enterprise extension deployment, which is the same parent/child pair the rule looks for. MITRE's EgressAllowList knob suppresses these downstream; at process creation you need a CommandLine exclusion for the vendor's own update package path." - "Archive tools opening their payload. A user double-clicking a .bat, .msi or setup stub inside a 7-Zip or WinRAR window legitimately makes 7zFM.exe or winrar.exe the parent of cmd.exe or msiexec.exe during ordinary software installation." - "Sanctioned Office automation. Line-of-business workbooks and mail-merge templates whose macros shell out to cmd.exe or cscript.exe to reach a database or a shared drive; these are exactly the entries the analyst is expected to prune out of the HighRiskParents/HighRiskChildren pairing."level: highSentinel · KQL
Run this as a search.
DeviceProcessEvents| where ((InitiatingProcessFolderPath endswith "\\winword.exe" or InitiatingProcessFolderPath endswith "\\excel.exe" or InitiatingProcessFolderPath endswith "\\powerpnt.exe" or InitiatingProcessFolderPath endswith "\\acrord32.exe" or InitiatingProcessFolderPath endswith "\\chrome.exe" or InitiatingProcessFolderPath endswith "\\msedge.exe" or InitiatingProcessFolderPath endswith "\\firefox.exe" or InitiatingProcessFolderPath endswith "\\7zFM.exe" or InitiatingProcessFolderPath endswith "\\winrar.exe") and (FolderPath endswith "\\powershell.exe" or FolderPath endswith "\\cmd.exe" or FolderPath endswith "\\wscript.exe" or FolderPath endswith "\\cscript.exe" or FolderPath endswith "\\mshta.exe" or FolderPath endswith "\\rundll32.exe" or FolderPath endswith "\\regsvr32.exe" or FolderPath endswith "\\msiexec.exe" or FolderPath endswith "\\curl.exe" or FolderPath endswith "\\bitsadmin.exe" or FolderPath endswith "\\pcalua.exe" or FolderPath endswith "\\expand.exe" or FolderPath endswith "\\tar.exe"))
Splunk · SPL
Run this as a search.
index=* ((ParentImage="*\\winword.exe" OR ParentImage="*\\excel.exe" OR ParentImage="*\\powerpnt.exe" OR ParentImage="*\\acrord32.exe" OR ParentImage="*\\chrome.exe" OR ParentImage="*\\msedge.exe" OR ParentImage="*\\firefox.exe" OR ParentImage="*\\7zFM.exe" OR ParentImage="*\\winrar.exe") AND (Image="*\\powershell.exe" OR Image="*\\cmd.exe" OR Image="*\\wscript.exe" OR Image="*\\cscript.exe" OR Image="*\\mshta.exe" OR Image="*\\rundll32.exe" OR Image="*\\regsvr32.exe" OR Image="*\\msiexec.exe" OR Image="*\\curl.exe" OR Image="*\\bitsadmin.exe" OR Image="*\\pcalua.exe" OR Image="*\\expand.exe" OR Image="*\\tar.exe"))Elastic · ES|QL
Run this as a search.
FROM logs-*| WHERE ((TO_LOWER(process.parent.executable) LIKE "*\\\\winword.exe" OR TO_LOWER(process.parent.executable) LIKE "*\\\\excel.exe" OR TO_LOWER(process.parent.executable) LIKE "*\\\\powerpnt.exe" OR TO_LOWER(process.parent.executable) LIKE "*\\\\acrord32.exe" OR TO_LOWER(process.parent.executable) LIKE "*\\\\chrome.exe" OR TO_LOWER(process.parent.executable) LIKE "*\\\\msedge.exe" OR TO_LOWER(process.parent.executable) LIKE "*\\\\firefox.exe" OR TO_LOWER(process.parent.executable) LIKE "*\\\\7zfm.exe" OR TO_LOWER(process.parent.executable) LIKE "*\\\\winrar.exe") AND (TO_LOWER(process.executable) LIKE "*\\\\powershell.exe" OR TO_LOWER(process.executable) LIKE "*\\\\cmd.exe" OR TO_LOWER(process.executable) LIKE "*\\\\wscript.exe" OR TO_LOWER(process.executable) LIKE "*\\\\cscript.exe" OR TO_LOWER(process.executable) LIKE "*\\\\mshta.exe" OR TO_LOWER(process.executable) LIKE "*\\\\rundll32.exe" OR TO_LOWER(process.executable) LIKE "*\\\\regsvr32.exe" OR TO_LOWER(process.executable) LIKE "*\\\\msiexec.exe" OR TO_LOWER(process.executable) LIKE "*\\\\curl.exe" OR TO_LOWER(process.executable) LIKE "*\\\\bitsadmin.exe" OR TO_LOWER(process.executable) LIKE "*\\\\pcalua.exe" OR TO_LOWER(process.executable) LIKE "*\\\\expand.exe" OR TO_LOWER(process.executable) LIKE "*\\\\tar.exe"))
Wazuh · XML rule
Deploy to your manager — this is a rule, not a search.
<group name="sigma,windows,process_creation,"> <!-- Rule ids must be unique on your manager; 100000+ is the user range. --> <rule id="100000" level="12"> <!-- Set <if_sid> to the decoder/base rule for windows so this only evaluates relevant events. --> <field name="ParentImage" type="pcre2">(?i)(\\winword\.exe$|\\excel\.exe$|\\powerpnt\.exe$|\\acrord32\.exe$|\\chrome\.exe$|\\msedge\.exe$|\\firefox\.exe$|\\7zFM\.exe$|\\winrar\.exe$)</field> <field name="Image" type="pcre2">(?i)(\\powershell\.exe$|\\cmd\.exe$|\\wscript\.exe$|\\cscript\.exe$|\\mshta\.exe$|\\rundll32\.exe$|\\regsvr32\.exe$|\\msiexec\.exe$|\\curl\.exe$|\\bitsadmin\.exe$|\\pcalua\.exe$|\\expand\.exe$|\\tar\.exe$)</field> <description>Detect a document or archive application spawning a system utility</description> <mitre> <id>T1204</id> </mitre> </rule></group>
Verdicts · reactions · comments
Community
Verdicts from engineers who actually deployed it, and the conversation around it.
Nobody has run this in a real environment and said what happened.
Verdicts from engineers who deployed it
0 castNo verdicts reported yet. The first one is worth more than the tenth — say what you ran it against.
Log in to report a verdict.
Log in to join the discussion.
No comments yet. Someone who deploys this will have something to say about it.