怎么进行Sudo堆缓冲区溢出漏洞CVE-2021-3156复现

发布时间:2021-12-28 20:30:55 作者:柒染
来源:亿速云 阅读:168

这篇文章将为大家详细讲解有关怎么进行Sudo堆缓冲区溢出漏洞CVE-2021-3156复现,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

一、漏洞详情

在sudo解析命令行参数的方式中发现了基于堆的缓冲区溢出。任何本地用户(普通用户和系统用户,sudoer和非sudoers)都可以利用此漏洞,而无需进行身份验证,攻击者不需要知道用户的密码。成功利用此漏洞可以获得root权限。

二、影响版本

- sudo:sudo: 1.8.2 - 1.8.31p2

- sudo:sudo: 1.9.0 - 1.9.5p1

三、漏洞环境搭建

备注以非root用户登录系统,并使用命令sudoedit -s /

如果响应一个以sudoedit:开头的报错,那么表明存在漏洞。

如果响应一个以usage:开头的报错,那么表明补丁已经生效

1、我电脑本来安装的ubuntu版本是04,sudo 版本为version 1.8.31,在漏洞影响版本之内,但是通过sudoedit -s /命令查看并不存在Sudo 堆缓冲区溢出漏洞

怎么进行Sudo堆缓冲区溢出漏洞CVE-2021-3156复现

图一:ubuntu20.04版本信息

2、后来从https://releases.ubuntu.com/18.04.5/ubuntu-18.04.5-desktop-amd64.iso下载0.4版本后存在此漏洞怎么进行Sudo堆缓冲区溢出漏洞CVE-2021-3156复现

图二:ubuntu 18.0.4版本信息

四、漏洞复现

1、从github下载漏洞exp:https://codeload.github.com/blasty/CVE-2021-3156/zip/main,将下载好的文件解压,使用make进行编译,否则编译失败(编译之前需要安装make、make-guild、gcc组件)

怎么进行Sudo堆缓冲区溢出漏洞CVE-2021-3156复现

图3:安装make

怎么进行Sudo堆缓冲区溢出漏洞CVE-2021-3156复现

图四:安装make-guild

怎么进行Sudo堆缓冲区溢出漏洞CVE-2021-3156复现

图五:安装gcc

2、进入解压文件目录下,使用make命令进行编译,然后执行./sudo-hax-me-a-sandwich 命令,会提示选择相应的系统,这边使用的是ubuntu 18.0.4版本,直接在./sudo-hax-me-a-sandwich后面加上0执行,最终获得root权限

怎么进行Sudo堆缓冲区溢出漏洞CVE-2021-3156复现

图六:exp支持的系统版本

怎么进行Sudo堆缓冲区溢出漏洞CVE-2021-3156复现

图七:获得root权限

3、此漏洞可以用于本地提权,感兴趣的朋友可以尝试在这上面使用搭建vulhub漏洞,获取到一个低权限账户后进行本地提权

修复建议

下载升级sudo软件包,下载链接为:

sudo软件包下载地址

https://www.sudo.ws/dist/

关于怎么进行Sudo堆缓冲区溢出漏洞CVE-2021-3156复现就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

推荐阅读:
  1. Nginx 解析漏洞复现
  2. stack clash 和sudo 漏洞

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

sudo cve-2021-3156

上一篇:如何进行Weblogic Server远程代码执行漏洞CVE-2021-2109复现及分析

下一篇:如何进行Apache Flink 文件操作漏洞CVE-2020-17518及CVE-2020-17519的分析

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》