本文介绍 CVE-2026-31431 Linux 内核本地权限提升漏洞的影响范围及官方修复方案。阿里云通过发布修复后的内核小版本解决该漏洞,修复后无需修改业务代码即可恢复安全状态。
漏洞背景
CVE-2026-31431 是 Linux 内核 algif_aead 模块中存在的本地权限提升漏洞。
algif_aead 模块用于内核态 AEAD(Authenticated Encryption with Associated Data)操作。由于性能优化补丁引入了页缓存共享机制,攻击者可向任意可读文件的页缓存中写入受控的 4 字节数据,进而通过篡改 setuid 二进制文件实现本地提权并获取 root 权限。
修复方案
阿里云采用上游官方修复方式,通过发布新的内核小版本修复该漏洞。
修复方案通过回滚 algif_aead 模块中的危险就地(in-place)操作,将加解密流程恢复为安全的 out-of-place 模式:
修复前:加密/解密操作复用页缓存(存在本地提权风险)
修复后:加密/解密操作使用独立缓冲区
由于修复方案回滚了上游性能优化,理论上会对部分加解密场景带来一定性能下降。建议升级后重点观察业务性能指标与系统稳定性。
受影响版本及修复版本
操作系统 | 受影响版本 | 修复版本 |
Alibaba Cloud Linux 2 | kernel-4.19.91-28.4 及以下的所有版本 | kernel-4.19.91-28.5.al7 或更高 |
Alibaba Cloud Linux 3 | kernel-5.10.134-19.3 及以下的所有版本 | kernel-5.10.134-19.3.1.al8 或更高 |
Alibaba Cloud Linux 4 | kernel-6.6.102-5.3 及以下的所有版本 | kernel-6.6.102-5.3.1.alnx4 或更高 |
升级内核
执行 yum update kernel 会将当前内核升级至仓库中的最新版本。例如:
kernel-5.10.134-16 → kernel-5.10.134-19.3.1。升级过程中可能涉及兼容性变化或性能回退,请严格控制升级节奏,并做好业务巡检与灰度验证。
步骤一:创建快照
升级前请为系统盘和数据盘创建快照,以便异常时快速回滚。
操作路径: ECS 控制台 > 实例详情页 > 块存储 > 创建快照
步骤二:安装修复内核
方式一:YUM 在线升级(推荐)
# 1. 清理缓存
sudo yum clean all
# 2. 安装修复内核
sudo yum update kernel
# 3. 确认默认启动内核
sudo grubby --default-kernel
# 预期输出: /boot/vmlinuz-<修复版本号>
# 如输出为修复版本,则无需额外操作;如非修复版本,请执行步骤 4
# 4. (可选) 设置默认启动新内核
# 先查看所有内核及 index
sudo grubby --info=ALL | grep -E "^index|^kernel"
# 设置新内核为默认(替换为实际 index 值)
sudo grubby --set-default-index=<新内核 index>方式二:离线安装 RPM
# 1. 下载对应 RPM 包(从阿里云官方渠道)
# 2. 安装内核
sudo rpm -ivh kernel-*.rpm
# 3. 确认默认启动内核
sudo grubby --default-kernel
# 预期输出: /boot/vmlinuz-<修复版本号>
# 如输出为修复版本,则无需额外操作;如非修复版本,请执行步骤 4
# 4.(可选)设置默认启动新内核
# 先查看所有内核及 index
sudo grubby --info=ALL | grep -E "^index|^kernel"
# 设置新内核为默认(替换为实际 index 值)
sudo grubby --set-default-index=<新内核 index>步骤三:重启系统
sudo reboot步骤四:验证修复
# 确认内核版本
uname -r
# 预期输出:修复版本或更高(见前文版本表)升级影响说明
对不需要修复 CVE 的用户
如果当前无需修复该漏洞,但仍执行了内核升级:
未使用
algif_aead模块:升级后不受影响,系统功能和性能无变化使用 AF_ALG 接口的加解密相关业务:升级后功能保持正常,但
algif_aead模块性能理论上会下降约 5%。
如业务不依赖
algif_aead且无安全合规要求,可根据实际情况安排升级窗口。如业务存在安全合规要求或使用该模块,建议尽快升级。
性能影响
由于修复方案回滚了上游性能优化逻辑,将共享缓存模式改为独立缓冲区模式,理论上会带来轻微性能下降。例如:
基于
libkcapi测试使用 AES(AESNI) GCM(ASM-RFC) 256 算法
algif_aead模块性能下降约 5%
修复前:采用 in-place 模式,共享页缓存,性能更高但存在安全风险
修复后:采用 out-of-place 模式,使用独立缓冲区,安全性更高
建议在业务低峰期执行升级操作,升级后观察业务指标 10-30 分钟。
回退方法
如升级后出现兼容性或性能异常,可通过以下方式回退。
方式一:快照回滚(推荐)
停止 ECS 实例。
在控制台选择升级前创建的快照进行回滚。
启动实例并验证业务状态。
方式二:切换旧内核启动
# 1. 查看已安装内核版本
grep menuentry /boot/grub2/grub.cfg | cut -d "'" -f2
# 2. 设置旧内核为默认启动项
sudo grubby --set-default-index=<旧内核 index>
# 3. 重启系统
sudo reboot
# 4. 卸载新内核及其组件(可选,以 5.10.134-19.3.1.al8 为例)
sudo yum remove kernel-5.10.134-19.3.1.al8 \
kernel-core-5.10.134-19.3.1.al8 \
kernel-modules-5.10.134-19.3.1.al8 \
kernel-modules-extra-5.10.134-19.3.1.al8 \
kernel-modules-internal-5.10.134-19.3.1.al8注意事项
必须重启:内核升级后需重启系统才能生效。如果无法重启,可参考Alibaba Cloud Linux系统禁用AF_ALG协议族缓解方案。
业务验证:使用
AF_ALG调用algif_aead模块的业务,需重点验证升级后的功能正确性与性能表现。兼容性:如业务使用自定义内核模块,请提前确认与目标内核版本的兼容性。
监控建议:升级后建议重点观察加密密集型业务的性能基线与异常日志。