Windows Process Execution via Squirrel.exe Proxy Arguments
Identifies Windows executions of Squirrel.exe/Update.exe that use processStart-style arguments to launch other processes.
FreeUnreviewedSigmamediumv1
windows-process-execution-via-squirrel-exe-proxy-arguments-45239e6a
title: Windows Process Execution via Squirrel.exe Proxy Arguments
id: ba717818-c184-4b3f-b2b5-f5f1bf9dc13c
related:
- id: 1e75c1cc-c5d4-42aa-ac3d-91b0b68b3b4c
type: similar
- id: fa4b21c9-0057-4493-b289-2556416ae4d7
type: obsolete
- id: 45239e6a-b035-4aaf-b339-8ad379fcb67e
type: derived
status: test
description: This rule flags Windows process creation events where the image path ends with \squirrel.exe or \update.exe and the command line contains Squirrel proxy arguments such as --processStart and related options. Attackers can abuse Squirrel’s process-start capabilities to launch arbitrary payloads through an application-native binary, helping blend execution into normal Electron app activity. The detection relies on process creation telemetry, specifically the Image path suffix and command-line argument substrings, with optional exclusions for known Electron updater shortcuts for Discord, GitHub Desktop, Teams, and Yammer.
references:
- https://lolbas-project.github.io/lolbas/OtherMSBinaries/Squirrel/
- http://www.hexacorn.com/blog/2019/03/30/sqirrel-packages-manager-as-a-lolbin-a-k-a-many-electron-apps-are-lolbins-by-default/
- http://www.hexacorn.com/blog/2018/08/16/squirrel-as-a-lolbin/
- https://github.com/SigmaHQ/sigma/blob/master/rules/windows/process_creation/proc_creation_win_squirrel_proxy_execution.yml
author: Nasreddine Bencherchali (Nextron Systems), Karneades / Markus Neis, Jonhnathan Ribeiro, oscd.community, Huntrule Team
date: 2022-06-09
modified: 2025-10-07
tags:
- attack.execution
- attack.stealth
- attack.t1218
logsource:
category: process_creation
product: windows
detection:
selection_img:
Image|endswith:
- \squirrel.exe
- \update.exe
selection_exec:
CommandLine|contains:
- --processStart
- --processStartAndWait
- --createShortcut
filter_optional_discord:
CommandLine|contains|all:
- :\Users\
- \AppData\Local\Discord\Update.exe
- Discord.exe
CommandLine|contains:
- --createShortcut
- --processStart
filter_optional_github_desktop:
CommandLine|contains|all:
- :\Users\
- \AppData\Local\GitHubDesktop\Update.exe
- GitHubDesktop.exe
CommandLine|contains:
- --createShortcut
- --processStartAndWait
filter_optional_teams:
CommandLine|contains|all:
- :\Users\
- \AppData\Local\Microsoft\Teams\Update.exe
- Teams.exe
CommandLine|contains:
- --processStart
- --createShortcut
filter_optional_yammer:
CommandLine|contains|all:
- :\Users\
- \AppData\Local\yammerdesktop\Update.exe
- Yammer.exe
CommandLine|contains:
- --processStart
- --createShortcut
condition: all of selection_* and not 1 of filter_optional_*
falsepositives:
- Expected FP with some Electron based applications such as (1Clipboard, Beaker Browser, Caret, Discord, GitHub Desktop, etc.)
level: medium
license: DRL-1.1
What it detects
This rule flags Windows process creation events where the image path ends with \squirrel.exe or \update.exe and the command line contains Squirrel proxy arguments such as --processStart and related options. Attackers can abuse Squirrel’s process-start capabilities to launch arbitrary payloads through an application-native binary, helping blend execution into normal Electron app activity. The detection relies on process creation telemetry, specifically the Image path suffix and command-line argument substrings, with optional exclusions for known Electron updater shortcuts for Discord, GitHub Desktop, Teams, and Yammer.
Known false positives
- Expected FP with some Electron based applications such as (1Clipboard, Beaker Browser, Caret, Discord, GitHub Desktop, etc.)
Detection content is published as a reviewed draft. Tune thresholds and exclusions against your own telemetry before enabling this rule for alerting.