CVE-2024-53259

6.5 MEDIUM

📋 TL;DR

An off-path attacker can disrupt QUIC connections by injecting forged ICMP Packet Too Large packets, forcing the connection to use smaller MTU sizes than QUIC's 1200-byte minimum. This affects systems using quic-go versions before 0.48.2. The attack can occur after handshake completion, bypassing TCP fallback mechanisms used by applications like web browsers.

💻 Affected Systems

Products:
  • quic-go
Versions: All versions before 0.48.2
Operating Systems: All platforms running affected quic-go
Default Config Vulnerable: ⚠️ Yes
Notes: Only affects systems using quic-go with IP_PMTUDISC_DO socket option enabled.

⚠️ Manual Verification Required

This CVE does not have specific version information in our database, so automatic vulnerability detection cannot determine if your system is affected.

Why? The CVE database entry doesn't specify which versions are vulnerable (no version ranges provided by the vendor/NVD).

🔒 Custom verification scripts are available for registered users. Sign up free to download automated test scripts.

Recommended Actions:
  1. Review the CVE details at NVD
  2. Check vendor security advisories for your specific version
  3. Test if the vulnerability is exploitable in your environment
  4. Consider updating to the latest version as a precaution

⚠️ Risk & Real-World Impact

🔴

Worst Case

Persistent denial of service for QUIC connections, forcing applications to fall back to TCP with performance degradation or connection failures.

🟠

Likely Case

Intermittent connection disruption and performance degradation for QUIC-enabled services.

🟢

If Mitigated

Minimal impact with proper network filtering and updated software.

🌐 Internet-Facing: MEDIUM - Requires attacker to know client IP/port and send forged ICMP packets, but no authentication needed.
🏢 Internal Only: LOW - Internal attackers would need network access and specific targeting.

🎯 Exploit Status

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

Attacker needs to know client IP and port, and be able to inject ICMP packets. No authentication required.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 0.48.2

Vendor Advisory: https://github.com/quic-go/quic-go/security/advisories/GHSA-px8v-pp82-rcvr

Restart Required: Yes

Instructions:

1. Update quic-go to version 0.48.2 or later using 'go get github.com/quic-go/quic-go@v0.48.2'. 2. Rebuild and redeploy applications using quic-go. 3. Restart affected services.

🔧 Temporary Workarounds

ICMP Filtering

linux

Block or rate-limit incoming ICMP Packet Too Large messages at network perimeter.

iptables -A INPUT -p icmp --icmp-type destination-unreachable -j DROP

🧯 If You Can't Patch

  • Implement network filtering to block or validate ICMP Packet Too Large messages
  • Monitor for unusual connection disruptions and implement rate limiting on QUIC connections

🔍 How to Verify

Check if Vulnerable:

Check quic-go version in go.mod or via 'go list -m github.com/quic-go/quic-go'

Check Version:

go list -m github.com/quic-go/quic-go

Verify Fix Applied:

Confirm version is 0.48.2 or later and test QUIC connection stability under network stress

📡 Detection & Monitoring

Log Indicators:

  • Frequent 'message too large' errors in application logs
  • QUIC connection resets or fallbacks to TCP

Network Indicators:

  • Unusual ICMP Packet Too Large messages from unexpected sources
  • QUIC packet size reductions below 1200 bytes

SIEM Query:

source="application_logs" AND ("message too large" OR "QUIC connection reset")

🔗 References

📤 Share & Export