Identifier / Programs / Windows
dfsvc.exe
ClickOnce file version info (xCyclopedia)
LOLBAS AWL Bypass 1 ATT&CK technique 1 documented command 2 known copies with hashes
How dfsvc.exe is abused
AWL Bypass T1127.002 Trusted Developer Utilities Proxy Execution: ClickOnce
Run by rundll32.exe: dfshim.dll,shopenverbapplication
Each abuse is LOLBAS's category and the options and words it uses; the full write-up is on LOLBAS's page for dfsvc.exe.
1 documented command
AWL Bypass T1127.002 Trusted Developer Utilities Proxy Execution: ClickOnce User privileges
Executes click-once-application from Url (trampoline for Dfsvc.exe, DotNet ClickOnce host)
rundll32.exe dfshim.dll,ShOpenVerbApplication {REMOTEURL}IdentifyTrips 1 Sigma rule: mediumPotentially Suspicious Rundll32 Activity by juju4, Jonhnathan Ribeiro, oscd.community, Nasreddine Bencherchali (Nextron Systems)
The command the identifier reads trips a Sigma process-creation rule. These commands and their descriptions are from LOLBAS’s entry for dfsvc.exe, by Oddvar Moe, at commit 2056cb766250 of 2026-09-26, under the GPL-3.0 and LOLBAS’s notice, with no warranty. Changed: Markdown is shown formatted. The source is in lolbas-gtfobins-commands.json.gz, and the full entry is on LOLBAS’s page for dfsvc.exe. The identifier reads it with LOLBAS’s placeholders filled in: a URL as https://example.com/file, a share as \\192.0.2.10\share\file, a path as C:\Data\file and a command as calc.exe.
What detects it
Is it the real dfsvc.exe?
C:\Windows\Microsoft.NET\Framework\v4.0.30319\2 known copies
4.8.4161.0 built by: NET48REL1 · C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\dfsvc.exe · signed by Microsoft Windows
584986978cede231bd748955f8a3777060fccb4b942939476891db25a37b3f3c4.8.4084.0 built by: NET48REL1 · C:\Windows\Microsoft.NET\Framework\v4.0.30319\dfsvc.exe · signed by Microsoft Windows
375a75016c4feddb43c7ebfe9e78670c7c9ff0753cd8ea59e4cf601ee8624659From the file’s version info and the copies recorded by xCyclopedia (MIT). A copy in another folder, signed by someone else or with another hash is not necessarily malicious, but it is worth a closer look. In Ceplin, "<sha256>".whatis() says which known copy a hash is.