CVE-2021-42740 Improper Neutralization of Special Elements used in a Command in Shell-quote

Critical 9.8 Published Updated

Attackers can execute arbitrary commands via shell metacharacters in the shell-quote Node.js library due to a flawed regex.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Over the internet
Victim action needed
Not needed
Fix
Available

What is CVE-2021-42740?

CVE-2021-42740 is a critical command injection vulnerability in n/a, published on 21 Oct 2021. An attacker can exploit it over the internet without logging in, with no action from the victim.

Official description

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.

Weakness: CWE-77

Which versions are affected by CVE-2021-42740?

2 open source packages ship an affected version, including shell-quote. It affects 1 product.

PackageAffectedFixed in
shell-quote npmFrom 1.6.31.7.3
shell-quote npmFrom 1.6.31.7.3

Products include Shell-Quote Project Shell-Quote.

How do I fix CVE-2021-42740?

Upgrade shell-quote to 1.7.3 or later.

Upgrade, and pass arguments to programs as a list instead of through a shell. More about Command injection.

Is CVE-2021-42740 being exploited?

There is no known exploitation of CVE-2021-42740 in the wild and no public exploit code.

Sources

Also known as CLSA-2026-1773879463, DEBIAN-CVE-2021-42740, GHSA-g4rg-993r-mgx7, ROOT-APP-NPM-CVE-2021-42740, UBUNTU-CVE-2021-42740.

Is CVE-2021-42740 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free