针对名为 DirtyDecrypt(也称为 DirtyCBC)的高危 Linux 内核本地权限提升漏洞(CVE-2026-31635),已开发出一个概念验证 (PoC) 漏洞利用程序,该程序允许本地攻击者获得受影响系统的完全 root 访问权限。
安全分析师 Will Dormann 指出,该漏洞编号为CVE-2026-31635,补丁已于 2026 年 4 月 25 日悄悄修复。
DirtyDecrypt 函数rxgk_decrypt_skb()位于 Linux 内核的 RxGK 子系统中,RxGK 子系统是基于 GSS-API 的 RxRPC 安全层,RxRPC 是 Andrew 文件系统 (AFS) 客户端使用的网络传输。
研究人员表示,根本原因是缺少写时复制 (COW) 保护:解密传入的套接字缓冲区时sk_buff,内核直接写入共享的页面缓存页,而没有先创建私有副本。
这种不受保护的写入操作会落入特权进程的内存或特权文件的页面缓存中,包括/etc/shadow、/etc/sudoers或 SUID 二进制文件——这使得本地非特权用户能够破坏并最终覆盖这些页面以获得 root 权限。
研究人员将他们的发现描述为“由于 rxgk_decrypt_skb 中缺少 COW 保护而导致的 rxgk 页面缓存写入”,并于 2026 年 5 月 9 日向内核维护人员报告了此事,被告知这是一个已经修复的内部问题的重复问题。
受DirtyDecrypt 漏洞影响的发行版
漏洞影响以下Linux发行版:
Fedora (包括 Rawhide 和 Workstation,补丁前版本)
Arch Linux (pacman -Syu之前版本)
openSUSE Tumbleweed (zypper dup之前版本)
Systems using mainline kernel PPAs or ELRepo kernel-ml on RHEL/CentOS Stream
稳定的企业发行版——Debian Stable、RHEL 8/9 和 Ubuntu LTS——默认禁用 RxGK,通常不受其影响。
管理员可以通过运行以下命令来验证是否存在风险:
Bash zcat /proc/config.gz | grep RXGK
在容器环境中,威胁会显著升级。
在运行滚动发布内核的Kubernetes工作节点上,成功的DirtyDecrypt漏洞利用会导致容器完全逃逸:主机上的本地root用户可以访问该节点上挂载的每个Pod、每个容器运行时套接字以及每个Kubernetes密钥。
在企业环境中,运行 Fedora 或 Arch 的开发人员工作站通常保存着活动kubectl上下文、AWS 生产配置文件和 SSH 密钥,是风险最高的攻击目标。
DirtyDecrypt 是三周内同一 XFRM/ESP/rxgk 攻击面上的第四个 Linux 内核 LPE 漏洞,与正在被积极利用的 Copy Fail 系列漏洞属于同一漏洞类别。
主要补救措施是拉取包含 4 月 25 日上游补丁的内核更新:
Bash
# Fedora
sudo dnf upgrade --refresh kernel kernel-core kernel-modules && sudo systemctl reboot
# Arch Linux
sudo pacman -Syu linux linux-headers && sudo systemctl reboot
# openSUSE Tumbleweed
sudo zypper dup && sudo systemctl reboot
对于无法立即进行修补的系统,将rxrpc、esp4和esp6内核模块列入黑名单可以提供临时解决方法——这将破坏 IPsec VPN 连接和 AFS 挂载。
Kubernetes 运维人员应使用已修补的内核重建工作节点镜像,并在集群范围内强制执行 pod 安全标准(配置文件),确保allowPrivilegeEscalation: false将其设置为所有工作负载的默认值。
鉴于公开的 PoC 代码的可用性以及密切相关的 Copy Fail 漏洞所确立的利用先例,Fedora、Arch 和 openSUSE Tumbleweed 上的 Linux 用户应将此视为当务之急。
新闻链接:
https://cybersecuritynews.com/dirtydecrypt-linux-kernel-vulnerability/