编辑
2025-10-16
问题解决文档
00
请注意,本文编写于 90 天前,最后修改于 90 天前,其中某些信息可能已经过时。

目录

一、准备工作
1、备份关键数据
2、检查当前版本
3、记录当前版本适配
二、正式修复步骤
方案1:通过YUM升级(推荐)
方案2:源码编译安装
三、回退方案
情况1:升级后出现兼容性问题
情况2:编译安装失败
四、临时缓解措施(若无法立即升级)
五、风险控制
六、验证与监控
1、**功能测试

Linux sudo 漏洞修复与回退方案 (CNNVD-202506-3714 & CNNVD-202506-3715)

一、准备工作

1、备份关键数据

sudo cp /etc/sudoers /etc/sudoers.bak sudo cp -r /usr/bin/sudo /usr/bin/sudo.bak

2、检查当前版本

sudo --version | head -1

3、记录当前版本适配

sudo -V > sudo_config_backup.txt

二、正式修复步骤

方案1:通过YUM升级(推荐)

# 添加EPEL仓库(如需) sudo yum install -y epel-release # 升级sudo sudo yum update -y sudo # 验证版本 sudo --version | head -1

方案2:源码编译安装

# 安装依赖 sudo yum install -y gcc zlib-devel openssl-devel pam-devel make wget # 下载源码 wget https://www.sudo.ws/dist/sudo-1.9.18.tar.gz tar xvf sudo-1.9.18.tar.gz cd sudo-1.9.18 # 编译安装 ./configure --prefix=/usr --libexecdir=/usr/lib --with-pam --with-sssd make sudo make install # 验证 sudo --version | head -1

三、回退方案

情况1:升级后出现兼容性问题

# 恢复备份的sudo二进制文件 sudo cp /usr/bin/sudo.bak /usr/bin/sudo # 恢复sudoers配置 sudo cp /etc/sudoers.bak /etc/sudoers # 验证回退 sudo --version | head -1

情况2:编译安装失败

# 卸载编译安装的版本 cd sudo-1.9.18 sudo make uninstall # 重新安装旧版 sudo yum reinstall -y sudo

四、临时缓解措施(若无法立即升级)

# 限制漏洞利用 echo 'Defaults !use_homedir' | sudo tee -a /etc/sudoers echo 'Defaults !sudoedit' | sudo tee -a /etc/sudoers # 使配置生效 sudo visudo -c

五、风险控制

  1. 升级风险

    • 可能影响依赖sudo的服务
    • 建议在维护窗口操作
    • 准备应急回退方案
  2. 回退风险

    • 回退后会重新暴露漏洞
    • 需尽快安排替代方案
  3. 临时措施风险

    • 可能影响正常业务功能
    • 需测试关键命令是否可用

六、验证与监控

1、**功能测试

sudo -l sudo -h
graph TD
    A[开始] --> B{检查当前版本}
    B -->|安全版本| C[无需操作]
    B -->|漏洞版本| D[选择修复方案]
    D --> E[YUM升级]
    D --> F[源码编译]
    E --> G[验证]
    F --> G
    G -->|成功| H[完成]
    G -->|失败| I[执行回退]
    I --> J[恢复备份]
    J --> K[采用临时措施]
    K --> L[安排再次修复]

本文作者:小白

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!