CVE-2026-31681Linux内核netfilter模块中的xt_multiport组件存在安全漏洞。由于checkentry路径未正确验证端口范围编码,导致ports_match_v1函数在处理畸形规则时可能读取超出数组边界的内存。本地低权限攻击者利用此漏洞可触发内核越界读取,进而导致系统崩溃或拒绝服务。
该漏洞位于Linux内核netfilter子系统的xt_multiport扩展中。`ports_match_v1()`函数在处理端口规则时,会将非零的pflags条目视为范围的起始,并无条件消耗下一个元素作为范围结束。然而,`checkentry`函数仅检查了协议、标志和数量,却未验证范围编码的合法性。这允许构造畸形规则(如将最后一个元素设为范围起始或连续两个范围起始)。当内核处理此类规则时,`ports_match_v1()`会步过数组末尾,导致越界读取。根据CVSS 3.1向量,该漏洞攻击向量为本地,无需用户交互,主要影响可用性(A:H),可能导致内核恐慌或信息泄露。