CVE-2021-38294 Shell Command Injection Vulnerability in Nimbus Thrift Server

Critical 9.8 Published Updated

Attackers can execute arbitrary code on Apache Storm Nimbus servers via crafted Thrift requests without authentication.

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-38294?

CVE-2021-38294 is a critical command injection vulnerability in Apache Storm, published on 25 Oct 2021. An attacker can exploit it over the internet without logging in, with no action from the victim.

Official description

A Command Injection vulnerability exists in the getTopologyHistory service of the Apache Storm 2.x prior to 2.2.1 and Apache Storm 1.x prior to 1.2.4. A specially crafted thrift request to the Nimbus server allows Remote Code Execution (RCE) prior to authentication.

Weakness: CWE-78, CWE-74

Which versions are affected by CVE-2021-38294?

6 open source packages ship an affected version, including org.apache.storm:storm. It affects 1 product.

PackageAffectedFixed in
org.apache.storm:storm MavenFrom 1.0.01.2.4
org.apache.storm:storm MavenFrom 1.0.01.2.4
org.apache.storm:storm MavenFrom 2.0.02.1.1
org.apache.storm:storm MavenFrom 2.0.02.1.1
org.apache.storm:storm MavenFrom 2.2.02.2.1
org.apache.storm:storm MavenFrom 2.2.02.2.1

Products include Apache Storm.

How do I fix CVE-2021-38294?

Upgrade org.apache.storm:storm to a fixed version for your release line: 1.2.4, 2.1.1 or 2.2.1.

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

Is CVE-2021-38294 being exploited?

It is not confirmed as exploited in the wild, but public exploit code for CVE-2021-38294 exists.

Public exploit code: 1 Metasploit module.

Sources

Also known as GHSA-6768-mcjc-8223.

Is CVE-2021-38294 in your software?

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

Check your SBOMs for free