Windows PowerShell Downloading DLLs via Invoke-WebRequest or Invoke-RestMethod

Alerts on PowerShell using web request cmdlets to download an HTTP DLL to disk.

FreeReviewedSigma · Medium · v1
Product
windows
Category
process_creation
Author
Florian Roth (Nextron Systems), Hieu Tran (SigmaHQ), DRL 1.1
Published
2023-03-13
Updated
2026-07-30

ATT&CK techniques

Execution → C2
  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. Exfiltration

  12. Impact

What it detects

This rule flags Windows process creation where PowerShell command lines indicate downloading content over HTTP to a file ending in .dll using Invoke-WebRequest or Invoke-RestMethod. Attackers commonly use these cmdlets to retrieve and stage malicious DLLs for later execution, making this an important early indicator. Detection relies on process creation telemetry and matching PowerShell command line strings containing http, OutFile, and .dll alongside the relevant cmdlet aliases.

Related detections9 linkedT1059.001 — drag to rearrange
Suspicious PowerShell Download of Disguised Payload to ProgramData
Suspicious PowerShell WebClient Download of Executable Payload
Suspicious PowerShell Remote Script Execution via IEX DownloadString
Suspicious PowerShell Download Cradle to Blogspot (via process_creation)
Suspicious Hidden PowerShell WebClient DownloadFile Cradle
Suspicious PowerShell Download Cradle with Spoofed User-Agent via MSIX
Malicious PowerShell In-Memory Download Cradle via Script Block (via ps_script)
Suspicious node.exe Execution Spawned by PowerShell
Suspicious PowerShell Download Cradle via IEX and DownloadString (via process_creation)
Windows PowerShell Downloading DLLs via Invoke-WebRequest or Invoke-RestMethod
Pivot detection · T1059.001 · 9 related

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