Skip to content

Siemphony is in beta and still being built. How a rule earns its badge.

Siemphony’s repertoire

Forced shutdown or restart requested with no delay

Siemphony@siemphonylowT1529unverified
Matches shutdown.exe run with a shutdown or restart action and with either the force flag or a zero timeout, which is the destructive shape AN1538 describes: an operator-scheduled reboot normally leaves a grace period so users can save work, while an adversary ending a system takes it now. Flags are matched with windash because shutdown.exe accepts /f, -f and the Unicode dash forms interchangeably. The nearest MITRE knob is CommandLineMatch, but DET0559 attaches that one to the Linux analytic AN1539, not to AN1538; the flag combinations here are authored either way. AN1538's own two knobs are not expressible in this Sigma subset — "user not in Helpdesk group" needs a group lookup and "unexpected during business hours" needs a time comparison, and without them the rule cannot separate an adversary from an admin, which is why the level is low rather than the severity of the outcome. The brief's other Windows source, EventID 1074, is not used: it is written by USER32 to the System channel, but the brief maps it onto product windows / service security, and a rule on the Security service would parse, render and match nothing. Blind spots that follow from keying on the process: PowerShell Restart-Computer and Stop-Computer, and the API routes ATT&CK names (InitiateSystemShutdownExW, ExitWindowsEx, NtRaiseHardError for a forced BSOD), all shut the host down without ever creating a shutdown.exe process. The rule is written in the Sysmon EventID 1 vocabulary the brief names; if Security 4688 feeds this category instead, CommandLine is populated only with both Audit Process Creation and the separate Include command line in process creation events policy enabled, and the field is empty otherwise. UNVERIFIED AS AUTHORED — derived from MITRE ATT&CK DET0559, not hand-written and not tested by its author. Any lab result is on this rule's own page.Full description

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

Sentinel · KQL

Run this as a search.

DeviceProcessEvents| where ((FolderPath endswith "\\shutdown.exe" and (ProcessCommandLine contains "-r" or ProcessCommandLine contains "/r" or ProcessCommandLine contains "–r" or ProcessCommandLine contains "—r" or ProcessCommandLine contains "―r" or ProcessCommandLine contains "-s" or ProcessCommandLine contains "/s" or ProcessCommandLine contains "–s" or ProcessCommandLine contains "—s" or ProcessCommandLine contains "―s")) and (ProcessCommandLine contains "-f" or ProcessCommandLine contains "/f" or ProcessCommandLine contains "–f" or ProcessCommandLine contains "—f" or ProcessCommandLine contains "―f" or ProcessCommandLine contains "-t 0" or ProcessCommandLine contains "/t 0" or ProcessCommandLine contains "–t 0" or ProcessCommandLine contains "—t 0" or ProcessCommandLine contains "―t 0"))

Splunk · SPL

Run this as a search.

index=* ((Image="*\\shutdown.exe" AND (CommandLine="*-r*" OR CommandLine="*/r*" OR CommandLine="*–r*" OR CommandLine="*—r*" OR CommandLine="*―r*" OR CommandLine="*-s*" OR CommandLine="*/s*" OR CommandLine="*–s*" OR CommandLine="*—s*" OR CommandLine="*―s*")) AND (CommandLine="*-f*" OR CommandLine="*/f*" OR CommandLine="*–f*" OR CommandLine="*—f*" OR CommandLine="*―f*" OR CommandLine="*-t 0*" OR CommandLine="*/t 0*" OR CommandLine="*–t 0*" OR CommandLine="*—t 0*" OR CommandLine="*―t 0*"))

Elastic · ES|QL

Run this as a search.

FROM logs-*| WHERE ((TO_LOWER(process.executable) LIKE "*\\\\shutdown.exe" AND (TO_LOWER(process.command_line) LIKE "*-r*" OR TO_LOWER(process.command_line) LIKE "*/r*" OR TO_LOWER(process.command_line) LIKE "*–r*" OR TO_LOWER(process.command_line) LIKE "*—r*" OR TO_LOWER(process.command_line) LIKE "*―r*" OR TO_LOWER(process.command_line) LIKE "*-s*" OR TO_LOWER(process.command_line) LIKE "*/s*" OR TO_LOWER(process.command_line) LIKE "*–s*" OR TO_LOWER(process.command_line) LIKE "*—s*" OR TO_LOWER(process.command_line) LIKE "*―s*")) AND (TO_LOWER(process.command_line) LIKE "*-f*" OR TO_LOWER(process.command_line) LIKE "*/f*" OR TO_LOWER(process.command_line) LIKE "*–f*" OR TO_LOWER(process.command_line) LIKE "*—f*" OR TO_LOWER(process.command_line) LIKE "*―f*" OR TO_LOWER(process.command_line) LIKE "*-t 0*" OR TO_LOWER(process.command_line) LIKE "*/t 0*" OR TO_LOWER(process.command_line) LIKE "*–t 0*" OR TO_LOWER(process.command_line) LIKE "*—t 0*" OR TO_LOWER(process.command_line) LIKE "*―t 0*"))

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="5">    <!-- Set <if_sid> to the decoder/base rule for windows so this only evaluates relevant events. -->    <field name="Image" type="pcre2">(?i)\\shutdown\.exe$</field>    <field name="CommandLine" type="pcre2">(?i)(-r|/r|–r|—r|―r|-s|/s|–s|—s|―s)</field>    <field name="CommandLine" type="pcre2">(?i)(-f|/f|–f|—f|―f|-t 0|/t 0|–t 0|—t 0|―t 0)</field>    <description>Forced shutdown or restart requested with no delay</description>    <mitre>      <id>T1529</id>    </mitre>  </rule></group>

Verdicts · reactions · comments

Community

Verdicts from engineers who actually deployed it, and the conversation around it.

Log in to react
Not yet reported on

Nobody has run this in a real environment and said what happened.

Verdicts from engineers who deployed it

0 cast

No 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.