Windows Process Creation: csc.exe Used for Dynamic .NET Compilation
Flags Windows runs of csc.exe with /noconfig /fullpaths and an @-file, consistent with dynamic .NET compilation.
- Product
- windows
- Category
- process_creation
- Author
- Nasreddine Bencherchali (Nextron Systems) (SigmaHQ), DRL 1.1
- Published
- 2023-08-02
- Updated
- 2026-07-31
ATT&CK techniques
Defense EvasionRecon
Resource Dev
Initial Access
Execution
Persistence
Priv Esc
Defense Evasion
Cred Access
Discovery
Lateral Movement
Collection
C2
Exfiltration
Impact
What it detects
This rule flags Windows process creation events where csc.exe is executed with command-line arguments consistent with compiling code dynamically (including /noconfig /fullpaths and an @-file parameter). Attackers may use the Microsoft C# compiler to compile payload components at runtime to support later execution stages. It relies on process creation telemetry, matching the process image ending in csc.exe and specific command-line contents.
Reporting behind it
- securityboulevard.comhttps://securityboulevard.com/2019/08/agent-tesla-evading-edr-by-removing-api-hooks/
- clearskysec.comhttps://www.clearskysec.com/wp-content/uploads/2018/11/MuddyWater-Operations-in-Lebanon-and-Oman.pdf
- app.any.runhttps://app.any.run/tasks/c6993447-d1d8-414e-b856-675325e5aa09/
- twitter.comhttps://twitter.com/gN3mes1s/status/1206874118282448897
- github.comhttps://github.com/SigmaHQ/sigma/blob/master/rules-threat-hunting/windows/process_creation/proc_creation_win_csc_compilation.yml
Changelog
v5- v5Candidate ingested via manual entry.2026-07-31
- v4Candidate ingested via manual entry.2026-07-31
- v3Candidate ingested via manual entry.2026-07-31
- v2Candidate ingested via manual entry.2026-07-31
- v1No 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.
title: "Windows Process Creation: csc.exe Used for Dynamic .NET Compilation"
id: f73c02bc-d9d1-4359-97b2-fcaf4e05c795
related:
- id: dcaa3f04-70c3-427a-80b4-b870d73c94c4
type: derived
- id: acf2807c-805b-4042-aab9-f86b6ba9cb2b
type: derived
status: test
description: This rule flags Windows process creation events where csc.exe is executed with command-line arguments consistent with compiling code dynamically (including /noconfig /fullpaths and an @-file parameter). Attackers may use the Microsoft C# compiler to compile payload components at runtime to support later execution stages. It relies on process creation telemetry, matching the process image ending in csc.exe and specific command-line contents.
references:
- https://securityboulevard.com/2019/08/agent-tesla-evading-edr-by-removing-api-hooks/
- https://www.clearskysec.com/wp-content/uploads/2018/11/MuddyWater-Operations-in-Lebanon-and-Oman.pdf
- https://app.any.run/tasks/c6993447-d1d8-414e-b856-675325e5aa09/
- https://twitter.com/gN3mes1s/status/1206874118282448897
- https://github.com/SigmaHQ/sigma/blob/master/rules-threat-hunting/windows/process_creation/proc_creation_win_csc_compilation.yml
author: Nasreddine Bencherchali (Nextron Systems), Huntrule Team
date: 2023-08-02
tags:
- attack.stealth
- attack.t1027.004
- detection.threat-hunting
logsource:
category: process_creation
product: windows
detection:
selection:
Image|endswith: \csc.exe
CommandLine|contains: /noconfig /fullpaths @
condition: selection
falsepositives:
- Many legitimate applications make use of dynamic compilation. Use this rule to hunt for anomalies
level: medium
license: DRL-1.1