PowerShell Net.WebClient DownloadFile/DownloadString Usage (Classic)

Flags PowerShell Classic commands using Net.WebClient to download content via DownloadFile or DownloadString.

FreeReviewedSigma · Low · v2
Product
windows
Category
ps_classic_start
Author
Florian Roth (Nextron Systems) (SigmaHQ), DRL 1.1
Published
2017-03-05
Updated
2026-07-31

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 identifies PowerShell classic execution that uses the Net.WebClient class to download content via the .DownloadFile() or .DownloadString() methods. Downloading external content is a common step attackers use to obtain additional payloads or stage follow-on activity. Telemetry relies on PowerShell start logs capturing the script content that includes Net.WebClient and the specific download method calls.

Related detections9 linkedT1059.001 — drag to rearrange
Suspicious PowerShell Download Cradle via ClickFix Fake CAPTCHA (via process_creation)
Suspicious PowerShell Download of lib.zip Archive
Malicious ActiveMQ Exploitation Java Spawning PowerShell Downloader (via process_creation)
Malicious In-Memory Payload Execution via PowerShell DownloadString (via process_creation)
Suspicious Remote Script Download and Execution via iwr Piped to iex
Suspicious PowerShell Invoke-WebRequest Download of Executable Payload
Suspicious Hidden PowerShell Download and Archive Expansion
Malicious PowerShell IEX DownloadString One-Liner
Malicious Cloud Atlas PowerShell Download Cradle via IEX WebClient (via process_creation)
PowerShell Net.WebClient DownloadFile/DownloadString Usage (Classic)
Pivot detection · T1059.001 · 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.