Packages / shell-quote / Security
Improper Neutralization of Special Elements used in a Command in Shell-quote
Affected releases · shell-quote
- 1.x1.6.3 – 1.7.2Fixed in 1.7.3
On 1.x, the newest line:
npm install shell-quote@1.7.3Every release on a timeline
Not affected
0.0.0 – 1.6.2
19 releases
Affected
1.6.3 – 1.7.2
4 releases
Fixed
1.7.3 – 1.12.0
11 releases, latest
What happens
The shell-quote package before 1.7.3 for Node.js allows command injection. An attacker can inject unescaped shell metacharacters through a regex designed to support Windows drive letters. If the output of this package is passed to a real shell as a quoted argument to a command with exec(), an attacker can inject arbitrary commands. This is because the Windows drive letter regex character class is [A-z] instead of the correct [A-Za-z]. Several shell metacharacters exist in the space between capital letter Z and lower case letter a, such as the backtick character.