CVE-2025-66675

8.2 HIGH

📋 TL;DR

This CVE describes a Denial of Service vulnerability in Apache Struts where specially crafted multipart requests can cause file leaks leading to disk exhaustion. Attackers can exploit this to fill up disk space, causing service disruption. All Apache Struts users running affected versions are vulnerable.

💻 Affected Systems

Products:
  • Apache Struts
Versions: 2.0.0 through 6.7.4, 7.0.0 through 7.0.3
Operating Systems: All operating systems running Apache Struts
Default Config Vulnerable: ⚠️ Yes
Notes: All configurations using multipart request processing are affected. The vulnerability is in the core framework.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete service outage due to disk exhaustion, requiring manual cleanup and service restoration, potentially leading to extended downtime.

🟠

Likely Case

Service degradation or temporary unavailability as disk space fills, requiring administrator intervention to clear temporary files and restart services.

🟢

If Mitigated

Minimal impact with proper monitoring and disk space alerts allowing proactive cleanup before service disruption.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: UNKNOWN
Unauthenticated Exploit: ⚠️ Yes
Complexity: LOW

Exploitation requires sending specially crafted multipart requests. No authentication is required to trigger the vulnerability.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 6.8.0 or 7.1.1

Vendor Advisory: https://cwiki.apache.org/confluence/display/WW/S2-068

Restart Required: Yes

Instructions:

1. Download Apache Struts 6.8.0 or 7.1.1 from the official Apache website. 2. Backup your current Struts installation and configuration. 3. Replace the Struts JAR files with the patched versions. 4. Restart your application server. 5. Test your application functionality.

🔧 Temporary Workarounds

Limit multipart request size

all

Configure maximum file upload size to limit potential disk consumption

struts.multipart.maxSize=10485760

Disable multipart processing if unused

all

Remove multipart support if your application doesn't require file uploads

Remove or disable struts.multipart.* configurations

🧯 If You Can't Patch

  • Implement strict input validation and filtering for multipart requests
  • Monitor disk usage and set up alerts for rapid disk space consumption

🔍 How to Verify

Check if Vulnerable:

Check your Struts version against affected ranges. Examine application logs for unusual multipart request patterns or rapid disk space consumption.

Check Version:

Check WEB-INF/lib directory for struts2-core-*.jar version or examine Maven/Gradle dependencies

Verify Fix Applied:

Verify Struts version is 6.8.0+ or 7.1.1+. Test with controlled multipart requests and monitor disk usage.

📡 Detection & Monitoring

Log Indicators:

  • Unusually large multipart requests
  • Rapid disk space consumption
  • File creation errors
  • Out of disk space errors

Network Indicators:

  • Large volume of multipart POST requests
  • Requests with abnormal Content-Type headers

SIEM Query:

source="*struts*" AND ("multipart" OR "disk full" OR "out of space")

🔗 References

📤 Share & Export