Ceplin Command Identifier

Identifier / Programs / Windows

winget.exe

Windows Package Manager. tldr-pages

LOLBAS Execute, Download, AWL Bypass 4 Sigma rules name it 2 ATT&CK techniques 3 documented commands

Opens the identifier with your command. It is read in your browser and sent nowhere.

How winget.exe is abused

documented by LOLBAS

Execute T1105 Ingress Tool Transfer

install

--manifest

Download T1105 Ingress Tool Transfer

install or

--accept-package-agreements
-s

AWL Bypass T1105 Ingress Tool Transfer

install or

--accept-package-agreements
-s

Each abuse is LOLBAS's category and the options and words it uses; the full write-up is on LOLBAS's page for winget.exe.

3 documented commands

from LOLBAS, each read by the identifier

Execute T1105 Ingress Tool Transfer Local Administrator - required to enable local manifest setting privileges

Downloads a file from the web address specified in .yml file and executes it on the system. Local manifest setting must be enabled in winget for it to work: winget settings --enable LocalManifestFiles

winget.exe install --manifest {PATH:.yml}
Identify

Trips 1 Sigma rule: mediumInstall New Package Via Winget Local Manifest by Sreeman, Florian Roth (Nextron Systems), frack113

Download T1105 Ingress Tool Transfer User privileges

Download and install any software from the Microsoft Store using its name or Store ID, even if the Microsoft Store App itself is blocked on the machine. For example, use "Sysinternals Suite" or 9p7knl5rwt25 for obtaining ProcDump, PsExec via the Sysinternals Suite. Note: a Microsoft account is required for this.

winget.exe install --accept-package-agreements -s msstore {name or ID}
Identify

Trips no Sigma process-creation rule.

AWL Bypass T1105 Ingress Tool Transfer User privileges

Download and install any software from the Microsoft Store using its name or Store ID, even if the Microsoft Store App itself is blocked on the machine, and even if AppLocker is active on the machine. For example, use "Sysinternals Suite" or 9p7knl5rwt25 for obtaining ProcDump, PsExec via the Sysinternals Suite. Note: a Microsoft account is required for this.

winget.exe install --accept-package-agreements -s msstore {name or ID}
Identify

Trips no Sigma process-creation rule.

1 of the 3 commands the identifier reads trips a Sigma process-creation rule; 2 trip none. These commands and their descriptions are from LOLBAS’s entry for winget.exe, by Paul Sanders, 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 winget.exe. The identifier reads each 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

Sigma process creation rules
highAdd Insecure Download Source To WingetNasreddine Bencherchali (Nextron Systems)
mediumAdd New Download Source To WingetNasreddine Bencherchali (Nextron Systems)
mediumAdd Potential Suspicious New Download Source To WingetNasreddine Bencherchali (Nextron Systems)
mediumInstall New Package Via Winget Local ManifestSreeman, Florian Roth (Nextron Systems), frack113
T1059Command and Scripting Interpreter
T1105Ingress Tool Transfer

Is it the real winget.exe?

file version info and known copies
Installed inC:\Users\user\AppData\Local\Microsoft\WindowsApps\
Signed byMicrosoft Corporation

From 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.

Everyday use

from tldr-pages, CC BY 4.0

Install a package (use --source when package is available from multiple sources)

winget [add packageIdentify

Remove a package (Note: remove can also be used instead of uninstall)

winget [rm packageIdentify

Display information about a package

winget show packageIdentify

None of the 3 examples the identifier reads matches LOLBAS abuse or trips a Sigma process-creation rule.