Skip to content

Siemphony is in beta and still being built. What ships today, and what does not.

Siemphony’s repertoire

Process executed from a filename with a trailing space

Siemphony@siemphonymediumT1036.006unverified
AN0812 asks for "file execution where the file name contains a trailing space to masquerade as a known executable," citing how command-line interpreters handle trailing whitespace differently from the GUI dispatch behaviour the technique is best known for on macOS. This rule takes the literal, single-event form of that claim on the {category: process_creation, product: linux} logsource — the same raw-auditd-normalised shape (Image, CommandLine) used throughout this corpus — and matches an executed `Image` whose resolved path ends in a literal space character. `Image` is the auditd pipeline's resolved absolute path of the file that was actually execve'd, so this reads the real, on-disk filename rather than however it was quoted on a command line, which is the more literal reading of the technique: the file's own name carries the trailing space, not the way it was invoked. This is deliberately narrow and says nothing about *why* a trailing space would help an adversary on Linux specifically — unlike macOS's Finder, Linux has no extension-based double-click dispatch for this to bypass, and MITRE's own description is written primarily around that macOS mechanism; AN0812's own text frames the Linux angle as evading a command-line interpreter or a naive extension check rather than an exec reroute, and this rule only asserts the checkable fact — a trailing-space filename was executed — not the more specific evasion story. Two of MITRE's three knobs go unpopulated: ExecutableNameTrailingSpace *is* the selector below, so there is nothing further to add; TimeWindow, aimed at flagging off-hours execution to cut noise, needs a time-of-day comparison lib/sigma has no function for, so it is not attempted; and UserContext (untrusted or lower-privileged users) is left to the reviewer, since a blanket privilege filter here would need a per-estate notion of "untrusted" this brief does not supply. The second Linux logsource in the same analytic, {product: linux, service: syslog}, is not attempted: no rule in this corpus has an established Sigma field vocabulary for it. AN0813, the macOS leg, is not attempted either: its only logsource, {product: macos, service: unifiedlog}, is unstandardised in this pipeline — the same blocker already recorded against that exact source for T1037.002, T1059.002, T1548.004 and T1546.006 — despite macOS being where MITRE's own narrative example (Finder double-click dispatch) actually applies. Prerequisite: raw auditd does not record execve by default; this returns nothing until a rule such as `-a always,exit -F arch=b64 -S execve -k exec` is loaded, and zero rows reads as quiet when it actually means blind. UNVERIFIED AS AUTHORED — derived from MITRE ATT&CK DET0292, 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 " "

Splunk · SPL

Run this as a search.

index=* Image="* "

Elastic · ES|QL

Run this as a search.

FROM logs-*| WHERE TO_LOWER(process.executable) LIKE "* "

Wazuh · XML rule

Deploy to your manager — this is a rule, not a search.

<group name="sigma,linux,process_creation,">  <!-- Rule ids must be unique on your manager; 100000+ is the user range. -->  <rule id="100000" level="7">    <!-- Set <if_sid> to the decoder/base rule for linux so this only evaluates relevant events. -->    <field name="Image" type="pcre2">(?i) $</field>    <description>Process executed from a filename with a trailing space</description>    <mitre>      <id>T1036.006</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.