CVE-2026-31633Linux内核的rxrpc模块中存在一个严重的整数溢出漏洞。该漏洞发生在`rxgk_verify_response`函数中,由于在验证响应长度时,先对`token_len`进行了向上取整操作,然后再进行长度检查。这种逻辑缺陷导致攻击者可以构造特定的恶意数据包,绕过长度限制检查,进而引发整数溢出。由于该漏洞无需用户交互且无需认证即可通过网络远程利用,攻击者可能利用此漏洞导致系统崩溃、内存破坏,或在特定条件下执行任意代码,对机密性、完整性和可用性造成严重影响。
该漏洞的根本原因在于Linux内核`rxrpc`模块的`rxgk_verify_response`函数中存在逻辑错误。该函数负责验证响应数据的合法性,其中包含对令牌长度的检查。代码中首先对`token_len`进行了向上取整(rounding up)操作,随后才将取整后的值与缓冲区剩余长度`len`进行比较。由于取整操作发生在边界检查之前,如果原始的`token_len`值接近整数类型的上限,取整操作可能导致整数回绕,使得取整后的值反而变小,从而欺骗了后续的长度检查机制。攻击者可以通过网络发送特制的UDP数据包,其中包含精心构造的长度字段,触发该整数溢出。由于`rxgk`协议通常用于处理网络认证相关数据,绕过长度检查后,后续的数据拷贝或解析操作可能会访问越界的内存区域。这可能导致内核堆栈溢出、堆破坏或信息泄露。鉴于该漏洞的CVSS 3.1评分为9.8,且攻击向量为网络,无需权限,这属于高危级别的远程漏洞。