Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessSupply crafted filename or env var with % payload
-
DeliveryDeveloper triggers open-in-editor on Windows
-
ExploitUnescaped % passed to cmd.exe
-
ExecutionCMD variable expansion injects command
-
ImpactArbitrary code runs as developer
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization OS command sanitization, avoid shell exec
MITRE ATT&CK
2 techniques across 1 tactic: Execution The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Windows-only - the flawed code path is in construct-windows-launch-command.js and does not affect Linux or macOS. Exploitation requires that an attacker-controlled value reaches launch-editor as an argument: either an environment variable value or a file path/name that contains a '%' character enabling CMD variable expansion (e.g. the %VAR:old=new% modifier form), which cmd.exe expands before caret escaping. The open-in-editor feature must actually be invoked (e.g. via a Vite dev-server overlay). Limiting factors: non-Windows platforms are unaffected; the attacker must be able to influence the environment or the filename/path that is opened; and no injection occurs for inputs without '%'. This is a development-time feature, so the realistic victim is a developer's workstation rather than a production server. |
| Impact | This is a medium-severity (CVSS 4.0 base 6.3) OS command injection (CWE-78) that is best characterized as a real-but-narrow issue rather than a top priority. The provided CVSS 4.0 vector (AV:N/AC:L/AT:P/PR:N/UI:N/VC:L/VI:L/VA:L) signals network reach with no privileges, but the AT:P flag (Attack Requirements: Present) and the deliberately Low impact ratings reflect that exploitation is contingent on attacker-controlled '%' content and the Windows-only CMD variable-expansion quirk - not a clean drive-by. No EPSS score was provided, so statistical exploitation probability cannot be cited. The vulnerability is NOT in CISA KEV, so exploitation status is 'no public exploit identified at time of analysis'; a vendor security advisory (GHSA-698v-4r3x-3vcv), fixing PR, and patched release exist, but no standalone POC is present in the inputs. No SSVC decision data was supplied. One tension worth flagging: the vector marks AV:N while the mechanism is fundamentally a Windows/CMD-local argument-escaping flaw triggered by the dev-time open-in-editor feature - treat AV:N as generous and verify the delivery path (malicious repo/filename vs. environment variable) against your own exposure. Overall: patch on normal cadence; it is not an emergency absent evidence of active exploitation. |
| Exploit ScenarioDerived | A developer on Windows runs a Vite (or vite-plus) dev server whose click-to-open-in-editor feature is backed by launch-editor < 2.14.2. An attacker who can influence an environment variable value or a file path/name that gets passed to the editor supplies a value containing '%' with a CMD variable-expansion modifier (e.g. %VAR:old=new%); because launch-editor does not escape '%' before invoking cmd.exe, CMD expands/executes the injected content as the developer's user. No public exploit is identified, but the advisory and patch diff fully document the mechanism. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 20, 2026
OS command injection on Windows in the launch-editor npm package before 2.14.2 lets remote attackers who can influence an environment variable value or a file path containing '%' trigger cmd.exe variable expansion and execute arbitrary commands when the open-in-editor feature is invoked. The flaw is rated medium severity (CVSS 4.0 base 6.3; CVSS 3.1 AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:L/A:L) and is limited to Windows developer workstations using Vite or Vite Plus dev-server tooling; no public exploit identified at time of analysis.
RemediationAI
Vendor-released patch: 2.14.2 - upgrade launch-editor to 2.14.2 or later (release tag https://github.com/vitejs/launch-editor/releases/tag/v2.14.2), and for Vite/Vite Plus update to a release that depends on launch-editor >=2.14.2; the upstream fix is PR https://github.com/vitejs/launch-editor/pull/155 / commit 3c2f9bf2ff8fe63d056a8f9cc52d825b66ca79fc. If immediate upgrade is not possible on Windows, avoid invoking the open-in-editor feature for paths containing '%' and ensure environment variables used during editor launch cannot contain attacker-controlled '%' sequences; this only reduces exposure because the vulnerable cmd.exe construction remains until patched. Restricting write access to environment variables and dev-server working directories further limits who can supply malicious values.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 3 packages in npm
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
launch-editor is a Node.js utility used by Vite and Vite Plus to open source files in an editor from the dev server. On Windows it builds a command string in construct-windows-launch-command.js and hands it to cmd.exe, where percent signs are expanded as environment-variable references (including modifiers such as %VAR:old=new%) before caret escaping can protect them; an argument containing '%' can therefore break out into command execution. The CWE-78 fix in 2.14.2 rejects arguments containing '%' and also rejects CR/LF characters, throwing an error instead of launching; non-Windows platforms never used this code path.
Know when Node.js gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:L/VI:L/VA:L/SC:N/SI:N/SA:N
Exploitation needs attacker-controlled '%' content plus Windows CMD's variable-expansion quirk, so AC:H; no privileges are needed to supply a malicious filename/env value (PR:N); impact is constrained (C/I/A:L).
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
2DescriptionCVE.org
launch-editor allows users to open files with line numbers in editor from Node.js. Prior to 2.14.2, launch-editor did not escape % on Windows when passing an argument to cmd. When an environment variable contained a malicious value, it was possible that that content to be executed. This vulnerability is fixed in 2.14.2.
Blast Radius
ecosystem impact- 46,995 npm packages depend on launch-editor (561 direct, 46,457 indirect)
- 99 npm packages depend on vite (33 direct, 68 indirect)
- 2 npm packages depend on vite-plus (2 direct, 0 indirect)
Ecosystem-wide dependent count for version 2.14.2 and other introduced versions.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
OS command injection occurs when an application passes unsanitized user input directly into system shell commands.
Remote code execution in n8n's workflow expression evaluation system allows an authenticated user with workflow creation
A vulnerability in the NuPoint Unified Messaging (NPM) component of Mitel MiCollab through 9.8 SP1 FP2 (9.8.1.201) could
FortiOS and FortiProxy contain an authentication bypass via the Node.js websocket module allowing unauthenticated remote
Denial of service against HTTP/2 server implementations allows remote unauthenticated attackers to exhaust server resour
Eval injection vulnerability in the internals.batch function in lib/batch.js in the bassmaster plugin before 1.5.2 for t
Flowise version 3.0.5 contains a remote code execution vulnerability in the CustomMCP node. The mcpServerConfig paramete
Node.js 8.5.0 before 8.6.0 allows remote attackers to access unintended files, because a change to ".." handling was inc
An issue was discovered in the node-serialize package 0.0.4 for Node.js. Rated critical severity (CVSS 9.8), this vulner
OpenSSL before 0.9.8za, 1.0.0 before 1.0.0m, and 1.0.1 before 1.0.1h does not properly restrict processing of ChangeCiph
Directory traversal vulnerability in the st module before 0.2.5 for Node.js allows remote attackers to read arbitrary fi
Multiple SQL injection vulnerabilities in the Manage Accounts page in the AccountManagement.asmx service in the Solarwin
The JS-YAML module before 2.0.5 for Node.js parses input without properly considering the unsafe !!js/function tag, whic
EUVD-2026-105039
GHSA-698v-4r3x-3vcv
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB