MITRE ATT&CK / Techniques / T1127.002

Trusted Developer Utilities Proxy Execution: ClickOnce

ID
T1127.002
Tactics
TA0002 Execution, TA0005 Stealth
Sub-technique of
T1127 Trusted Developer Utilities Proxy Execution
Platforms
Windows
Data sources
Process Creation, Module Load, Process Metadata
Source
attack.mitre.org
MITRE last modified
12 May 2026

Adversaries may use ClickOnce applications (.appref-ms and .application files) to proxy execution of code through a trusted Windows utility.[4] ClickOnce is a deployment that enables a user to create self-updating Windows-based .NET applications (i.e, .XBAP, .EXE, or .DLL) that install and run from a file share or web page with minimal user interaction. The application launches as a child process of DFSVC.EXE, which is responsible for installing, launching, and updating the application.[5]

Because ClickOnce applications receive only limited permissions, they do not require administrative permissions to install.[6] As such, adversaries may abuse ClickOnce to proxy execution of malicious code without needing to escalate privileges.

ClickOnce may be abused in a number of ways. For example, an adversary may rely on User Execution. When a user visits a malicious website, the .NET malware is disguised as legitimate software and a ClickOnce popup is displayed for installation.[1]

Adversaries may also abuse ClickOnce to execute malware via a Rundll32 script using the command rundll32.exe dfshim.dll,ShOpenVerbApplication1.[7]

Additionally, an adversary can move the ClickOnce application file to a remote user’s startup folder for continued malicious code deployment (i.e., Registry Run Keys / Startup Folder).[4][8]

Detection

Mitigations (3)

M1021 Restrict Web-Based Content

Disable ClickOnce installations from the internet using the following registry key:
\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\Security\TrustManager\PromptingLevel — Internet:Disabled[1]

M1042 Disable or Remove Feature or Program

Disable ClickOnce installations from the internet using the following registry key:
\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\Security\TrustManager\PromptingLevel — Internet:Disabled[1][2]

ClickOnce may not be necessary within an environment and should be disabled if not being used.

M1045 Code Signing

Enforce binary and application integrity with digital signature verification to prevent untrusted code from executing.[3]

References

  1. NetSPI ClickOnce
  2. Microsoft Learn ClickOnce Config
  3. Microsoft Learn ClickOnce and Authenticode
  4. Burke/CISA ClickOnce BlackHat
  5. SpectorOps Medium ClickOnce
  6. Microsoft Learn ClickOnce
  7. LOLBAS /Dfsvc.exe
  8. Burke/CISA ClickOnce Paper