Linux Inline Python (-c) Calling os.system to Spawn Shell

Flags Linux processes launching inline Python (-c) that invokes os.system() to execute a shell.

FreeReviewedSigma · High · v2
Product
linux
Category
process_creation
Author
Li Ling, Andy Parkidomo, Robert Rakowski, Blake Hartstein (Bloomberg L.P.) (SigmaHQ), DRL 1.1
Published
2024-09-02
Updated
2026-07-31

ATT&CK techniques

Execution
  1. Recon

  2. Resource Dev

  3. Initial Access

  4. Persistence

  5. Priv Esc

  6. Defense Evasion

  7. Cred Access

  8. Discovery

  9. Lateral Movement

  10. Collection

  11. C2

  12. Exfiltration

  13. Impact

What it detects

This rule flags Linux process creation where the command line includes inline Python execution via "-c" and calls os.system( to execute shell binaries. Attackers commonly use Python's os.system to launch interactive shells (bash, dash, fish, sh, zsh) without dropping a dedicated executable. It relies on process creation telemetry, including the Image path suffix for python/python2/python3 and the command line containing both the Python -c usage and the os.system call with an observed shell path.

Related detections9 linkedT1059 — drag to rearrange
Suspicious Python Execution via Renamed Synaptics Binary
MSBuild Executing Non-Project File or Remote Payload
Possible Ivanti Pulse Connect Secure Command Injection via License Keys-Status Endpoint (via webserver)
Possible Craft CMS RCE via Query-String CLI Option Injection
Possible Aspera Faspex Pre-Auth RCE via YAML Deserialization in package_relay (via webserver)
Possible Sitecore Pre-Auth RCE via Report.ashx Insecure Deserialization (via webserver)
Possible WatchGuard Pre-Auth RCE via agent login XML-RPC CVE-2022-26318
Possible Oracle Opera CGI Webshell Command Execution via operabin
Suspicious tar Extraction of Staged Archive to Temp (via process_creation)
Linux Inline Python (-c) Calling os.system to Spawn Shell
Pivot detection · T1059 · 9 related

Changelog

v2
  1. v2
    Candidate ingested via manual entry.2026-07-31
  2. v1
    No changelog recorded for this version.2026-07-30

Detection content is published as a reviewed draft. Tune thresholds and exclusions against your own telemetry before enabling this rule for alerting.