【漏洞告警】SaltStack多个高危漏洞(CVE-2021-25281/25282/25283)
SaltStack官方发布安全更新修复了三个高危漏洞,其中包括SaltStack未授权访问漏洞(CVE-2021-25281)、SaltStack任意文件写漏洞(CVE-2021-25282)、SaltStack服务端模板注入漏洞(CVE-2021-25283)等多个高危漏洞。通过组合这三个漏洞,可以导致远程代码执行。
CVE-2021-25281:
salt-api未校验wheel_async客户端的eauth凭据,受此漏洞影响攻击者可远程运行master上任意wheel模块。
CVE-2021-25282:
salt.wheel.pillar_roots.write方法存在目录穿越漏洞。
CVE-2021-25283:
内置Jinja渲染引擎存在SSTI(Server Side Template Injection,服务端模板注入)漏洞。
SaltStack的REST API接口run中存在未授权访问漏洞(CVE-2021-25281):攻击者可以向该接口发送发起异步调用,在异步调用中未作鉴权,从而绕过权限鉴定,执行salt的任意python模块
SaltStack的pillar_roots.write模块中存在任意文件写漏洞(CVE-2021-25282):在该模块中,代码直接拼接了pillar_roots和用户传入的path,通过传入../可以达到目录遍历,从而在目标目录写入恶意文件
exploit:
{
"client":"wheel_async",
"fun":"pillar_roots.write",
"data":"night",
"path":"../../../../../../../tmp/night",
"username":"1",
"password":"1",
"eauth":"pam"
SaltStack的默认模板渲染引擎存在服务端模板注入漏洞(CVE-2021-25283):通过配置sdb模块配置文件可以向Jinja2传递恶意payload,当salt-master加载配置文件时即可触发SSTI里面的恶意代码。
通过组合上述三个漏洞即可达到远程代码执行的效果,截图如下。
SaltStack <= 3002.2
SaltStack <= 3001.5
SaltStack <= 3000.7
2.如果没有用到wheel_async模块,可以在salt/salt/netapi/__init__.py中将其删除,可临时缓解该漏洞。
参考链接:
https://saltproject.io/security_announcements/active-saltstack-cve-release-2021-feb-25/
https://mp.weixin.qq.com/s/bAai5aLwWjwSaMJThxA4VA