GHSA-698v-4r3x-3vcv

Suggest an improvement
Source
https://github.com/advisories/GHSA-698v-4r3x-3vcv
Import Source
https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/10/GHSA-698v-4r3x-3vcv/GHSA-698v-4r3x-3vcv.json
JSON Data
https://api.osv.dev/v1/vulns/GHSA-698v-4r3x-3vcv
Aliases
  • CVE-2026-112943
Published
2026-10-20T18:30:24Z
Modified
2026-10-20T18:45:09Z
Severity
  • 6.3 (Medium) CVSS_V4 - 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 CVSS Calculator
Summary
launch-editor: escapeCmdArgs() omits % escaping on Windows
Details

Summary

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.

Impact

Only apps that match all of the following conditions are affected:

  • The user uses Windows
  • An attacker can place a file with the malicious filename containing & or %
  • Either of
    • An attacker can inject an environment variable with a malicious value
    • An attacker can add a NTFS alternate data stream to the file placed

Details

Unlike .sh files, .bat / .cmd files on Windows cannot be called directly using child_process.spawn and requires passing them as an argument of cmd.exe. To do so, launch-editor escapes the arguments passed to cmd.exe. But launch-editor did not escape % which is used for environment variables.

Because launch-editor checks if the argument matches an existing filename, the attack requires the attacker to be able to place a file.

  • If the attacker can inject an environment variable as well, they can include the subcommand in the env variable (e.g. set &calc.exe to %ENV%) and call launchEditor with something%ENV%.
  • If the attacker can place a NTFS alternate data stream to the file (e.g. a NTFS alternate data stream named ~-38%calc.exe), they can call launchEditor with something %CMDCMDLINE:~-38%calc.exe.
  • If the attacker can create a filename containing the %CD% and the subcommand (e.g. &calc.exe ), they can call launchEditor with ./%CD%
Database specific
{
    "cwe_ids":  [
        "CWE-78"
    ],
    "github_reviewed":  true,
    "github_reviewed_at":  "2026-10-20T18:30:24Z",
    "nvd_published_at":  "2026-10-20T15:17:17Z",
    "severity":  "MODERATE"
}
References

Affected packages

npm
launch-editor

Package

Name
launch-editor
View open source insights on deps.dev
Purl
pkg:npm/launch-editor

Affected ranges

Type
SEMVER
Events
Introduced
0 Unknown introduced version / All previous versions are affected
Fixed
2.14.2

Database specific

last_known_affected_version_range
"<= 2.14.1"
source
"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/10/GHSA-698v-4r3x-3vcv/GHSA-698v-4r3x-3vcv.json"
vite

Package

Affected ranges

Type
SEMVER
Events
Introduced
8.3.0
Fixed
8.3.3

Database specific

last_known_affected_version_range
"<= 8.3.2"
source
"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/10/GHSA-698v-4r3x-3vcv/GHSA-698v-4r3x-3vcv.json"
vite

Package

Affected ranges

Type
SEMVER
Events
Introduced
8.2.0
Fixed
8.2.4

Database specific

last_known_affected_version_range
"<= 8.2.3"
source
"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/10/GHSA-698v-4r3x-3vcv/GHSA-698v-4r3x-3vcv.json"
vite

Package

Affected ranges

Type
SEMVER
Events
Introduced
8.0.0
Fixed
8.1.6

Database specific

last_known_affected_version_range
"<= 8.1.5"
source
"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/10/GHSA-698v-4r3x-3vcv/GHSA-698v-4r3x-3vcv.json"
vite

Package

Affected ranges

Type
SEMVER
Events
Introduced
7.0.0
Fixed
7.3.7

Database specific

last_known_affected_version_range
"<= 7.3.6"
source
"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/10/GHSA-698v-4r3x-3vcv/GHSA-698v-4r3x-3vcv.json"
vite

Package

Affected ranges

Type
SEMVER
Events
Introduced
0 Unknown introduced version / All previous versions are affected
Fixed
6.4.4

Database specific

last_known_affected_version_range
"<= 6.4.3"
source
"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/10/GHSA-698v-4r3x-3vcv/GHSA-698v-4r3x-3vcv.json"
vite-plus

Package

Name
vite-plus
View open source insights on deps.dev
Purl
pkg:npm/vite-plus

Affected ranges

Type
SEMVER
Events
Introduced
0 Unknown introduced version / All previous versions are affected
Fixed
1.1.0

Database specific

last_known_affected_version_range
"<= 1.0.0"
source
"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/10/GHSA-698v-4r3x-3vcv/GHSA-698v-4r3x-3vcv.json"