CVE-2024-32976
📋 TL;DR
Envoyproxy with Brotli filter can enter an endless loop during decompression of Brotli data with extra input, causing denial of service. This affects Envoy deployments using Brotli compression. The vulnerability allows attackers to crash or degrade Envoy proxy performance.
💻 Affected Systems
- envoyproxy
📦 What is this software?
Envoy by Envoyproxy
Envoy by Envoyproxy
Envoy by Envoyproxy
Envoy by Envoyproxy
⚠️ Risk & Real-World Impact
Worst Case
Complete denial of service causing Envoy to become unresponsive, disrupting all traffic through the proxy
Likely Case
Degraded performance or service disruption for applications using Envoy with Brotli compression
If Mitigated
Minimal impact if Brotli filter is disabled or proper input validation is implemented
🎯 Exploit Status
Exploitation requires sending specially crafted Brotli data to Envoy with Brotli filter enabled
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: 1.30.3, 1.29.6, 1.28.8, 1.27.10
Vendor Advisory: https://github.com/envoyproxy/envoy/security/advisories/GHSA-7wp5-c2vq-4f8m
Restart Required: Yes
Instructions:
1. Update Envoy to patched version (1.30.3, 1.29.6, 1.28.8, or 1.27.10). 2. Restart Envoy service. 3. Verify the new version is running.
🔧 Temporary Workarounds
Disable Brotli filter
allTemporarily disable Brotli compression filter in Envoy configuration
Remove or comment out Brotli filter configuration in envoy.yaml
Input validation
allImplement upstream validation of Brotli data before it reaches Envoy
🧯 If You Can't Patch
- Disable Brotli filter in Envoy configuration immediately
- Implement network controls to limit who can send Brotli data to Envoy
🔍 How to Verify
Check if Vulnerable:
Check Envoy version and verify Brotli filter is enabled in configuration
Check Version:
envoy --version
Verify Fix Applied:
Confirm Envoy version is 1.30.3, 1.29.6, 1.28.8, or 1.27.10 or higher
📡 Detection & Monitoring
Log Indicators:
- High CPU usage spikes
- Process hanging or restarting
- Brotli decompression errors
Network Indicators:
- Unusual Brotli traffic patterns
- Service unavailability on Envoy ports
SIEM Query:
source="envoy" AND ("brotli" OR "decompression") AND ("error" OR "high_cpu" OR "restart")