漏洞详情
影响范围
当在JVM上使用fs2-io的fs2.io.net.tls包建立TLS会话时,如果连接的一方在握手期间关闭写入,而对端正在等待更多数据来推进TLS握手,对端将在套接字读取上陷入空转循环,完全占用一个CPU核心。这种CPU占用会持续到整个连接关闭。
此漏洞可能被用作对fs2-io驱动的服务器进行拒绝服务攻击——例如,通过建立多个连接并将它们置于半关闭状态。
注意:此问题影响基于ember的http4s服务器,因为ember使用了fs2的TLS支持。
修复版本
- 在fs2 3.12.2和3.13.0-M7中已修复
受影响版本
多个fs2-io包版本受影响,包括:
- co.fs2:fs2-io_2.12: < 2.5.13, >= 3.13.0-M1且< 3.13.0-M7, >= 3.0.0-M1且< 3.12.2
- co.fs2:fs2-io_2.13: < 2.5.13, >= 3.13.0-M1且< 3.13.0-M7, >= 3.0.0-M1且< 3.12.2
- co.fs2:fs2-io_3: < 2.5.13, >= 3.13.0-M1且< 3.13.0-M7, >= 3.0.0-M1且< 3.12.2
解决方案
- 无临时解决方案可用
- 建议升级到修复版本
技术特征
- CVSS评分: 5.3(中危)
- 攻击向量: 网络
- 攻击复杂度: 低
- 所需权限: 无
- 用户交互: 无
- 影响范围: 未改变
- 机密性影响: 无
- 完整性影响: 无
- 可用性影响: 低
相关链接
- GHSA-rrw2-px9j-qffj
- typelevel/fs2#3590
- typelevel/fs2#3624
- 国家漏洞数据库记录
该漏洞属于CWE-400(不受控制的资源消耗)类别,可能被攻击者利用导致系统资源耗尽。