Sudo 堆缓冲区溢出漏洞安全问题,升级 CentOS Sudo 版本脚本


漏洞详情

漏洞等级 High
CVE编号 CVE-2021-3156
漏洞详情
在sudo解析命令行参数的方式中发现了基于堆的缓冲区溢出。任何本地用户(普通用户和系统用户,sudoer和非sudoers)都可以利用此漏洞,而无需进行身份验证,攻击者不需要知道用户的密码,成功利用此漏洞可以获得root权限。
影响范围
sudo: 1.8.2 – 1.8.31p2
sudo: 1.9.0 – 1.9.5p1
修复方案
注意:安装升级前,请做好数据备份、快照和测试工作,防止发生意外
1、下载升级sudo软件包升级,https://www.sudo.ws/dist/
2、使用各系统官方发布软件包的用户参考各官方发布情况进行修复;
参考链接
https://blog.qualys.com/vulnerabilities-research/2021/01/26/cve-2021-3156-heap-based-buffer-overflow-in-sudo-baron-samedit
https://access.redhat.com/security/cve/CVE-2021-3156
https://security-tracker.debian.org/tracker/CVE-2021-3156
https://ubuntu.com/security/CVE-2021-3156

升级脚本

目前这个脚本只在 CentOS 7.x 及 Centos 8.x 测试过,其它系统大同小异,仅供参考。

#!/usr/bin/env bash
# encoding: utf-8
# http://github.com/godcheese/shell_bag
# author: godcheese [godcheese@outlook.com]
# description: update sudo to 1.9.5p2

wget https://www.sudo.ws/dist/sudo-1.9.5p2.tar.gz
yum install -y gcc make
tar -zxvf sudo-1.9.5p2.tar.gz
cd sudo-1.9.5p2
./configure --prefix=/usr --libexecdir=/usr/lib --with-secure-path --with-all-insults --with-env-editor --docdir=/usr/share/doc/sudo-1.9.5p2 --with-passprompt="[sudo] password for %p: "
make && make install && ln -sfv libsudo_util.so.0.0.0 /usr/lib/sudo/libsudo_util.so.0
cd ..
rm -rf sudo-1.9.5p2
rm -rf sudo-1.9.5p2.tar.gz
sudo -V

看到如下截图信息表示升级完成:


发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注