CVE-2021-30639 DoS after non-blocking IO error
An attacker can cause a denial of service in Apache Tomcat by triggering non-blocking I/O errors, affecting applications using this feature.
- 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-30639?
CVE-2021-30639 is a high-severity denial of service vulnerability in Apache Tomcat, published on 12 Jul 2021. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
A vulnerability in Apache Tomcat allows an attacker to remotely trigger a denial of service. An error introduced as part of a change to improve error handling during non-blocking I/O meant that the error flag associated with the Request object was not reset between requests. This meant that once a non-blocking I/O error occurred, all future requests handled by that request object would fail. Users were able to trigger non-blocking I/O errors, e.g. by dropping a connection, thereby creating the possibility of triggering a DoS. Applications that do not use non-blocking I/O are not exposed to this vulnerability. This issue affects Apache Tomcat 10.0.3 to 10.0.4; 9.0.44; 8.5.64.
Weakness: CWE-755
Which versions are affected by CVE-2021-30639?
7 open source packages ship an affected version, including org.apache.tomcat:tomcat and tomcat. It affects 3 products.
| Package | Affected | Fixed in |
|---|---|---|
org.apache.tomcat:tomcat Maven | All versions | 8.5.65 |
org.apache.tomcat:tomcat Maven | All versions | 8.5.65 |
org.apache.tomcat:tomcat Maven | From 10.0.3 | 10.0.5 |
org.apache.tomcat:tomcat Maven | From 10.0.3 | 10.0.5 |
org.apache.tomcat:tomcat Maven | From 9.0.0 | 9.0.45 |
org.apache.tomcat:tomcat Maven | From 9.0.0 | 9.0.45 |
1 more packages
tomcat Bitnami | From 8.5.64 | 8.5.65, 9.0.45, 10.0.4, 10.0.5 |
Products include Apache Tomcat, Mcafee Epolicy Orchestrator, Oracle Big Data Spatial and Graph.
How do I fix CVE-2021-30639?
Upgrade org.apache.tomcat:tomcat to a fixed version for your release line: 8.5.65, 10.0.5 or 9.0.45.
Upgrade, then put limits on request size, rate and nesting depth so one client cannot exhaust the service. More about Denial of service.
Is CVE-2021-30639 being exploited?
There is no known exploitation of CVE-2021-30639 in the wild and no public exploit code.
Other vulnerabilities in Apache Tomcat
Sources
Also known as BIT-tomcat-2021-30639, GHSA-44qp-qhfv-c7f6.