概述
本文作者:Birdman‐one(Ms08067实验室 SRSP TEAM小组成员)
0x01 简介
SaltStack是基于Python开发的一套C/S架构配置管理工具,是一个服务器基础架构集中化管理平台,具备配置管理、远程执行、监控等功能。
在CVE‐2020‐11651认证绕过漏洞中,攻击者通过构造恶意请求,可以绕过Salt Master的验证逻辑,调用相关未授权函数功能,从而可以造成远程命令执行漏洞。
漏洞成因
ClearFuncs类会处理非认证的请求和暴露_send_pub()方法,可以用来直接在master publish服务器上对消息进行排队。这些消息可以用来触发minion来以root权限运行任意命令。
ClearFuncs类还会暴露_prep_auth_info()方法,该方法会返回用来认证master服务器上本地root用户的命令的root key。然后root key就可以远程调用master服务器的管理命令。这种无意的暴露提供给远程非认证的攻击者对salt master的与root权限等价的访问权限。
1) 影响版本
SaltStack < 2019.2.4
SaltStack < 3000.2
2) 默认端口
4505 publish_port 提供远程执行命令发送功能
4506 ret_port 支持认证、文件服务、结果收集等功能
8000 salt‐api
0x02 环境搭建
直接使用vulhub进行搭建环境
git clone https://github.com/vulhub/vulhub.git
cd /vulhub/saltstack/CVE‐2020‐11651/
docker‐compose up ‐d
查看环境是否启动docker ps
0x03 漏洞复现
EXP地址:
https://github.com/jasperla/CVE‐2020‐11651‐poc
https://github.com/heikanet/CVE‐2020‐11651‐CVE‐2020‐11652‐EXP.git
同时,需要安装下salt
pip install salt
执行命令,这里需要把py脚本里的port自行修改为靶机4506映射的端口(如果一样则不用改),执行后可以看到回显存在漏洞
选择1:进行测试poc:
选择2:尝试读取文件
/etc/passwd
选择4:反弹shell:
0x04 解决方案
SaltStack官方已发布最新版本修复了上述漏洞,建议相关用户及时更新规避风险。
https://github.com/saltstack/salt/releases
禁止将Salt Master默认监听端口(4505、4506)向公网开放,并设置为仅对可信对象开放。
扫描下方二维码加入星球学习
加入后会邀请你进入内部微信群,内部微信群永久有效!
目前30000+人已关注加入我们
最后
以上就是单纯手链为你收集整理的漏洞复现 | SaltStack认证绕过(CVE‐2020‐11651)的全部内容,希望文章能够帮你解决漏洞复现 | SaltStack认证绕过(CVE‐2020‐11651)所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复