Swift NIO HTTP2 受 HTTP/2 MadeYouReset 漏洞影响分析

本文详细分析了Swift NIO HTTP2库受HTTP/2 MadeYouReset漏洞影响的情况。该漏洞属于中等严重程度,影响1.38.0之前的所有版本。文章介绍了防护措施、修复建议及漏洞的技术细节。

Swift NIO HTTP2 受 HTTP/2 MadeYouReset 漏洞影响

漏洞详情

包名: swift
仓库: github.com/apple/swift-nio-http2 (Swift)

受影响版本: < 1.38.0
已修复版本: 1.38.0

漏洞描述

HTTP/2 MadeYouReset 漏洞对 swift-nio-http2 的影响较为轻微。swift-nio-http2 主要通过之前为应对 RapidReset 漏洞而添加的多种拒绝服务防护模式来防范 MadeYouReset 漏洞。因此,服务器不会受到基于 MadeYouReset 的简单攻击影响,简单的概念验证示例也不会影响 swift-nio-http2。

然而,在 1.38.0 版本中,我们作为预防措施添加了一些深度防御机制,用于检测行为"异常"的客户端。这些深度防御措施主要针对攻击者将攻击流量与合法流量交织在一起,试图规避我们现有 DoS 防护机制的资源耗尽攻击。

我们建议所有使用者尽快升级到 1.38.0 版本,以防范未来可能出现的更复杂攻击。

我们非常感谢 @galbarnahum、@AnatBB 和 @YanivRL 的报告和协助。

技术指标

严重程度: 中等
CVSS 总体评分: 6.3/10

CVSS v4 基础指标

可利用性指标:

  • 攻击向量: 网络
  • 攻击复杂度: 低
  • 攻击要求: 存在
  • 所需权限: 无
  • 用户交互: 无

脆弱系统影响指标:

  • 机密性: 无影响
  • 完整性: 无影响
  • 可用性: 低影响

后续系统影响指标:

  • 机密性: 无影响
  • 完整性: 无影响
  • 可用性: 无影响

弱点分类

CWE-405: 非对称资源消耗(放大)

  • 该产品未能适当控制攻击者可能使产品消耗或产生过多资源的情况,而无需攻击者投入等效工作或证明授权,即攻击者的影响是不对称的。

参考信息

  • GHSA-xvr7-p2c6-j83w
  • 源代码: apple/swift-nio-http2

致谢

感谢以下人员的报告:

  • galbarnahum
  • AnatBB
  • YanivRL
comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计