CVE-2025-24813: Apache Tomcat partial PUT path equivalence (RCE / file disclosure)
Exploited in the wild Critical 9.8 EPSS 99.9% Apache Tomcat
Tomcat's partial PUT used a temporary file named from the user-supplied path with '/' replaced by '.', so when writes are enabled on the default servlet an attacker can view or inject content into sensitive uploaded files, or reach remote code execution via file-based session persistence and a deserialization gadget library. Writes on the default servlet are off by default, so only servers that enabled them are exposed. Fixed in 11.0.3, 10.1.35 and 9.0.99; CISA added it to KEV on 1 April 2025 and notes it can be chained with CVE-2026-34486.
- CVE-2025-24813CVE identifier
- 9.8CVSS 3.1 base score (critical)
- 2025-04-01added to CISA's exploited list (US federal deadline 2025-04-22)
- 99.9%EPSS: chance of exploitation in the next 30 days (higher than 100% of CVEs)
- 2025-03-10published
What do these terms mean? CVE · CVSS score · exploited (KEV) · EPSS · backported fix · all terms
What to do now
- Check whether you run Apache Tomcat and which version (commands below).
- Install the fixed version for your system: see “Patch it” below.
- Restart the Tomcat service.
- If you cannot patch today, apply the temporary mitigation below and patch as soon as possible.
- Because this flaw is being exploited, also check the server for signs of compromise.
Affected and fixed versions
Affected:
- Apache Tomcat 11.0.0-M1 through 11.0.2
- Apache Tomcat 10.1.0-M1 through 10.1.34
- Apache Tomcat 9.0.0.M1 through 9.0.98
- Apache Tomcat 8.5.0 through 8.5.100 (end of life)
Fixed in:
- Apache Tomcat 11.0.3
- Apache Tomcat 10.1.35
- Apache Tomcat 9.0.99
Am I affected?
$CATALINA_HOME/bin/version.sh
dpkg -l 'tomcat*' | grep ^ii # Debian/Ubuntu
rpm -q tomcat tomcat9 # RHEL
grep -n -A1 'readonly' $CATALINA_BASE/conf/web.xml # writes are enabled only if the DefaultServlet readonly init-param is false
Patch it
Use the commands for your system. Distribution packages often keep an older version number with the fix backported, so compare with the fixed package versions in the table below, not only with the upstream version.
Debian
sudo apt update
sudo apt install --only-upgrade tomcat10 # or tomcat9 on Debian 11
sudo systemctl restart tomcat10Ubuntu
sudo apt update
sudo apt install --only-upgrade tomcat10 tomcat9 # Ubuntu Pro (ESM) for most releases
sudo systemctl restart tomcat10RHEL, AlmaLinux, Rocky, Oracle
sudo dnf upgrade tomcat
sudo systemctl restart tomcatFedora
sudo dnf upgrade --refresh tomcatSUSE / openSUSE
sudo zypper refresh
sudo zypper update tomcat10 tomcat11 (or tomcat)Amazon Linux
sudo dnf upgrade --releasever=latest tomcat10 tomcat11 (or tomcat9)Arch Linux
sudo pacman -SyuAlpine
not packaged: upstream tarballFreeBSD
pkg update && pkg upgrade tomcat101 tomcat110 (or tomcat9)Built from source
# install Apache Tomcat 11.0.3+, 10.1.35+ or 9.0.99+ from https://tomcat.apache.org/ and restartGeneral update steps for every system are on the Linux and Unix & BSD pages; after updating, see which services to restart.
Fix status in Linux distributions
| Release | Package | Status | Fixed version / advisory |
|---|---|---|---|
| Debian 12 | tomcat10 | fixed | 10.1.34-0+deb12u2 |
| Debian 13 | tomcat10 | fixed | 10.1.35-1 |
| Debian testing | tomcat10 | fixed | 10.1.35-1 |
| Debian 12 | tomcat9 | fixed | 9.0.70-2 |
| Debian 13 | tomcat9 | fixed | 9.0.70-2 |
| Debian testing | tomcat9 | fixed | 9.0.70-2 |
| Ubuntu 18.04 (ESM) | tomcat7 | not affected | |
| Ubuntu 18.04 (ESM) | tomcat8 | not affected | |
| Ubuntu 26.10 | tomcat9 | fixed | 9.0.70-2ubuntu2 |
| Ubuntu 26.04 | tomcat9 | fixed | 9.0.70-2ubuntu2 |
| Ubuntu 24.04 | tomcat9 | fixed | 9.0.70-2ubuntu0.1+esm1 |
| Ubuntu 18.04 (ESM) | tomcat9 | fixed | 9.0.16-3ubuntu0.18.04.2+esm6 |
| Ubuntu 20.04 (ESM) | tomcat9 | fixed | 9.0.31-1ubuntu0.9+esm1 |
| Ubuntu 22.04 | tomcat9 | fixed | 9.0.58-1ubuntu0.2+esm2 |
| Ubuntu 25.10 | tomcat9 | fixed | 9.0.70-2ubuntu2 |
| Ubuntu 26.10 | tomcat10 | not affected | |
| Ubuntu 26.04 | tomcat10 | not affected | |
| Ubuntu 24.04 | tomcat10 | fixed | 10.1.16-1ubuntu0.1~esm1 |
| Ubuntu 25.10 | tomcat10 | not affected | |
| Ubuntu 26.10 | tomcat11 | not affected | |
| Ubuntu 26.04 | tomcat11 | not affected | |
| Ubuntu 25.10 | tomcat11 | not affected | |
| Red Hat Enterprise Linux 9 | tomcat-1:9.0.87-2.el9_5.1 | fixed | RHSA-2025:3645 |
| Red Hat Enterprise Linux 8 | tomcat-1:9.0.87-1.el8_10.3 | fixed | RHSA-2025:3683 |
| Red Hat Enterprise Linux 6 | tomcat6 | out of support scope | |
| Red Hat Enterprise Linux 10 | tomcat9-1:9.0.87-5.el10_0 | fixed | RHSA-2025:7494 |
| Red Hat Enterprise Linux 10 | tomcat-1:10.1.36-1.el10_0 | fixed | RHSA-2025:7497 |
| Debian 12 (bookworm) | tomcat10 | fixed | 10.1.34-0+deb12u2 (DSA-5893-1) |
| Debian 11 (bullseye) | tomcat9 | fixed | 9.0.43-2~deb11u12 (DLA-4108-1) |
| Ubuntu 24.04 LTS | tomcat10 | fixed | 10.1.16-1ubuntu0.1~esm1 (USN-7525-1) |
| Ubuntu 24.04 LTS | tomcat9 | fixed | 9.0.70-2ubuntu0.1+esm1 (USN-7525-2) |
| Ubuntu 22.04 LTS | tomcat9 | fixed | 9.0.58-1ubuntu0.2+esm2 (USN-7525-1) |
| Ubuntu 20.04 LTS | tomcat9 | fixed | 9.0.31-1ubuntu0.9+esm1 (USN-7525-1) |
| RHEL 10 | tomcat | fixed | 10.1.36-1.el10_0 (RHSA-2025:7497) |
| RHEL 10 | tomcat9 | fixed | 9.0.87-5.el10_0 (RHSA-2025:7494) |
| RHEL 9 | tomcat | fixed | 9.0.87-2.el9_5.1 (RHSA-2025:3645) |
| RHEL 8 | tomcat | fixed | 9.0.87-1.el8_10.3 (RHSA-2025:3683) |
From the Debian security tracker, Ubuntu CVE tracker and Red Hat Security Data API, refreshed every few hours.
If you cannot patch yet
- Keep the default servlet read-only: in conf/web.xml the DefaultServlet init-param readonly must be true (the default).
- Debian 12's tomcat9 source package (9.0.70-2) no longer ships the server, so only tomcat10 needs the fix there.
CISA required action: Apply mitigations per vendor instructions, follow applicable BOD 22-01 guidance for cloud services, or discontinue use of the product if mitigations are unavailable.
This vulnerability affects a common open-source component, third-party library, or a protocol used by different products. Please check with specific vendors for information on patching status. For more information, please see: https://lists.apache.org/thread/j5fkjv2k477os90nczf2v9l61fb0kkgq ; https://nvd.nist.gov/vuln/detail/CVE-2025-24813
Related vulnerabilities
Sources
- CVE record CVE-2025-24813
- NVD CVE-2025-24813
- CISA KEV entry CVE-2025-24813
- Debian security tracker CVE-2025-24813
- Ubuntu CVE page CVE-2025-24813
- Red Hat CVE page CVE-2025-24813
- Apache Tomcat announcement for CVE-2025-24813
- Apache Tomcat 9 security fixes
- CISA Known Exploited Vulnerabilities catalog
Page generated automatically from official sources on 2026-11-03 18:05 UTC and reviewed by an editor. Always confirm with your vendor's advisory.