描述
远程主机受到 GLSA-202310-22 中所述漏洞的影响(Salt:多个漏洞)
- 在版本低于 3002.5 的 SaltStack Salt 中发现了一个问题。minion 的 restartcheck 容易通过构建的进程名称受到命令注入漏洞的影响。这让能够在未列入黑名单的目录中的 minion 上创建文件的任何用户可以在本地提升特权。(CVE-2020-28243)
- 在 3002.5 之前的 SaltStack Salt 中,对 VMware vcenter、vsphere 和 esxi 服务器(在 vmware.py 文件中)的身份验证不会始终验证 SSL/TLS 证书。(CVE-2020-28972)
- 在 3002.5 之前的 SaltStack Salt 中,使用某些模块对服务进行身份验证时,不会始终验证 SSL 证书。(CVE-2020-35662)
- 在 3002.5 之前的 SaltStack 中,eauth 标记在过期后还可使用一次。(这些标记可用于针对 salt 主控端或从属设备运行命令。)(CVE-2021-3144)
- 在版本低于 3002.5 的 SaltStack Salt 中发现了一个问题。将构建的 Web 请求发送到 Salt API 可导致 salt.utils.thin.gen_thin() 命令注入,这是因为对单引号和双引号的处理不同。这与 salt/utils/thin.py 有关。(CVE-2021-3148)
- 在版本低于 3002.5 的 SaltStack Salt 中发现了一个问题。- salt-api 的 ssh 客户端容易遭受 shell 注入攻击,方法是在参数中包含 ProxyCommand,或通过 API 请求中提供的 ssh_options。
(CVE-2021-3197)
- 在版本低于 3003.3 的 SaltStack Salt 中发现了一个问题。控制源代码和 source_hash URL 的用户可以 root 用户身份获取对 Salt minion 的文件系统完全访问权限。(CVE-2021-21996)
- 在 3002.5 之前的 SaltStack Salt 中发现一个问题。salt-api 不支持 round_async 客户端的 eauth 凭据。因此,攻击者可以远程运行主控端上的任何 Wheel 模块。
(CVE-2021-25281)
- 在 3002.5 之前的 SaltStack Salt 中发现了一个问题。salt.wheel.pil_roots.write 方法容易受到目录遍历漏洞的影响。(CVE-2021-25282)
- 在 3002.5 之前的 SaltStack Salt 中发现了一个问题。jinja 渲染器无法防止服务器端受到模板注入攻击。(CVE-2021-25283)
- 在 3002.5 之前的 SaltStack Salt 中发现一个问题。salt.modules.cmdmod 可将凭据记录到信息或错误日志级别。(CVE-2021-25284)
- 在 SaltStack Salt 2016.9 到 3002.6 中,Snapper 模块中存在命令注入漏洞,该漏洞允许在 minion 上实现本地特权提升。此攻击要求使用 Snapper 备份的路径名称创建一个文件,并且要求 master 调用 snapper.diff 函数(此函数以不安全方式执行 popen)。(CVE-2021-31607)
- 在版本低于 3002.8、3003.4、3004.1 的 SaltStack Salt 中发现了一个问题。Salt Masters 不使用 minion 的公钥对 Pillar 数据进行签名,而这可导致攻击者替换任意 Pillar 数据。(CVE-2022-22934)
- 在版本低于 3002.8、3003.4、3004.1 的 SaltStack Salt 中发现了一个问题。Minion 身份验证拒绝服务可能会导致 MiTM 攻击者通过冒充主用户来强制 Minion 进程停止。(CVE-2022-22935)
- 在版本低于 3002.8、3003.4、3004.1 的 SaltStack Salt 中发现了一个问题。作业发布和文件服务器回复容易受到重放攻击,而这可导致攻击者重放作业发布,从而造成 Minion 运行旧作业。文件服务器回复也可以重播。在某些情况下,足够熟练的攻击者可以获得 Minion 的根访问权限。(CVE-2022-22936)
- 在版本低于 3002.8、3003.4、3004.1 的 SaltStack Salt 中发现了一个问题。若将 publisher_acl 配置为 Master-of-Masters,且在 publisher_acl 中配置的用户以任何连接到 Syndic 的 minion 为目标, Salt Master 错误地将没有有效目标解释为有效,系统将允许已配置的用户使用其配置的命令来定位连接到 syndic 的任何 minion。这需要 syndic master 与 Master-of-Master 上配置的 publisher_acl 相结合,从而允许 publisher_acl 中指定的用户绕过权限,将授权命令发布到任何配置的 minion。(CVE-2022-22941)
- 在版本低于 3002.9、3003.5、3004.2 的 SaltStack Salt 中发现了一个问题。PAM 身份验证无法拒绝锁定的帐户,导致帐户被锁定之前已获得授权的用户在帐户被锁定的情况先仍能运行 Salt 命令。这会影响可以访问活动会话的本地 shell 帐户和通过 PAM eauth 进行身份验证的 salt-api 用户。(CVE-2022-22967)
请注意,Nessus 尚未测试这些问题,而是只依据应用程序自我报告的版本号进行判断。
解决方案
所有 Salt 用户均应升级至最新版本:
# emerge --sync # emerge --ask --oneshot --verbose >=app-admin/salt-3004.2
插件详情
文件名: gentoo_GLSA-202310-22.nasl
支持的传感器: Nessus
风险信息
矢量: CVSS2#AV:N/AC:L/Au:N/C:P/I:P/A:P
矢量: CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
时间矢量: CVSS:3.0/E:F/RL:O/RC:C
漏洞信息
CPE: p-cpe:/a:gentoo:linux:salt, cpe:/o:gentoo:linux
必需的 KB 项: Host/local_checks_enabled, Host/Gentoo/release, Host/Gentoo/qpkg-list
易利用性: Exploits are available
可利用的方式
Metasploit (SaltStack Salt API Unauthenticated RCE through wheel_async client)
参考资料信息
CVE: CVE-2020-28243, CVE-2020-28972, CVE-2020-35662, CVE-2021-21996, CVE-2021-25281, CVE-2021-25282, CVE-2021-25283, CVE-2021-25284, CVE-2021-3144, CVE-2021-3148, CVE-2021-31607, CVE-2021-3197, CVE-2022-22934, CVE-2022-22935, CVE-2022-22936, CVE-2022-22941, CVE-2022-22967