CVE-2024-53677
largePath Traversal in Apache Struts File Upload Leading to RCE (CVE-2024-53677)
Apache Struts contains a flaw in its legacy file upload logic (CWE-434) that allows an attacker to manipulate file upload parameters to traverse paths outside the intended upload directory. It is triggered when an application relies on the old upload mechanism built around FileuploadInterceptor; applications using the new file upload mechanism are not affected. By uploading a malicious file to a location where it can be executed, an attacker can, under some circumstances, achieve remote code execution on the server. All Apache Struts versions from 2.0.0 up to but not including 6.4.0 are affected, though only deployments still using the legacy upload interceptor. There is no public PoC or CISA KEV entry yet, but EPSS is exceptionally high (78.2%, 100th percentile) and news reports indicate threat actors are already attempting to exploit the flaw in the wild.
What to do: Upgrade Apache Struts to version 6.4.0 or later and migrate applications to the new file upload mechanism. If upgrading is not immediately possible, verify whether your application uses the legacy FileuploadInterceptor; if it does not, the application is safe. Review upload parameter handling and monitor the official S2-067 advisory for mitigation details, as active exploitation attempts have been reported.
| Apache Struts | all versions from 2.0.0 before 6.4.0; only applications using the legacy FileuploadInterceptor-based file upload logic are vulnerable (fixed in 6.4.0) |
Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.
File upload logic in Apache Struts is flawed. An attacker can manipulate file upload params to enable paths traversal and under some circumstances this can lead to uploading a malicious file which can be used to perform Remote Code Execution. This issue affects Apache Struts: from 2.0.0 before 6.4.0. Users are recommended to upgrade to version 6.4.0 at least and migrate to the new file upload mechanism https://struts.apache.org/core-developers/file-upload . If you are not using an old file upload logic based on FileuploadInterceptor your application is safe. You can find more details in https://cwiki.apache.org/confluence/display/WW/S2-067
- Vendors
- apache
- Products
- struts
- Weakness
- CWE-434
- Vector
- CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:N/AU:Y/R:A/V:C/RE:L/U:Red