Critical Path Equivalence Vulnerability in Apache Tomcat Leading to Remote Code Execution

tomcat10 Updated 02 Oct 2025

Summary

10/03/2025
N/A
Yes i
Critical
9.8

CVE-2025-24813: Path Equivalence: 'file.Name' (Internal Dot) leading to Remote Code Execution and/or Information disclosure and/or malicious content added to uploaded files via write enabled Default Servlet in Apache Tomcat. Affects tomcat10 across 2 version ranges.

< 10.1.34-0+deb12u2 < 7145107845fe82dafee783bb0bfd6bea028e173b

Fixed in 10.1.34-0+deb12u2. How to fix ↓

Free scan

Check if this vulnerability affects your application

Upload a manifest or SBOM and we'll show whether you're affected, plus every other risky package in the same scan.

Check my app free

No signup required · Results in about 60 seconds

Upload your dependency manifest or SBOM

Drag & drop your file here or

Java Javascript PHP Python Go Rust Ruby Dart C/C++ Elixir CycloneDX SPDX

Upload a supported dependency manifest or SBOM. No installation or source-code access required.

See supported files and SBOM formats
SBOM sbom.json · bom.json · bom.xml · *.spdx.json · *.cdx.json · *.cdx.xml
Java pom.xml · gradle.lockfile · buildscript-gradle.lockfile
Javascript package-lock.json · yarn.lock · pnpm-lock.yaml
PHP composer.lock
Python poetry.lock · requirements.txt · Pipfile.lock
Go go.mod
Rust Cargo.lock
Ruby Gemfile.lock
Dart pubspec.lock
C/C++ conan.lock
Elixir mix.lock
Enter your work email to receive your report link.

Verify your email to view the full report and start 30 days of continuous monitoring. No credit card required.

Sponsored Devnack Your last release was probably never penetration tested Manual testing by engineers who build software, not an auditor's checklist. Trusted by teams at Swift and Google Talk to Devnack

Background

Apache Tomcat is an open-source implementation of the Java Servlet, JavaServer Pages, and Java Expression Language technologies. It is widely used for deploying Java applications and provides a robust environment for running web applications. The vulnerability identified as CVE-2025-24813 affects multiple versions of Tomcat, specifically versions 11.0.0-M1 through 11.0.2, 10.1.0-M1 through 10.1.34, and 9.0.0.M1 through 9.0.98. This vulnerability arises from improper handling of file uploads, which can lead to severe security risks.

Vulnerability Detail

The vulnerability, known as Path Equivalence, occurs due to the internal dot notation in file names, which can be exploited by malicious users. If certain conditions are met, an attacker can view sensitive files or inject malicious content into uploaded files. The conditions include having write access enabled for the default servlet, support for partial PUT requests, and knowledge of the names of sensitive files. Additionally, remote code execution can occur if the application uses Tomcat's file-based session persistence with default storage and includes libraries vulnerable to deserialization attacks.

How To Fix

Minimum fixed version

10.1.34-0+deb12u2

This is the first release that contains the fix.

sudo apt-get install --only-upgrade tomcat10

Tip — Not sure which version your app runs? Vulert can match this fix to it. Scan free →

Workaround

As a temporary measure, users can disable write access for the default servlet and disable support for partial PUT requests until the upgrade can be performed. This can be done by modifying the server configuration files to restrict these features.

Conclusion

The CVE-2025-24813 vulnerability in Apache Tomcat poses significant security risks, including remote code execution and information disclosure. Users are strongly advised to upgrade to the latest patched versions to protect their applications. Temporary workarounds can be implemented until an upgrade is feasible.

See every vulnerability recorded for tomcat10 →

Share this vulnerability

FAQ

CVE-2025-24813 is a vulnerability in Apache Tomcat that allows for remote code execution and information disclosure due to improper handling of file uploads.

The affected versions include Apache Tomcat 11.0.0-M1 through 11.0.2, 10.1.0-M1 through 10.1.34, and 9.0.0.M1 through 9.0.98.

You can use Vulert's playground at Vulert Scanner to check if your application is affected by this vulnerability without needing to sign up.

The risks include unauthorized access to sensitive files, potential remote code execution, and the possibility of injecting malicious content into uploaded files.

If an immediate upgrade is not possible, disable write access for the default servlet and support for partial PUT requests as a temporary workaround.

Related vulnerabilities

Recent vulnerabilities recorded for tomcat10.

How To Fix

Minimum fixed version

10.1.34-0+deb12u2

This is the first release that contains the fix.

sudo apt-get install --only-upgrade tomcat10

Tip — Not sure which version your app runs? Vulert can match this fix to it. Scan free →

Subscribe to Vulert on Telegram
Daily digest of new CVEs, critical and high severity, affected packages and fixes — plus a weekly roundup.
Join the channel →
Help improve this record
Report an issue or send feedback