CVE-2025-58068

9.1 CRITICAL

📋 TL;DR

Eventlet versions before 0.40.3 are vulnerable to HTTP request smuggling due to improper handling of HTTP trailer sections. This allows attackers to bypass security controls, target active users, and poison web caches. Any Python application using vulnerable Eventlet versions with eventlet.wsgi exposed to untrusted clients is affected.

💻 Affected Systems

Products:
  • Eventlet
Versions: All versions before 0.40.3
Operating Systems: All
Default Config Vulnerable: ⚠️ Yes
Notes: Only affects deployments using eventlet.wsgi facing untrusted clients. Backend systems behind eventlet.wsgi proxy requiring trailers will break with the patch.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Attackers bypass front-end security controls, launch targeted attacks against users, poison web caches, and potentially execute unauthorized actions or data exfiltration.

🟠

Likely Case

HTTP request smuggling enabling cache poisoning and security control bypass in vulnerable deployments.

🟢

If Mitigated

Limited impact with proper network segmentation and input validation, though risk remains if vulnerable version is exposed.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: LIKELY
Unauthenticated Exploit: ⚠️ Yes
Complexity: MEDIUM

HTTP request smuggling techniques are well-documented, making exploitation likely despite no public PoC.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 0.40.3

Vendor Advisory: https://github.com/eventlet/eventlet/security/advisories/GHSA-hw6f-rjfj-j7j7

Restart Required: Yes

Instructions:

1. Update Eventlet to version 0.40.3 or later using pip: pip install eventlet>=0.40.3. 2. Restart all services using Eventlet. 3. Test that trailers are not required by backend systems, as the patch drops them.

🔧 Temporary Workarounds

Avoid eventlet.wsgi with untrusted clients

all

Do not expose eventlet.wsgi directly to untrusted clients; use a reverse proxy or alternative WSGI server.

🧯 If You Can't Patch

  • Deploy a reverse proxy (e.g., nginx, Apache) in front of eventlet.wsgi to filter malicious requests.
  • Implement strict input validation and monitoring for anomalous HTTP requests.

🔍 How to Verify

Check if Vulnerable:

Check Eventlet version: python -c "import eventlet; print(eventlet.__version__)". If version < 0.40.3 and using eventlet.wsgi, it's vulnerable.

Check Version:

python -c "import eventlet; print(eventlet.__version__)"

Verify Fix Applied:

Verify version is >= 0.40.3 and test that HTTP trailer handling is disabled or backend systems function without trailers.

📡 Detection & Monitoring

Log Indicators:

  • Unusual HTTP requests with trailer sections
  • Requests bypassing expected security controls
  • Cache poisoning anomalies

Network Indicators:

  • HTTP requests with trailer headers to eventlet.wsgi endpoints
  • Anomalous request smuggling patterns

SIEM Query:

source="webserver_logs" AND (trailer OR "transfer-encoding") AND status_code=200

🔗 References

📤 Share & Export