CVE-2023-22809 (sudo提权漏洞)

渗透技巧 1年前 (2023) admin
851 0 0

CVE-2023-22809 (sudo提权漏洞)
点击上方蓝字  关注安全知识




前言:

漏洞具体实现可以自行查看,推荐去看原文章。

1.1 漏洞简述

由于Sudo中的sudoedit对处理用户提供的环境变量(如SUDO_EDITOR、VISUAL和EDITOR)中传递的额外参数存在缺陷。当用户指定的编辑器包含绕过sudoers策略的 ” –” 参数时,拥有sudoedit访问权限的本地攻击者可通过将任意条目附加到要处理的文件列表中,最终在目标系统上实现权限提升。除外,该漏洞还影响部分QNAP操作系统:QTS、QuTS hero、QuTScloud、QVP(QVR Pro设备)。

1.2漏洞范围

sudo 1.8.0到1.9.12p1版本受影响

可以使用此命令进行查看

         CVE-2023-22809 (sudo提权漏洞)

1.3漏洞复现

首先我们先修改/etc/soduers配置文件,这个也是关键

CVE-2023-22809 (sudo提权漏洞)

打开以后我们在文件最后面写入一串配置

CVE-2023-22809 (sudo提权漏洞)

具体格式就是: xxx       ALL=(ALL:ALL)  sudoedit   /etc/xxx 其中第一个xxx是你要进行提权的普通用户的用户名,第二是etc下的一个随意文件(这里具体哪些能行哪些不能行,我也不知道,我测试的vim和xml都可以执行,多试试)

输入wq!进行保存

CVE-2023-22809 (sudo提权漏洞)

然后我们切换普通用户

CVE-2023-22809 (sudo提权漏洞)

在环境变量中输入

EDITOR=‘vim — /path/to/extra/file’

会被解析成

vim — /path/to/extra/file — /path/from/policy

在环境中注入额外的双破折号时,这种行为会导致混乱用于查找编辑器的变量(这个地方看不懂可以去研究一些源码,我们这里只讲利用)

我们切换到普通用户以后向里面输入攻击代码

         

CVE-2023-22809 (sudo提权漏洞)

我们就可以在普通用户命令行里面通过指定vim编辑器打开/etc/passwd文件,将root用户修改成我们自己

CVE-2023-22809 (sudo提权漏洞)

输入密码

CVE-2023-22809 (sudo提权漏洞)

到这一步应该就知道干这么弄了吧

将root修改成我们当前使用的普通用户名,完成提权

CVE-2023-22809 (sudo提权漏洞)

保存退出,然后 su xxx切换到用户中

CVE-2023-22809 (sudo提权漏洞)

那么恭喜现在你就是最高权限用户了

如果想要修护可以将受影响的环境变量添加到env_delete拒绝列表中。或者更新版本

env_delete+=”SUDO_EDITOR VISUAL EDITOR”Cmnd_Alias

SUDOEDIT = sudoedit /etc/custom/service.confuser

user ALL=(ALL:ALL) SUDOEDIT

#在复现过程中,遇到了编辑器的版本问题,vim 8.0 没办法使用那条攻击命令报错是说vim不能使用–参数,但是换了一个环境的ubuntu下的vim8.1就可以执行,具体问题不是很清楚,可以多试试。想要完整利用这个漏洞需要两步,我们登录普通用户以后需要使用一个脚本向/etc/sudoers 里面写入我们上面说的,写入以后才能进行攻击。脚本在github上有,使用者可以根据具体需求进行修改(链接:GitHub – n3m1dotsys/CVE-2023-22809-sudoedit-privesc: A script to automate privilege escalation with CVE-2023-22809 vulnerability

此文借鉴了其他大佬文章也有部分个人理解,供大家学习。

         



往期精选



围观

PHP代码审计学习

丨更多

热文

浅谈应急响应

丨更多

·end·

—如果喜欢,快分享给你的朋友们吧—

我们一起愉快的玩耍吧




原文始发于微信公众号(Rot5pider安全团队):CVE-2023-22809 (sudo提权漏洞)

版权声明:admin 发表于 2023年4月18日 上午9:42。
转载请注明:CVE-2023-22809 (sudo提权漏洞) | CTF导航

相关文章

暂无评论

您必须登录才能参与评论!
立即登录
暂无评论...