CVE-2023-24998: Commons fileupload Denial of Service Vulnerability

HIGH
Advisory Identifier: GHSA-hfrx-6qgj-fp6c
CVSS 7.5
CWE-770
Published
Advisory Summary

CVE-2023-24998 is a HIGH (CVSS 7.5) denial of service vulnerability (CWE-770: Allocation of Resources Without Limits or Throttling) affecting Commons fileupload libraries in the Maven ecosystem. The issue involves apache commons fileupload denial of service vulnerability. Remediation is available by upgrading affected packages to version 1.5, 10.1.5, 11.0.0-M5, 8.5.88, 9.0.71.

CVE-2023-24998 at a Glance

CVE Identifier CVE-2023-24998
GHSA Identifier GHSA-hfrx-6qgj-fp6c
Severity HIGH
CVSS v3.1 Base Score 7.5
CWE Classification CWE-770: Allocation of Resources Without Limits or Throttling
Affected Product Commons fileupload
Package Ecosystem Maven
Published Date
Last Updated

Security Impact

CVSS: 7.5

The security impact metrics below are parsed directly from the CVSS v3.1 vector string (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H).

Attack Vector Network (AV:N)
Attack Complexity Low (AC:L)
Privileges Required None (PR:N)
User Interaction None (UI:N)
Scope Unchanged (S:U)
Confidentiality None (C:N)
Integrity None (I:N)
Availability High (A:H)

How to Fix CVE-2023-24998

To remediate this vulnerability, upgrade all affected Commons fileupload dependencies to a patched release. Both direct and transitive dependencies should be checked, as frameworks or security libraries may pull in vulnerable versions transitively.

commons-fileupload:commons-fileupload fixed: 1.5
<dependency>
    <groupId>commons-fileupload</groupId>
    <artifactId>commons-fileupload</artifactId>
    <version>1.5</version>
</dependency>
org.apache.tomcat:tomcat-coyote fixed: 10.1.5
<dependency>
    <groupId>org.apache.tomcat</groupId>
    <artifactId>tomcat-coyote</artifactId>
    <version>10.1.5</version>
</dependency>
org.apache.tomcat:tomcat-coyote fixed: 11.0.0-M5
<dependency>
    <groupId>org.apache.tomcat</groupId>
    <artifactId>tomcat-coyote</artifactId>
    <version>11.0.0-M5</version>
</dependency>
org.apache.tomcat:tomcat-coyote fixed: 8.5.88
<dependency>
    <groupId>org.apache.tomcat</groupId>
    <artifactId>tomcat-coyote</artifactId>
    <version>8.5.88</version>
</dependency>
org.apache.tomcat:tomcat-coyote fixed: 9.0.71
<dependency>
    <groupId>org.apache.tomcat</groupId>
    <artifactId>tomcat-coyote</artifactId>
    <version>9.0.71</version>
</dependency>
org.apache.tomcat.embed:tomcat-embed-core fixed: 10.1.5
<dependency>
    <groupId>org.apache.tomcat.embed</groupId>
    <artifactId>tomcat-embed-core</artifactId>
    <version>10.1.5</version>
</dependency>
org.apache.tomcat.embed:tomcat-embed-core fixed: 11.0.0-M5
<dependency>
    <groupId>org.apache.tomcat.embed</groupId>
    <artifactId>tomcat-embed-core</artifactId>
    <version>11.0.0-M5</version>
</dependency>
org.apache.tomcat.embed:tomcat-embed-core fixed: 8.5.88
<dependency>
    <groupId>org.apache.tomcat.embed</groupId>
    <artifactId>tomcat-embed-core</artifactId>
    <version>8.5.88</version>
</dependency>
org.apache.tomcat.embed:tomcat-embed-core fixed: 9.0.71
<dependency>
    <groupId>org.apache.tomcat.embed</groupId>
    <artifactId>tomcat-embed-core</artifactId>
    <version>9.0.71</version>
</dependency>
org.apache.tomcat:tomcat-catalina fixed: 10.1.5
<dependency>
    <groupId>org.apache.tomcat</groupId>
    <artifactId>tomcat-catalina</artifactId>
    <version>10.1.5</version>
</dependency>
org.apache.tomcat:tomcat-catalina fixed: 11.0.0-M5
<dependency>
    <groupId>org.apache.tomcat</groupId>
    <artifactId>tomcat-catalina</artifactId>
    <version>11.0.0-M5</version>
</dependency>
org.apache.tomcat:tomcat-catalina fixed: 8.5.88
<dependency>
    <groupId>org.apache.tomcat</groupId>
    <artifactId>tomcat-catalina</artifactId>
    <version>8.5.88</version>
</dependency>
org.apache.tomcat:tomcat-catalina fixed: 9.0.71
<dependency>
    <groupId>org.apache.tomcat</groupId>
    <artifactId>tomcat-catalina</artifactId>
    <version>9.0.71</version>
</dependency>
Verify Direct and Transitive Dependencies

Run the following command in your project directory to verify that all resolved dependencies use the patched release:

mvn dependency:tree -Dincludes=commons-fileupload

How to Check if You Are Affected

To determine whether your Java application is affected by CVE-2023-24998, inspect your build dependencies using the Maven Dependency Plugin:

mvn dependency:tree -Dincludes=commons-fileupload

Analyze the terminal output to locate any version of Commons fileupload in your dependency tree. If any resolved version matches the vulnerable ranges listed in the table below (for example, versions earlier than 1.5), your application is affected.

Note: The mvn dependency:tree -Dincludes=commons-fileupload command inspects the resolved dependency graph declared in your project's POM files; it does not perform automated security scanning or inspect runtime dynamic classpaths. Always verify runtime container classpaths and shaded JARs.

Technical Details

Vulnerability Mechanism & Technical Analysis

This vulnerability is classified under CWE-770: Allocation of Resources Without Limits or Throttling, where the product allocates a reusable resource or group of resources on behalf of an actor without imposing any intended restrictions on the size or number of resources that can be allocated. In Commons fileupload, software state validation or input boundaries are circumvented during processing. Review the official source advisory statement below for specific affected components, classes, and reproduction details.

Source Advisory Statement

Apache Commons FileUpload before 1.5 does not limit the number of request parts to be processed resulting in the possibility of an attacker triggering a DoS with a malicious upload or series of uploads. Note that, like all of the file upload limits, the new configuration option (FileUploadBase#setFileCountMax) is not enabled by default and must be explicitly configured.

CVE-2023-24998 Affected Commons fileupload Versions

13 component(s)
Fixed Versions:
1.510.1.511.0.0-M58.5.889.0.71
Product / Package Ecosystem Affected Versions Fixed Version
commons-fileupload:commons-fileupload
Maven
< 1.5
1.5
org.apache.tomcat:tomcat-coyote
Maven
≥ 10.1.0-M1
< 10.1.5
10.1.5
org.apache.tomcat:tomcat-coyote
Maven
≥ 11.0.0-M2
< 11.0.0-M5
11.0.0-M5
org.apache.tomcat:tomcat-coyote
Maven
≥ 8.5.85
< 8.5.88
8.5.88
org.apache.tomcat:tomcat-coyote
Maven
≥ 9.0.0-M1
< 9.0.71
9.0.71
org.apache.tomcat.embed:tomcat-embed-core
Maven
≥ 10.1.0-M1
< 10.1.5
10.1.5
org.apache.tomcat.embed:tomcat-embed-core
Maven
≥ 11.0.0-M2
< 11.0.0-M5
11.0.0-M5
org.apache.tomcat.embed:tomcat-embed-core
Maven
≥ 8.5.85
< 8.5.88
8.5.88
org.apache.tomcat.embed:tomcat-embed-core
Maven
≥ 9.0.0-M1
< 9.0.71
9.0.71
org.apache.tomcat:tomcat-catalina
Maven
≥ 10.1.0-M1
< 10.1.5
10.1.5
org.apache.tomcat:tomcat-catalina
Maven
≥ 11.0.0-M2
< 11.0.0-M5
11.0.0-M5
org.apache.tomcat:tomcat-catalina
Maven
≥ 8.5.85
< 8.5.88
8.5.88
org.apache.tomcat:tomcat-catalina
Maven
≥ 9.0.0-M1
< 9.0.71
9.0.71

References

NVD — CVE-2023-24998 NVD
https://nvd.nist.gov/vuln/detail/CVE-2023-24998
Security Fix Commit FIX COMMIT
https://github.com/apache/commons-fileupload/commit/e20c04990f7420ca917e96a84cec58b13a1b3d17
Security Fix Commit FIX COMMIT
https://github.com/apache/tomcat/commit/8a2285f13affa961cc65595aad999db5efae45ce
Security Fix Commit FIX COMMIT
https://github.com/apache/tomcat/commit/9ca96c8c1eba86c0aaa2e6be581ba2a7d4d4ae6e
Security Fix Commit FIX COMMIT
https://github.com/apache/tomcat/commit/cf77cc545de0488fb89e24294151504a7432df74
Security Fix Commit FIX COMMIT
https://github.com/apache/tomcat/commit/d53d8e7f77042cc32a3b98f589496a1ef5088e38
Commons fileupload Security Information SECURITY
https://www.debian.org/security/2023/dsa-5522
Commons fileupload Security Information SECURITY
https://tomcat.apache.org/security-9.html
Commons fileupload Security Information SECURITY
https://tomcat.apache.org/security-8.html
Commons fileupload Security Information SECURITY
https://tomcat.apache.org/security-11.html
Commons fileupload Security Information SECURITY
https://tomcat.apache.org/security-10.html
Commons fileupload Security Information SECURITY
https://security.netapp.com/advisory/ntap-20241108-0002
Commons fileupload Security Information SECURITY
https://security.netapp.com/advisory/ntap-20230302-0013
Commons fileupload Security Information SECURITY
https://security.gentoo.org/glsa/202305-37
lists.debian.org/debian-lts-announce... WEB
https://lists.debian.org/debian-lts-announce/2025/07/msg00008.html
lists.debian.org/debian-lts-announce... WEB
https://lists.debian.org/debian-lts-announce/2023/10/msg00020.html
lists.apache.org/thread/4xl4l09mhwg4... WEB
https://lists.apache.org/thread/4xl4l09mhwg4vgsk7dxqogcjrobrrdoy
Commons fileupload Source Repository REPOSITORY
https://github.com/search?q=repo%3Aapache%2Ftomcat+util.http+path%3A%2F%5Eres%5C%2Fbnd%5C%2F%2F&type=code
Commons fileupload Source Repository REPOSITORY
https://github.com/apache/commons-fileupload
Commons fileupload Security Information SECURITY
https://commons.apache.org/proper/commons-fileupload/security-reports.html
Commons fileupload Security Information SECURITY
http://www.openwall.com/lists/oss-security/2023/05/22/1

Frequently Asked Questions

What is CVE-2023-24998?
CVE-2023-24998 is a security vulnerability in Commons fileupload involving Apache Commons FileUpload denial of service vulnerability under CWE-770: Allocation of Resources Without Limits or Throttling.
Which Commons fileupload versions are affected?
Affected versions include releases prior to 1.5, 10.1.5, 11.0.0-M5, 8.5.88, 9.0.71 across affected packages: commons-fileupload:commons-fileupload, org.apache.tomcat:tomcat-coyote, org.apache.tomcat.embed:tomcat-embed-core, org.apache.tomcat:tomcat-catalina.
What version fixes CVE-2023-24998?
Upgrading to 1.5, 10.1.5, 11.0.0-M5, 8.5.88, 9.0.71 (or the latest patched release for your respective branch) resolves the vulnerability.
Is commons-fileupload affected?
Yes, commons-fileupload:commons-fileupload is affected in releases prior to 1.5. Upgrade your dependency to 1.5 or later.
Is tomcat-coyote affected?
Yes, org.apache.tomcat:tomcat-coyote is affected in releases prior to 10.1.5, 11.0.0-M5, 8.5.88, 9.0.71. Upgrade your dependency to 10.1.5, 11.0.0-M5, 8.5.88, 9.0.71 or later.
What is the CVSS score of CVE-2023-24998?
CVE-2023-24998 has a CVSS v3.1 base score of 7.5 (HIGH) with vector string CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H.
What CWE is associated with CVE-2023-24998?
CVE-2023-24998 is classified under CWE-770: Allocation of Resources Without Limits or Throttling (The product allocates a reusable resource or group of resources on behalf of an actor without imposing any intended restrictions on the size or number of resources that can be allocated.).
How can I check Maven dependencies for CVE-2023-24998?
Run the dependency tree command: 'mvn dependency:tree -Dincludes=commons-fileupload'. This command lists direct and transitive dependencies in your build configuration so you can verify if a vulnerable version is resolved.
Machine-readable OSV JSON OSV v1.5 Schema
Normalized schema output
{
  "schema_version" : "1.4.0",
  "id" : "GHSA-hfrx-6qgj-fp6c",
  "modified" : "2026-06-18T20:19:31Z",
  "published" : "2023-02-20T18:30:17Z",
  "aliases" : [ "CVE-2023-24998" ],
  "summary" : "Apache Commons FileUpload denial of service vulnerability",
  "details" : "Apache Commons FileUpload before 1.5 does not limit the number of request parts to be processed resulting in the possibility of an attacker triggering a DoS with a malicious upload or series of uploads. Note that, like all of the file upload limits, the new configuration option (FileUploadBase#setFileCountMax) is not enabled by default and must be explicitly configured.",
  "severity" : [ {
    "type" : "CVSS_V3",
    "score" : "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
  } ],
  "affected" : [ {
    "package" : {
      "ecosystem" : "Maven",
      "name" : "commons-fileupload:commons-fileupload"
    },
    "ranges" : [ {
      "type" : "ECOSYSTEM",
      "events" : [ {
        "introduced" : "0"
      }, {
        "fixed" : "1.5"
      } ]
    } ]
  }, {
    "package" : {
      "ecosystem" : "Maven",
      "name" : "org.apache.tomcat:tomcat-coyote"
    },
    "ranges" : [ {
      "type" : "ECOSYSTEM",
      "events" : [ {
        "introduced" : "10.1.0-M1"
      }, {
        "fixed" : "10.1.5"
      } ]
    } ]
  }, {
    "package" : {
      "ecosystem" : "Maven",
      "name" : "org.apache.tomcat:tomcat-coyote"
    },
    "ranges" : [ {
      "type" : "ECOSYSTEM",
      "events" : [ {
        "introduced" : "11.0.0-M2"
      }, {
        "fixed" : "11.0.0-M5"
      } ]
    } ]
  }, {
    "package" : {
      "ecosystem" : "Maven",
      "name" : "org.apache.tomcat:tomcat-coyote"
    },
    "ranges" : [ {
      "type" : "ECOSYSTEM",
      "events" : [ {
        "introduced" : "8.5.85"
      }, {
        "fixed" : "8.5.88"
      } ]
    } ]
  }, {
    "package" : {
      "ecosystem" : "Maven",
      "name" : "org.apache.tomcat:tomcat-coyote"
    },
    "ranges" : [ {
      "type" : "ECOSYSTEM",
      "events" : [ {
        "introduced" : "9.0.0-M1"
      }, {
        "fixed" : "9.0.71"
      } ]
    } ]
  }, {
    "package" : {
      "ecosystem" : "Maven",
      "name" : "org.apache.tomcat.embed:tomcat-embed-core"
    },
    "ranges" : [ {
      "type" : "ECOSYSTEM",
      "events" : [ {
        "introduced" : "10.1.0-M1"
      }, {
        "fixed" : "10.1.5"
      } ]
    } ]
  }, {
    "package" : {
      "ecosystem" : "Maven",
      "name" : "org.apache.tomcat.embed:tomcat-embed-core"
    },
    "ranges" : [ {
      "type" : "ECOSYSTEM",
      "events" : [ {
        "introduced" : "11.0.0-M2"
      }, {
        "fixed" : "11.0.0-M5"
      } ]
    } ]
  }, {
    "package" : {
      "ecosystem" : "Maven",
      "name" : "org.apache.tomcat.embed:tomcat-embed-core"
    },
    "ranges" : [ {
      "type" : "ECOSYSTEM",
      "events" : [ {
        "introduced" : "8.5.85"
      }, {
        "fixed" : "8.5.88"
      } ]
    } ]
  }, {
    "package" : {
      "ecosystem" : "Maven",
      "name" : "org.apache.tomcat.embed:tomcat-embed-core"
    },
    "ranges" : [ {
      "type" : "ECOSYSTEM",
      "events" : [ {
        "introduced" : "9.0.0-M1"
      }, {
        "fixed" : "9.0.71"
      } ]
    } ]
  }, {
    "package" : {
      "ecosystem" : "Maven",
      "name" : "org.apache.tomcat:tomcat-catalina"
    },
    "ranges" : [ {
      "type" : "ECOSYSTEM",
      "events" : [ {
        "introduced" : "10.1.0-M1"
      }, {
        "fixed" : "10.1.5"
      } ]
    } ]
  }, {
    "package" : {
      "ecosystem" : "Maven",
      "name" : "org.apache.tomcat:tomcat-catalina"
    },
    "ranges" : [ {
      "type" : "ECOSYSTEM",
      "events" : [ {
        "introduced" : "11.0.0-M2"
      }, {
        "fixed" : "11.0.0-M5"
      } ]
    } ]
  }, {
    "package" : {
      "ecosystem" : "Maven",
      "name" : "org.apache.tomcat:tomcat-catalina"
    },
    "ranges" : [ {
      "type" : "ECOSYSTEM",
      "events" : [ {
        "introduced" : "8.5.85"
      }, {
        "fixed" : "8.5.88"
      } ]
    } ]
  }, {
    "package" : {
      "ecosystem" : "Maven",
      "name" : "org.apache.tomcat:tomcat-catalina"
    },
    "ranges" : [ {
      "type" : "ECOSYSTEM",
      "events" : [ {
        "introduced" : "9.0.0-M1"
      }, {
        "fixed" : "9.0.71"
      } ]
    } ]
  } ],
  "references" : [ {
    "type" : "ADVISORY",
    "url" : "https://nvd.nist.gov/vuln/detail/CVE-2023-24998"
  }, {
    "type" : "WEB",
    "url" : "https://github.com/apache/commons-fileupload/commit/e20c04990f7420ca917e96a84cec58b13a1b3d17"
  }, {
    "type" : "WEB",
    "url" : "https://github.com/apache/tomcat/commit/8a2285f13affa961cc65595aad999db5efae45ce"
  }, {
    "type" : "WEB",
    "url" : "https://github.com/apache/tomcat/commit/9ca96c8c1eba86c0aaa2e6be581ba2a7d4d4ae6e"
  }, {
    "type" : "WEB",
    "url" : "https://github.com/apache/tomcat/commit/cf77cc545de0488fb89e24294151504a7432df74"
  }, {
    "type" : "WEB",
    "url" : "https://github.com/apache/tomcat/commit/d53d8e7f77042cc32a3b98f589496a1ef5088e38"
  }, {
    "type" : "WEB",
    "url" : "https://www.debian.org/security/2023/dsa-5522"
  }, {
    "type" : "WEB",
    "url" : "https://tomcat.apache.org/security-9.html"
  }, {
    "type" : "WEB",
    "url" : "https://tomcat.apache.org/security-8.html"
  }, {
    "type" : "WEB",
    "url" : "https://tomcat.apache.org/security-11.html"
  }, {
    "type" : "WEB",
    "url" : "https://tomcat.apache.org/security-10.html"
  }, {
    "type" : "WEB",
    "url" : "https://security.netapp.com/advisory/ntap-20241108-0002"
  }, {
    "type" : "WEB",
    "url" : "https://security.netapp.com/advisory/ntap-20230302-0013"
  }, {
    "type" : "WEB",
    "url" : "https://security.gentoo.org/glsa/202305-37"
  }, {
    "type" : "WEB",
    "url" : "https://lists.debian.org/debian-lts-announce/2025/07/msg00008.html"
  }, {
    "type" : "WEB",
    "url" : "https://lists.debian.org/debian-lts-announce/2023/10/msg00020.html"
  }, {
    "type" : "WEB",
    "url" : "https://lists.apache.org/thread/4xl4l09mhwg4vgsk7dxqogcjrobrrdoy"
  }, {
    "type" : "WEB",
    "url" : "https://github.com/search?q=repo%3Aapache%2Ftomcat+util.http+path%3A%2F%5Eres%5C%2Fbnd%5C%2F%2F&type=code"
  }, {
    "type" : "PACKAGE",
    "url" : "https://github.com/apache/commons-fileupload"
  }, {
    "type" : "WEB",
    "url" : "https://commons.apache.org/proper/commons-fileupload/security-reports.html"
  }, {
    "type" : "WEB",
    "url" : "http://www.openwall.com/lists/oss-security/2023/05/22/1"
  } ],
  "database_specific" : {
    "cwe_ids" : [ "CWE-770" ],
    "severity" : "HIGH",
    "github_reviewed" : true,
    "github_reviewed_at" : "2023-02-22T00:12:07Z",
    "nvd_published_at" : "2023-02-20T16:15:00Z"
  }
}