CVE-2026-42245Ruby Net::IMAP 库在处理 IMAP 协议响应时存在安全缺陷。由于 Net::IMAP::ResponseReader 在读取包含大量字符串字面量的响应时存在二次时间复杂度问题,攻击者可利用此缺陷,通过恶意 IMAP 服务器发送特制的大型响应数据包。这将导致受害客户端的 CPU 资源被过度消耗,无法及时处理正常请求,从而引发拒绝服务攻击,严重影响系统的可用性。
该漏洞的根本原因在于 Net::IMAP::ResponseReader 类中解析响应数据的算法设计不当。当解析包含大量字符串字面量的 IMAP 响应时,该组件的时间复杂度呈现为 O(n^2) 的二次方增长模式,而非线性的 O(n)。攻击者无需经过身份认证,只需通过网络向量,控制恶意的 IMAP 服务器向客户端发送精心构造的、包含海量字符串字面量的响应数据。随着数据规模的增加,客户端处理该响应所需的 CPU 时间呈指数级上升,迅速耗尽计算资源。这种资源耗尽型攻击会导致客户端进程挂起或系统响应严重迟缓,从而实现拒绝服务。该漏洞特别影响了使用该库进行邮件交互的自动化脚本和服务,对服务稳定性构成严重威胁。