如果你的手机能被一个普通App悄无声息地拿到root权限,这意味着什么?通讯录、短信、支付信息,甚至系统底层都将暴露无遗。这不是假设,而是刚刚被安全研究人员在Pixel 10 Pro上完整验证的现实。漏洞编号CVE-2026-43074,一颗埋在Linux内核eventpoll机制里的定时炸弹,CVSS评分7.8,属于高危级别。
这个漏洞的核心问题藏在Linux内核的eventpoll子系统里。简单来说,eventpoll就是epoll机制的实现,负责高效管理大量文件描述符的I/O事件通知。它几乎是每个Linux系统的标配,从服务器到嵌入式设备,从桌面发行版到你的Android手机,都在依赖它工作。也正因如此,一旦这里出现内存安全问题,影响面会迅速扩散到整个生态。
问题的根源是一个典型的释放后使用(Use-After-Free)竞争条件。在特定并发场景下,ep_free()函数会过早调用kfree()释放struct eventpoll结构体,而此时另一个线程可能还在通过RCU读取这个对象。父对象的引用计数已经归零,但子对象对读取者仍然可见,结果就是读取者踩进了已经释放的内存区域。这种 race condition 在操作系统内核里向来是最难排查、也最容易被利用的漏洞类型之一。
研究人员在运行Android 17、内核版本6.6.118的Pixel 10 Pro上完成了完整验证。他们构建的PoC利用程序通过两次运行即可稳定获取root shell,成功率超过80%。这个数字在漏洞利用领域已经算是相当可观了,意味着攻击者不需要太复杂的条件就能复现。更棘手的是,完整的漏洞利用细节和概念验证代码已经公开,防御方的压力陡增。
很多人可能会觉得这只是Android的事,跟自己无关。这种想法需要纠正。eventpoll是Linux内核的核心组件,漏洞的影响范围远不止一部手机。任何运行未修补内核的Linux系统——无论是云服务器、容器宿主机还是IoT设备——理论上都暴露在同样的风险之下。本地低权限用户可以通过精心构造的epoll调用来触发这个竞争窗口,进而实现内核内存篡改和权限提升。
从攻击面来看,利用这个漏洞并不需要什么特殊前提。攻击者只需要本地执行权限,通过多线程并发操作epoll_create、epoll_ctl和close这几个系统调用,就能在eventpoll结构体的生命周期管理上制造混乱。一旦成功,后续的内核内存控制链可以导向任意代码执行,最终拿到系统的最高权限。
好消息是上游社区已经给出了明确的修复方案。核心思路很直接:把原来立即释放的kfree()改成延迟到RCU宽限期结束后再执行,也就是kfree_rcu()机制。这样即使某个线程还在读取eventpoll对象,内存也不会被立即回收,从根本上消除了竞争窗口。相关补丁已经合并到主线,涉及多个commit的回溯移植,覆盖6.4到6.19等多个稳定分支。
对于普通用户和运维人员来说,眼下最务实的做法就是尽快更新内核。Linux各大发行版的安全更新已经在推送路上,Android设备厂商也需要跟进合并最新的安全补丁。在补丁到位之前,多租户环境和容器平台应该收紧本地用户权限,限制不可信代码的执行。虽然目前还没有确认在野利用的案例,但公开的PoC代码已经让这个时间窗口变得非常紧迫。
CVE-2026-43074再次提醒我们,内核内存管理的边界条件永远是安全研究的高产地带。一个看似简单的释放时机问题,就能让数亿台设备的安全防线瞬间崩塌。对于依赖Linux内核的整个生态而言,及时打补丁不是可选项,而是必选项。