Skip to content

Apache Tomcat OS Command Injection vulnerability

High severity GitHub Reviewed Published Apr 18, 2019 to the GitHub Advisory Database • Updated Dec 8, 2023

Package

maven org.apache.tomcat.embed:tomcat-embed-core (Maven)

Affected versions

>= 8.0.0, < 8.5.40
>= 7.0.0, < 7.0.94
>= 9.0.0.M1, < 9.0.17

Patched versions

8.5.40
7.0.94
9.0.17

Description

When running on Windows with enableCmdLineArguments enabled, the CGI Servlet in Apache Tomcat 9.0.0.M1 to 9.0.17, 8.5.0 to 8.5.39 and 7.0.0 to 7.0.93 is vulnerable to Remote Code Execution due to a bug in the way the JRE passes command line arguments to Windows. The CGI Servlet is disabled by default. The CGI option enableCmdLineArguments is disable by default in Tomcat 9.0.x (and will be disabled by default in all versions in response to this vulnerability). For a detailed explanation of the JRE behaviour, see Markus Wulftange's blog (https://codewhitesec.blogspot.com/2016/02/java-and-command-line-injections-in-windows.html) and this archived MSDN blog (https://web.archive.org/web/20161228144344/https://blogs.msdn.microsoft.com/twistylittlepassagesallalike/2011/04/23/everyone-quotes-command-line-arguments-the-wrong-way/).

References

Published by the National Vulnerability Database Apr 15, 2019
Published to the GitHub Advisory Database Apr 18, 2019
Reviewed Jun 16, 2020
Last updated Dec 8, 2023

Severity

High
8.1
/ 10

CVSS base metrics

Attack vector
Network
Attack complexity
High
Privileges required
None
User interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High
CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H

Weaknesses

CVE ID

CVE-2019-0232

GHSA ID

GHSA-8vmx-qmch-mpqg

Source code

Checking history
See something to contribute? Suggest improvements for this vulnerability.