CVE-2021-33193
📋 TL;DR
CVE-2021-33193 is an HTTP/2 request smuggling vulnerability in Apache HTTP Server's mod_proxy module. Attackers can send specially crafted HTTP/2 requests that bypass validation, potentially leading to request splitting or cache poisoning attacks. This affects Apache HTTP Server versions 2.4.17 through 2.4.48 when mod_proxy is enabled with HTTP/2 support.
💻 Affected Systems
- Apache HTTP Server
📦 What is this software?
Fedora by Fedoraproject
Fedora by Fedoraproject
Tenable.sc by Tenable
⚠️ Risk & Real-World Impact
Worst Case
Attackers could poison proxy caches to serve malicious content to users, perform request splitting to bypass security controls, or conduct web cache deception attacks.
Likely Case
Cache poisoning leading to users receiving malicious content or request smuggling that bypasses security filters.
If Mitigated
Limited impact with proper network segmentation, WAF protection, and disabled HTTP/2 on proxy servers.
🎯 Exploit Status
Exploitation requires sending crafted HTTP/2 requests to vulnerable proxy servers. Public proof-of-concept exists in security research publications.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: 2.4.49 and later
Vendor Advisory: https://httpd.apache.org/security/vulnerabilities_24.html
Restart Required: Yes
Instructions:
1. Download Apache HTTP Server 2.4.49 or later from https://httpd.apache.org/download.cgi
2. Stop Apache service
3. Backup configuration files
4. Install new version
5. Restart Apache service
🔧 Temporary Workarounds
Disable HTTP/2 for mod_proxy
allConfigure Apache to use HTTP/1.1 only for proxy connections
# In httpd.conf or proxy configuration:
Protocols http/1.1
Disable mod_proxy if not needed
allRemove or comment out mod_proxy modules if reverse proxy functionality is not required
# In httpd.conf:
# Comment out or remove:
# LoadModule proxy_module modules/mod_proxy.so
# LoadModule proxy_http_module modules/mod_proxy_http.so
🧯 If You Can't Patch
- Implement a Web Application Firewall (WAF) with HTTP/2 request validation rules
- Use network segmentation to isolate proxy servers from untrusted networks
🔍 How to Verify
Check if Vulnerable:
Check Apache version and mod_proxy configuration: httpd -v and verify mod_proxy is loaded with HTTP/2 support
Check Version:
httpd -v
Verify Fix Applied:
Verify Apache version is 2.4.49 or later: httpd -v | grep 'Apache/2\.4\.'
📡 Detection & Monitoring
Log Indicators:
- Unusual HTTP/2 request patterns
- Malformed HTTP headers in proxy logs
- Cache poisoning attempts in access logs
Network Indicators:
- HTTP/2 requests with unusual method sequences
- Requests that trigger proxy validation bypass
SIEM Query:
source="apache_access" AND (http_version="HTTP/2" AND (status=400 OR status=500)) AND uri CONTAINS "proxy"
🔗 References
- https://github.com/apache/httpd/commit/ecebcc035ccd8d0e2984fe41420d9e944f456b3c.patch
- https://lists.apache.org/thread.html/re4162adc051c1a0a79e7a24093f3776373e8733abaff57253fef341d%40%3Ccvs.httpd.apache.org%3E
- https://lists.apache.org/thread.html/ree7519d71415ecdd170ff1889cab552d71758d2ba2904a17ded21a70%40%3Ccvs.httpd.apache.org%3E
- https://lists.debian.org/debian-lts-announce/2023/03/msg00002.html
- https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/DSM6UWQICBJ2TU727RENU3HBKEAFLT6T/
- https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/EUVJVRJRBW5QVX4OY3NOHZDQ3B3YOTSG/
- https://portswigger.net/research/http2
- https://security.gentoo.org/glsa/202208-20
- https://security.netapp.com/advisory/ntap-20210917-0004/
- https://tools.cisco.com/security/center/content/CiscoSecurityAdvisory/cisco-sa-apache-httpd-2.4.49-VWL69sWQ
- https://www.oracle.com/security-alerts/cpuapr2022.html
- https://www.oracle.com/security-alerts/cpujan2022.html
- https://www.tenable.com/security/tns-2021-17
- https://github.com/apache/httpd/commit/ecebcc035ccd8d0e2984fe41420d9e944f456b3c.patch
- https://lists.apache.org/thread.html/re4162adc051c1a0a79e7a24093f3776373e8733abaff57253fef341d%40%3Ccvs.httpd.apache.org%3E
- https://lists.apache.org/thread.html/ree7519d71415ecdd170ff1889cab552d71758d2ba2904a17ded21a70%40%3Ccvs.httpd.apache.org%3E
- https://lists.debian.org/debian-lts-announce/2023/03/msg00002.html
- https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/DSM6UWQICBJ2TU727RENU3HBKEAFLT6T/
- https://lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/EUVJVRJRBW5QVX4OY3NOHZDQ3B3YOTSG/
- https://portswigger.net/research/http2
- https://security.gentoo.org/glsa/202208-20
- https://security.netapp.com/advisory/ntap-20210917-0004/
- https://tools.cisco.com/security/center/content/CiscoSecurityAdvisory/cisco-sa-apache-httpd-2.4.49-VWL69sWQ
- https://www.oracle.com/security-alerts/cpuapr2022.html
- https://www.oracle.com/security-alerts/cpujan2022.html
- https://www.tenable.com/security/tns-2021-17