【漏洞通告】Linux Kernel RDS零拷贝双重释放本地权限提升漏洞

发布时间 2026-05-20

一、漏洞概述



0520漏洞概述.png


Linux Kernel是Linux操作系统核心组件,负责进程调度、内存管理、网络通信及硬件资源控制。RDS(Remote Direct Memory Access Socket)是Linux内核中的高性能网络通信协议组件,支持低延迟数据传输,广泛应用于高性能计算、数据库及企业服务器环境。io_uring则是Linux提供的高性能异步I/O框架,用于提升文件与网络I/O处理效率。


2026年5月20日,启明星辰安全应急响应中心(VSRC)监测到Linux Kernel RDS零拷贝双重释放本地权限提升漏洞。该漏洞源于rds_message_zcopy_from_user()函数在zerocopy发送失败路径中,未正确清理op_nents字段,导致页面引用计数处理异常,引发双重释放问题。攻击者可结合io_uring固定缓冲区机制,通过构造失败的RDS zerocopy发送请求,逐步窃取页面引用计数并触发page cache覆盖,最终覆盖SUID-root二进制文件内容,实现本地提权并获取root权限。该漏洞利用链无需额外Capabilities,在启用CONFIG_RDS、CONFIG_RDS_TCP及CONFIG_IO_URING的系统中风险较高,可能导致主机完全失陷。



二、影响范围



该漏洞影响包含RDS zerocopy Tx support功能,且启用CONFIG_RDS、CONFIG_RDS_TCP及CONFIG_IO_URING配置的Linux Kernel版本。公开信息显示,漏洞由提交0cebaccef3ac ("rds: zerocopy Tx support.")引入,具体受影响版本范围暂未在官方公告中明确说明。已知Arch Linux默认启用了相关RDS模块,Fedora部分环境亦可能受影响;Debian与Ubuntu则默认通过blacklist机制限制RDS模块自动加载,可在一定程度上降低漏洞利用风险。此外,系统需满足io_uring_disabled=0且存在可读SUID-root二进制文件等条件,攻击者方可完成完整本地提权利用链。



三、安全措施



3.1 升级版本


官方已发布修复补丁,以修复该漏洞。


下载链接:

https://lore.kernel.org/netdev/20260505234336.2132721-1-achender@kernel.org/。


3.2 临时措施


暂无。


3.3 通用建议


定期更新系统补丁,减少系统漏洞,提升服务器的安全性。


加强系统和网络的访问控制,修改防火墙策略,关闭非必要的应用端口或服务,减少将危险服务(如SSH、RDP等)暴露到公网,减少攻击面。

使用企业级安全产品,提升企业的网络安全性能。


加强系统用户和权限管理,启用多因素认证机制和最小权限原则,用户和软件权限应保持在最低限度。

启用强密码策略并设置为定期修改。


3.4 参考链接


https://raw.githubusercontent.com/v12-security/pocs/09e835b587bf71249775654061ae4c79e92cf430/pintheft/poc.c/

https://lore.kernel.org/netdev/20260505234336.2132721-1-achender@kernel.org/

https://seclists.org/oss-sec/2026/q2/605