CVE-2026-43030Linux内核中的BPF子系统存在一个安全漏洞。该漏洞源于`regsafe()`函数在处理指向数据包的指针时存在逻辑错误。当旧寄存器的范围是`BEYOND_PKT_END`且当前寄存器的范围是`N`时,函数可能错误地返回true,导致有效数据包范围的状态未被正确探索。攻击者可利用此漏洞导致系统崩溃或提升权限。
该漏洞位于Linux内核的BPF验证器代码中,具体涉及`regsafe()`函数的实现。BPF验证器负责确保eBPF程序在内核中的安全性,防止非法内存访问。漏洞触发条件为:当旧寄存器状态(rold)的范围标记为`BEYOND_PKT_END`,而当前寄存器状态(rcur)的范围为`N`时,`regsafe()`函数可能错误地判定两者状态安全相等。这种逻辑错误导致验证器跳过对当前状态下有效数据包范围的探索,从而使得恶意的eBPF程序可能绕过安全检查。由于攻击向量为本地(AV:L)且无需用户交互,低权限的本地攻击者可构造特制的eBPF程序触发该漏洞,进而导致内核内存破坏,最终实现从低权限到高权限(Root)的提权。