Windows Suspicious IIS Module Registration via w3wp.exe, appcmd.exe, and PowerShell/gacutil

Flags w3wp.exe-launched appcmd.exe module registrations involving PowerShell publication or gacutil GAC installation.

FreeReviewedSigma · High · v2
Product
windows
Category
process_creation
Author
Florian Roth (Nextron Systems), Microsoft (idea) (SigmaHQ), DRL 1.1
Published
2022-08-04
Updated
2026-07-31

ATT&CK techniques

Persistence
  1. Recon

  2. Resource Dev

  3. Initial Access

  4. Execution

  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 process creation where IIS worker processes (w3wp.exe) spawn appcmd.exe to add an IIS module. It further narrows the activity to module deployment patterns that include publishing via PowerShell and/or installation of a module assembly through gacutil. Such actions matter because IIS module registration can persistently introduce backend code execution paths on the server. The detection relies on process creation telemetry capturing ParentImage, CommandLine, and Image fields for w3wp.exe-driven module installation.

Related detections9 linkedT1505.004 — drag to rearrange
Malicious BadIIS C2 Communication via lwxatisme User-Agent
Suspicious BadIIS Native Module Registration via cmd Copy
Malicious Native IIS Module Installation via Appcmd by UAT-8099
Malicious BadIIS Module Load into IIS Worker Process by UAT-8099
Suspicious Malicious IIS Module DLL Written to Inetsrv Directory (via file_event)
Malicious Webserver IIS Configuration Edited - SYSMON (via file_event)
Malicious Webserver IIS Module Installed - Command (via process_creation)
Malicious Webserver IIS Module Installed - Command (via process_creation) - Variant 2
Malicious Webserver IIS Module Installed - PowerShell (via powershell)
Windows Suspicious IIS Module Registration via w3wp.exe, appcmd.exe, and PowerShell/gacutil
Pivot detection · T1505.004 · 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.