Skip to content

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

Siemphony’s repertoire

Detect job scheduling through the legacy at utility

Siemphony@siemphonymediumT1053.002verified in lab
MITRE's Windows analytic names two routes to the legacy job queue — running at.exe and driving the Win32_ScheduledJob WMI class — so the rule carries one selection for each: the image path for the binary, and two command-line forms of the class, the literal name as PowerShell and wmic path spell it plus the job call create form, because job is wmic's alias for Win32_ScheduledJob and that invocation never contains the class name. at.exe was deprecated in favour of schtasks more than a decade ago, which is what gives a bare execution event its value here; no command-line pattern is required, because on a modern estate the invocation itself is the anomaly and MITRE's CommandLinePattern knob is better used to rank matches than to gate them. Note that the WMI leg only sees the class named on a command line, so a compiled agent or implant calling Win32_ScheduledJob in-process is invisible to it, and the follow-on execution the analytic describes — an anomalous child of svchost.exe or taskeng.exe minutes later — is a timed correlation Sigma cannot express, so this rule is the scheduling step only. The logic is written in the Sysmon EventID 1 process_creation vocabulary; the strategy's other feed, Security 4698, needs the Audit Other Object Access Events subcategory enabled and carries the job definition in TaskContent rather than Image or CommandLine, so it cannot feed this rule without a field mapping first. UNVERIFIED AS AUTHORED — derived from MITRE ATT&CK DET0333, 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 "\\at.exe" or (ProcessCommandLine contains "Win32_ScheduledJob" or ProcessCommandLine contains " job call create"))

Splunk · SPL

Run this as a search.

index=* (Image="*\\at.exe" OR (CommandLine="*Win32_ScheduledJob*" OR CommandLine="* job call create*"))

Elastic · ES|QL

Run this as a search.

FROM logs-*| WHERE (TO_LOWER(process.executable) LIKE "*\\\\at.exe" OR (TO_LOWER(process.command_line) LIKE "*win32_scheduledjob*" OR TO_LOWER(process.command_line) LIKE "* job call create*"))

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. -->  <!-- 2 rules: the Sigma condition ORs across different fields,       which one rule cannot express. Any one matching is a hit. -->  <rule id="100000" level="7">    <!-- Set <if_sid> to the decoder/base rule for windows so this only evaluates relevant events. -->    <field name="Image" type="pcre2">(?i)\\at\.exe$</field>    <description>Detect job scheduling through the legacy at utility (1/2)</description>    <mitre>      <id>T1053.002</id>    </mitre>  </rule>   <rule id="100001" level="7">    <!-- Set <if_sid> to the decoder/base rule for windows so this only evaluates relevant events. -->    <field name="CommandLine" type="pcre2">(?i)(Win32_ScheduledJob| job call create)</field>    <description>Detect job scheduling through the legacy at utility (2/2)</description>    <mitre>      <id>T1053.002</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.