Windows Process Creation: Bun executes bun_environment.js via node.exe
Flags node.exe spawning bun.exe with a command line containing bun_environment.js and a GitHub runner release download.
- Product
- windows
- Category
- process_creation
- Author
- Swachchhanda Shrawan Poudel (Nextron Systems) (SigmaHQ), DRL 1.1
- Published
- 2025-11-25
- Updated
- 2026-07-31
ATT&CK techniques
Initial Access → ExecutionRecon
Resource Dev
Initial Access
Persistence
Priv Esc
Defense Evasion
Cred Access
Discovery
Lateral Movement
Collection
C2
Exfiltration
Impact
What it detects
This rule identifies when node.exe spawns bun.exe with a command line that includes execution of bun_environment.js. It matters because abusing the Bun runtime can run attacker-controlled JavaScript payloads during supply-chain style compromises. The detection relies on Windows process creation telemetry, matching parent-child Image paths and specific command-line substrings related to bun_environment.js and an external download URL.
Reporting behind it
- aikido.devhttps://www.aikido.dev/blog/shai-hulud-strikes-again-hitting-zapier-ensdomains
- wiz.iohttps://www.wiz.io/blog/shai-hulud-2-0-ongoing-supply-chain-attack
- github.comhttps://github.com/asyncapi/cli/blob/2efa4dff59bc3d3cecdf897ccf178f99b115d63d/setup_bun.js
- semgrep.devhttps://semgrep.dev/blog/2025/digging-for-secrets-sha1-hulud-the-second-coming-of-the-npm-worm/
- github.comhttps://github.com/SigmaHQ/sigma/blob/master/rules-emerging-threats/2025/Malware/Shai-Hulud/proc_creation_win_mal_shai_hulud_malicious_node_bun_execution.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: Bun executes bun_environment.js via node.exe"
id: 03d20580-db3b-406d-9f92-20d20ed6d40a
related:
- id: eb827bbd-670a-4d58-8446-c464d8ac2323
type: similar
- id: 5299fadf-f228-4526-8274-251db1960be9
type: derived
status: experimental
description: This rule identifies when node.exe spawns bun.exe with a command line that includes execution of bun_environment.js. It matters because abusing the Bun runtime can run attacker-controlled JavaScript payloads during supply-chain style compromises. The detection relies on Windows process creation telemetry, matching parent-child Image paths and specific command-line substrings related to bun_environment.js and an external download URL.
references:
- https://www.aikido.dev/blog/shai-hulud-strikes-again-hitting-zapier-ensdomains
- https://www.wiz.io/blog/shai-hulud-2-0-ongoing-supply-chain-attack
- https://github.com/asyncapi/cli/blob/2efa4dff59bc3d3cecdf897ccf178f99b115d63d/setup_bun.js
- https://semgrep.dev/blog/2025/digging-for-secrets-sha1-hulud-the-second-coming-of-the-npm-worm/
- https://github.com/SigmaHQ/sigma/blob/master/rules-emerging-threats/2025/Malware/Shai-Hulud/proc_creation_win_mal_shai_hulud_malicious_node_bun_execution.yml
author: Swachchhanda Shrawan Poudel (Nextron Systems), Huntrule Team
date: 2025-11-25
tags:
- attack.t1195.002
- attack.t1203
- attack.execution
- attack.initial-access
- detection.emerging-threats
logsource:
category: process_creation
product: windows
detection:
selection_parent:
ParentImage|endswith: \node.exe
selection_child_bun_script:
Image|endswith: \bun.exe
CommandLine|contains:
- bun_environment.js
- https://github.com/actions/runner/releases/download/v2.330.0
condition: selection_parent and 1 of selection_child_*
falsepositives:
- Legitimate but uncommon use of files named `bun_environment.js` could trigger this rule.
level: high
regression_tests_path: regression_data/rules-emerging-threats/2025/Malware/Shai-Hulud/proc_creation_win_mal_shai_hulud_malicious_node_bun_execution/info.yml
license: DRL-1.1