渗透测试——CVE-2021-3156 Linux sudo权限提升漏洞
QQ 1274510382
Wechat JNZ_aming
商业联盟 QQ群538250800
技术搞事 QQ群599020441
解决方案 QQ群152889761
加入我们 QQ群649347320
共享学习 QQ群674240731
纪年科技aming
网络安全 ,深度学习,嵌入式,机器强化,生物智能,生命科学。
叮叮叮:产品已上线 —>关注 官方-微信公众号——济南纪年信息科技有限公司
民生项目:商城加盟/娱乐交友/创业商圈/外包兼职开发-项目发布/
安全项目:态势感知防御系统/内网巡查系统
云服项目:动态扩容云主机/域名/弹性存储-数据库-云盘/API-AIeverthing
产品咨询/服务售后(同)
纸上得来终觉浅,绝知此事要躬行 !!! 寻找志同道合伙伴创业中。。。抱团滴滴aming联系方式!!
#本文为广告系统自动投放广告
# 如有侵权 删改 请速速联系我们
Web安全
信息安全从业人员
计算机基础、计算机网络、Linux
预备知识
漏洞信息
漏洞编号:CVE-2021-3156
漏洞名称:Linux sudo权限提升漏洞
漏洞描述:
1月26日,sudo发布安全通告,
修复了一个类Unix操作系统在命令参数中,
转义反斜杠时存在基于堆的缓冲区溢出漏洞。
当sudo通过-s或-i命令行选项
在shell模式下运行命令时,
它将在命令参数中使用反斜杠转义特殊字符。
但使用-s或-i标志运行sudoedit时,实际上并未进行转义,从而可能导致缓冲区溢出。
因此只要存在sudoers文件(通常是/etc/sudoers),
攻击者就可以使用本地普通用户,利用sudo获得系统root权限。
影响版本:sudo 1.8.2-1.8.31p2、sudo 1.9.0-1.9.5p1
实验目的
通过实验了解Linux sudo权限提升漏洞的起因,掌握漏洞利用的方法。
实验环境
操作系统:Ubuntu 18.04
任务描述:判断漏洞是否存在。
查看Ubuntu系统版本信息:
查看sudo版本:
sudoedit版本为1.8.21p2。
使用普通用户执行下面的命令:
如果返回以sudoedit:开头的错误,则当前系统可能存在安全风险;
不受影响的系统将显示以usage:开头的错误。
任务描述:sudo权限提升漏洞利用。
下载实验所需PoC并解压:
进入目录并执行:
其中0)、1)、2)显示的是可以进行漏洞利用的版本。
根据我们的sudoedit版本选择0:
发现可以成功提权至root。
任务描述:漏洞原理简单分析。
攻击者可以通过在给sudo的任何argv或env参数末尾,
插入一个反斜杠来使堆块溢出,从而导致参数超出范围。
下面来看一下简化版的代码片段:
第一个for循环在遍历每个参数,
并使用strlen判断其大小(加上空终止符)。
假设我们有一个空字符串AAAA\(\是一个字符),
大小为5,
并且假设这是唯一的参数,仅分配5个字节。
在下一部分中有一个用于参数的外部for循环,
和一个将所有参数的内容复制到
单个缓冲区user_args中的内部循环,
本质上是将所有参数串联在一起。
考虑到与前面相同的字符串AAAA\一样,
当[0]==\成立时,进入if并从from++递增,
因为它指向空休止符,
所以导致递增。
之后执行下一条语句*to++=*from++;继续循环,复制空终止符的语句,
并再次递增from以继续复制空终止符之后的字节,最终超出界限。
调试分析见:https://www.cnblogs.com/hac425/p/14336484.html
漏洞修复
目前官方已在sudo新版本1.9.5p2中修复了该漏洞,
官方下载链接:https://www.sudo.ws/download.html
注:建议用户在升级前做好数据备份工作,避免出现意外。
临时防护措施
1、安装所需的systemtap软件包和依赖项:
RHEL7安装kernel debuginfo:debuginfo-install -y kernel-“$(uname -r)”
RHEL 8安装sudo debuginfo:debuginfo-install sudo
2、使用root安装脚本:
#nohup stap -g sudoedit-block.stap&
将输出systemtap脚本的PID编号,
该脚本会导致易受攻击的sudoedit二进制文件停止工作,sudo命令仍照常工作。
注:上述命令会在重启后失效。
3、一旦安装了补丁程序,就可以通过终止systemtap进程来删除systemtap脚本。
例如执行以下命令终止systemtap进程,其中7590是systemtap进程的PID:
kill -s SIGTERM 7590
分析与思考
更多漏洞分析见:https://www.kalmarunionen.dk/writeups/sudo/
参考
1、 https://www.venustech.com.cn/new\_type/aqtg/20210127/22339.html
还没有评论,来说两句吧...