PowerShell Obfuscation Delivered via Stdin Using Set-and-Invoke Pattern

Detects obfuscated PowerShell script blocks that use chained stdin/environment/input patterns.

FreeReviewedSigma · High · v2
Product
windows
Category
ps_script
Author
Nikita Nazarov, oscd.community (SigmaHQ), DRL 1.1
Published
2020-10-12
Updated
2026-07-31

ATT&CK techniques

Execution → Defense Evasion
  1. Recon

  2. Resource Dev

  3. Initial Access

  4. Persistence

  5. Priv Esc

  6. Cred Access

  7. Discovery

  8. Lateral Movement

  9. Collection

  10. C2

  11. Exfiltration

  12. Impact

What it detects

This rule flags PowerShell script block text that matches an obfuscated “set … && set … (environment|invoke|${input}) … && … " pattern, which is commonly used to hide malicious intent while still executing. Attackers may use stdin-driven and chained assignments/invocations to evade straightforward inspection and blend execution with environment/input handling. The detection relies on Script Block Logging telemetry that captures the full script block text executed in PowerShell.

Related detections9 linkedT1027 — drag to rearrange
Malicious FIN7 Powertrash Loader Execution via Obfuscated PowerShell (via process_creation)
Suspicious XOR Obfuscated PowerShell from ClickFix Distribution
Suspicious PowerShell Executing Code from Environment Variable (via process_creation)
Suspicious In-Memory Runspace Execution via PowerShell Script Block
Suspicious Encoded PowerShell Using Base64 Stream Decompression Routines (via process_creation)
Suspicious PowerShell In-Memory Execution with AES Decryption
Suspicious Encoded PowerShell Command Execution
Suspicious PEAKLIGHT Memory-Only PowerShell Downloader Flags (via process_creation)
Obfuscated PowerShell Script: Indirect Cmdlet Execution via ExportedCommands Array Index
PowerShell Obfuscation Delivered via Stdin Using Set-and-Invoke Pattern
Pivot detection · T1027 · 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.