Check the status of CVEs. Learn More.
php2shell patches (CVE-2026-109618 and CVE-2026-109619) for EOL PHP are out now. With sales replies slower than usual due to high demand, the fastest route to patched packages is to buy ELS for Runtimes online (opens in new tab). | Read the patch FAQ
This CVE has been resolved by the TuxCare team and
a patch has been delivered to ELS for Spring® users.
Spring® Framework is a comprehensive, open-source framework for building Java applications. It provides dependency injection (DI), aspect-oriented programming (AOP), and transaction management, making Java development more modular and efficient.
Spring® Web is a module of the Spring® Framework designed for building web applications and RESTful services in Java. It provides essential web functionalities, including servlet-based request handling, REST API support, and integration with Spring® Web MVC which is a module within Spring® Framework that provides a powerful Model-View-Controller (MVC) architecture for building web applications. Spring® WebFlux is a reactive, non-blocking web framework introduced in Spring® 5. It is designed for handling asynchronous and event-driven web applications using Project Reactor (reactive streams).
Improper Limitation of a Pathname to a Restricted Directory (‘Path Traversal’) takes place when the product uses external input to construct a pathname that is intended to identify a file or directory that is located underneath a restricted parent directory, but the product does not properly neutralize special elements within the pathname that can cause the pathname to resolve to a location that is outside of the restricted directory.
CVE-2024-38819, a high-severity Path Traversal vulnerability, affects applications that use the WebMvc.fn or WebFlux.fn functional web frameworks to serve static resources. Attackers can exploit this vulnerability by crafting malicious HTTP requests that allow them to retrieve any file on the file system that the Spring® application process can access.
This issue affects multiple versions of:
org.springframework:spring-webflux
package,
org.springframework:spring-webmvc
package.
| Vulnerability Dossier | |
| CVE ID | CVE-2024-38819 |
| Severity | High: 7.5 |
| CWE-ID and name | CWE-22: Improper Limitation of a Pathname to a Restricted Directory (‘Path Traversal’) |
| Affected project | Spring® Framework |
| Affected packages | spring-webflux
spring-webmvc |
| Affected versions | All prior 5.3.0, <5.3.0;5.3.40>,<6.0.0;6.0.24>,<6.1.0;6.1.13> |
| NVD Published date | 19th of December 2024 (Spring.io: 17th of October 2024) |
| TuxCare fix date | 19th of March 2025 |
| TuxCare fixed version | 5.3.39.tuxcare.3 |
https://mvnrepository.com/artifact/org.springframework/spring-webflux
https://mvnrepository.com/artifact/org.springframework/spring-webmvc
In applications where:
An attacker can craft malicious HTTP requests to perform path traversal attacks, potentially accessing any file on the server’s file system that the application process has permission to read.
In apps using RouterFunctions and serving files from the filesystem (e.g., with FileSystemResource), attackers can request paths like:
/public/../../../../etc/passwd
…to read sensitive files.
Affects both Spring® WebFlux.fn and Spring® WebMvc.fn applications, making it relevant across different web stacks.
@Configuration
public class StaticResourceConfig {
@Bean
public RouterFunction<ServerResponse> staticRoutes() {
return RouterFunctions.resources(“/files/**”, new FileSystemResource(“/your/server/path”));
}
}
This exposes files from /your/server/path under /files/ URL path.
/your/server/path/index.html
Navigate to:
http://localhost:8080/files/index.html
✅ Should work and return the file.
Try accessing:
http://localhost:8080/files/../../../etc/passwd
or, if encoded:
http://localhost:8080/files/..%2f..%2f..%2f..%2fetc%2fpasswd
If vulnerable, the app will respond with the contents of /etc/passwd (or any readable file outside the allowed directory).
Spring® Framework 5.3.x is no longer supported by the open source community, as its End of Life date is 2023-06-30. It simply means that the version from that date does not receive any updates to address this issue.
Users of the affected components should apply one of the following mitigations:
Do you need a fix for this vulnerability for any other Spring® Framework version, please contact us, we are here to help you!