FS2 TLS握手期间套接字半关闭可能导致对端CPU自旋循环漏洞分析

本文详细分析了CVE-2025-58369漏洞,该漏洞影响FS2库的TLS实现,在TLS握手期间套接字半关闭会导致对端CPU自旋循环,可能被用于拒绝服务攻击,涉及具体的技术细节和修复方案。

CVE-2025-58369:FS2 TLS握手期间套接字半关闭漏洞

漏洞详情

影响描述

当在JVM上使用fs2-io的fs2.io.net.tls包建立TLS会话时,如果连接的一方在握手期间关闭写入,而对端正在等待更多数据来推进TLS握手,对端将在套接字读取上进入自旋循环,完全占用一个CPU。这种CPU消耗会持续到整个连接关闭。

此漏洞可能被用作对fs2-io支持的服务器的拒绝服务攻击——例如,通过打开多个连接并将它们置于半关闭状态。

注意:此问题影响基于ember的http4s服务器,因为ember使用fs2的TLS支持。

受影响版本

  • fs2-io_2.12: < 2.5.13, 3.13.0-M1至3.13.0-M6, 3.0.0-M1至3.12.1
  • fs2-io_2.13: < 2.5.13, 3.13.0-M1至3.13.0-M6, 3.0.0-M1至3.12.1
  • fs2-io_3: < 2.5.13, 3.13.0-M1至3.13.0-M6, 3.0.0-M1至3.12.1

修复版本

  • fs2 3.12.2
  • fs2 3.13.0-M7
  • fs2 2.5.13

解决方案

补丁:已在fs2 3.12.2和3.13.0-M7中修复。

临时解决方案:无可用临时解决方案。

技术细节

CVSS评分

  • 总体评分: 5.3(中危)
  • 攻击向量: 网络
  • 攻击复杂度: 低
  • 所需权限: 无
  • 用户交互: 无
  • 影响范围: 未改变
  • 机密性影响: 无
  • 完整性影响: 无
  • 可用性影响: 低

弱点分类

  • CWE-400: 不受控制的资源消耗
  • 产品未能正确控制有限资源的分配和维护,使得攻击者能够影响消耗的资源量,最终导致可用资源耗尽。

参考信息

  • GHSA ID: GHSA-rrw2-px9j-qffj
  • 相关提交:
    • typelevel/fs2#3590
    • typelevel/fs2@46e2dc3
    • typelevel/fs2@5c6c4c6
    • typelevel/fs2#3624
    • typelevel/fs2@edf0c4f

联系方式

如有关于此公告的任何问题或评论:

  • 提交问题
  • 联系Typelevel安全团队
comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计