
Loading

Loading
We use strictly necessary cookies to run this site, and analytics cookies to understand how it's used. See our Privacy Policy for details.
A GitHub-reviewed security advisory, not necessarily under active exploitation the way our CISA KEV advisories are, but a real, disclosed vulnerability in an open-source dependency.
Affected packages
Vulnerable: <= 2.14.1
Patched in 2.14.2
Vulnerable: >= 8.3.0, <= 8.3.2
Patched in 8.3.3
Vulnerable: >= 8.2.0, <= 8.2.3
Patched in 8.2.4
Vulnerable: >= 8.0.0, <= 8.1.5
Patched in 8.1.6
Vulnerable: >= 7.0.0, <= 7.3.6
Patched in 7.3.7
Vulnerable: <= 6.4.3
Patched in 6.4.4
Vulnerable: <= 1.0.0
Patched in 1.1.0
Details
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.
Only apps that match all of the following conditions are affected:
& or %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.
&calc.exe to %ENV%) and call launchEditor with something%ENV%.~-38%calc.exe), they can call launchEditor with something %CMDCMDLINE:~-38%calc.exe.%CD% and the subcommand (e.g. &calc.exe ), they can call launchEditor with ./%CD%Talk to us about this
Find out whether this dependency (or others like it) is actually reachable in your codebase.
Get help patching, or building dependency-scanning into your pipeline going forward.
A secure code review or supply chain review finds this before an advisory does.