HTTP/2 安全
HTTP/2 安全 是什么?
HTTP/2 安全HTTP/2(RFC 9113)在 TLS 1.2+ 上的安全模型,以及 HPACK、多路复用、CONTINUATION 帧和 2023 年 Rapid Reset 攻击带来的运营隐患。
HTTP/2 由 RFC 9113 规范(取代 RFC 7540),通过单条 TLS 连接对多请求进行多路复用,使用 HPACK(RFC 7541)压缩头部并采用二进制帧。实际上浏览器的 HTTP/2 流量均运行在 TLS 1.2 或 1.3 之上,并遵守 RFC 9113 第 9.2 节强制的密码学限制。实现需要缓解著名滥用:HPACK Bomb(内存放大)、CONTINUATION 洪水(CVE-2024-27316)、H2 转 H1 边界的 HTTP 请求走私,以及 2023 年 10 月披露的 Rapid Reset(CVE-2023-44487)——攻击者不断打开并立即取消流,峰值约 3.98 亿次/秒。服务器加固包括流和帧配额、RST_STREAM 速率限制以及及时升级实现。
● 示例
- 01
CVE-2023-44487(Rapid Reset):攻击者打开并发送 RST_STREAM 取消 HTTP/2 流,峰值约 3.98 亿次请求/秒的 DDoS。
- 02
CVE-2024-27316:nginx 等接受不受限的 HEADERS+CONTINUATION 序列,导致内存耗尽。
● 常见问题
HTTP/2 安全 是什么?
HTTP/2(RFC 9113)在 TLS 1.2+ 上的安全模型,以及 HPACK、多路复用、CONTINUATION 帧和 2023 年 Rapid Reset 攻击带来的运营隐患。 它属于网络安全的 网络安全 分类。
HTTP/2 安全 是什么意思?
HTTP/2(RFC 9113)在 TLS 1.2+ 上的安全模型,以及 HPACK、多路复用、CONTINUATION 帧和 2023 年 Rapid Reset 攻击带来的运营隐患。
HTTP/2 安全 是如何工作的?
HTTP/2 由 RFC 9113 规范(取代 RFC 7540),通过单条 TLS 连接对多请求进行多路复用,使用 HPACK(RFC 7541)压缩头部并采用二进制帧。实际上浏览器的 HTTP/2 流量均运行在 TLS 1.2 或 1.3 之上,并遵守 RFC 9113 第 9.2 节强制的密码学限制。实现需要缓解著名滥用:HPACK Bomb(内存放大)、CONTINUATION 洪水(CVE-2024-27316)、H2 转 H1 边界的 HTTP 请求走私,以及 2023 年 10 月披露的 Rapid Reset(CVE-2023-44487)——攻击者不断打开并立即取消流,峰值约 3.98 亿次/秒。服务器加固包括流和帧配额、RST_STREAM 速率限制以及及时升级实现。
如何防御 HTTP/2 安全?
针对 HTTP/2 安全 的防御通常结合技术控制与运营实践,详见上方完整定义。
HTTP/2 安全 还有哪些其他名称?
常见的别称包括: RFC 9113, h2。
● 相关术语
- network-security№ 499
HTTP/3 / QUIC
HTTP/3(RFC 9114)是 HTTP 在 QUIC(RFC 9000)之上的映射,QUIC 是基于 UDP 的加密传输协议,内置 TLS 1.3 并按流多路复用,无队头阻塞。
- vulnerabilities№ 494
HTTP 请求走私
利用前端代理与后端服务器对 HTTP 请求边界判断不一致的攻击,使攻击者可以在合法请求中夹带一个隐藏的额外请求。
- network-security№ 1227
Web 应用防火墙(WAF)
一种反向代理式的过滤器,通过检查 HTTP/HTTPS 流量,在请求到达应用之前阻断 SQL 注入、XSS、机器人滥用等 Web 攻击。