记录黑客技术中优秀的内容,传播黑客文化,分享黑客技术精华

CVE-2020-11651/11652:CVSS评分10的SaltStack RCE漏洞

2020-05-06 13:35

漏洞描述

F-Secure研究人员在SaltStack公司的Salt管理框架中发现多个安全漏洞。Salt开源项目(https://github.com/saltstack/salt) 是SaltStack的核心产品,是管理数据中心和云环境中的服务器的一种配置工具。

Salt用来监控和更新服务器的状态。每个服务器都运行一个名为minion的代理,会连接到master。Master是一个Salt安装,会从minion收集状态报告和发布更新消息。这些的消息是选择的服务器的配置的更新,也可以在多个管理系统中并行地运行相同的命令。

Salt中的默认通信协议是ZeroMQ。Master会暴露2个ZeroMQ实例,分别是请求服务器(request server)和发布服务器(publish server)。请求服务器是minions用来连接以报告状态的,发布服务器是master用来发布minions连接和订阅的消息。

更多参见https://docs.saltstack.com/en/getstarted/system/communication.html.

技术细节

研究人员发现的这两个安全漏洞CVE编号为CVE-2020-11651和CVE-2020-11652。连接到请求服务器端口的攻击者可以绕过所有的认证和授权控制,并发布任意的控制消息,在master服务器文件系统上读写文件,窃取用来认证master的密钥。攻击者利用漏洞可以在连接 master和minion上以root权限实现远程代码执行。

CVE-2020-11651:认证绕过漏洞

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

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

CVE-2020-11652:目录遍历漏洞

整个目录中含有用来读写特定目录路径下的文件。到这些函数的输入会加到目标目录上的,最终的路径没有规范化,导致路径限制的绕过。

salt.tokens.localfs类的get_token()方法没有对用作文件名的token输入参数进行处理,导致可以插入".."这样的路径元素,因此可以读取目标目录外的文件。唯一的限制是该文件会被salt.payload.Serial.loads()反序列化。

漏洞利用

研究人员认为黑客可以在24小时开发100%可靠的漏洞利用。由于漏洞利用的可靠性和简单性,F-Secure研究人员决定不提供PoC代码。

漏洞修复

研究人员扫描发现有超过6000个该服务的实例暴露在互联网上。SaltStack工程师在3000.2发布版中修复了以上2个漏洞,研究人员建议Salt用户将安装配置为自动更新。之前的版本可以选择2019.2.4版本中的补丁进行修复。

还可以添加网络安全控制规则来限制对salt master(端口4505 和 4506)对已知minions的访问。

本文翻译自:https://labs.f-secure.com/advisories/saltstack-authorization-bypass如若转载,请注明原文地址:

知识来源: https://www.4hou.com/posts/jL2W

阅读:44955 | 评论:0 | 标签:漏洞 CVE

想收藏或者和大家分享这篇好文章→复制链接地址

“CVE-2020-11651/11652:CVSS评分10的SaltStack RCE漏洞”共有0条留言

发表评论

姓名:

邮箱:

网址:

验证码:

公告

❤人人都能成为掌握黑客技术的英雄⛄️

ADS

标签云

本页关键词