CVE-2024-38536
📋 TL;DR
A memory allocation failure in Suricata's HTTP inspection module leads to a NULL pointer dereference and crash when the http.memcap limit is reached. This vulnerability affects all Suricata deployments using HTTP inspection. The crash causes denial of service for the intrusion detection/prevention system.
💻 Affected Systems
- Suricata
📦 What is this software?
⚠️ Risk & Real-World Impact
Worst Case
Complete Suricata crash leading to loss of network security monitoring and intrusion prevention capabilities, potentially allowing undetected attacks.
Likely Case
Suricata crashes under heavy HTTP traffic when memory cap is reached, requiring manual restart and causing temporary security monitoring gap.
If Mitigated
With proper monitoring and restart automation, impact is limited to brief service interruption during restart.
🎯 Exploit Status
Exploitation requires sending sufficient HTTP traffic to reach memory cap, which is straightforward but requires traffic volume.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: 7.0.6
Vendor Advisory: https://github.com/OISF/suricata/security/advisories/GHSA-j32j-4w6g-94hh
Restart Required: Yes
Instructions:
1. Download Suricata 7.0.6 from official sources. 2. Stop Suricata service. 3. Install/upgrade to 7.0.6. 4. Restart Suricata service. 5. Verify version and functionality.
🔧 Temporary Workarounds
Increase http.memcap
allIncrease the memory cap to reduce likelihood of reaching limit
Edit suricata.yaml: set http.memcap to higher value (e.g., 67108864)
Disable HTTP inspection
allTemporarily disable HTTP protocol inspection if not critical
Edit suricata.yaml: set app-layer.protocols.http.enabled to no
🧯 If You Can't Patch
- Implement aggressive monitoring for Suricata crashes with automated restart
- Deploy redundant Suricata instances with load balancing to maintain coverage during crashes
🔍 How to Verify
Check if Vulnerable:
Check Suricata version: suricata --build-info | grep version
Check Version:
suricata --build-info | grep version
Verify Fix Applied:
Verify version is 7.0.6 or later and monitor for crashes under HTTP traffic
📡 Detection & Monitoring
Log Indicators:
- Suricata crash logs
- Segmentation fault errors
- Process termination messages
Network Indicators:
- Sudden drop in Suricata alert volume
- Missing HTTP inspection alerts
SIEM Query:
source="suricata" AND ("segmentation fault" OR "crash" OR "terminated")
🔗 References
- https://github.com/OISF/suricata/security/advisories/GHSA-j32j-4w6g-94hh
- https://redmine.openinfosecfoundation.org/issues/7029
- https://redmine.openinfosecfoundation.org/issues/7033
- https://github.com/OISF/suricata/security/advisories/GHSA-j32j-4w6g-94hh
- https://redmine.openinfosecfoundation.org/issues/7029
- https://redmine.openinfosecfoundation.org/issues/7033