Arch Linux Security Advisory ASA-202102-33
==========================================

Severity: High
Date    : 2021-02-27
CVE-ID  : CVE-2020-28243 CVE-2020-28972 CVE-2020-35662 CVE-2021-3144
          CVE-2021-3148  CVE-2021-3197  CVE-2021-25281 CVE-2021-25282
          CVE-2021-25283 CVE-2021-25284
Package : salt
Type    : multiple issues
Remote  : Yes
Link    : https://security.archlinux.org/AVG-1624

Summary
=======

The package salt before version 3002.5-3 is vulnerable to multiple
issues including access restriction bypass, arbitrary command
execution, certificate verification bypass, cross-site scripting,
insufficient validation, privilege escalation, directory traversal and
information disclosure.

Resolution
==========

Upgrade to 3002.5-3.

# pacman -Syu "salt>=3002.5-3"

The problems have been fixed upstream in version 3002.5.

Workaround
==========

None.

Description
===========

- CVE-2020-28243 (privilege escalation)

An issue was discovered in SaltStack Salt before 3002.5. The minion's
restartcheck is vulnerable to command injection via a crafted process
name. This allows for a local privilege escalation by any user able to
create files on the minion in a non-blacklisted directory.

- CVE-2020-28972 (certificate verification bypass)

In SaltStack Salt before 3002.5, authentication to VMware vcenter,
vsphere, and esxi servers (in the vmware.py files) does not always
validate the SSL/TLS certificate.

- CVE-2020-35662 (certificate verification bypass)

In SaltStack Salt before 3002.5, when authenticating to services using
certain modules, the SSL certificate is not always validated.

- CVE-2021-3144 (insufficient validation)

In SaltStack Salt before 3002.5, eauth tokens can be used once after
expiration. (They might be used to run command against the salt master
or minions.)

- CVE-2021-3148 (arbitrary command execution)

An issue was discovered in SaltStack Salt before 3002.5. Sending
crafted web requests to the Salt API can result in
salt.utils.thin.gen_thin() command injection because of different
handling of single versus double quotes. This is related to
salt/utils/thin.py.

- CVE-2021-3197 (arbitrary command execution)

An issue was discovered in SaltStack Salt before 3002.5. The salt-api's
ssh client is vulnerable to a shell injection by including ProxyCommand
in an argument, or via ssh_options provided in an API request.

- CVE-2021-25281 (access restriction bypass)

An issue was discovered in SaltStack Salt before 3002.5. salt-api does
not honor eauth credentials for the wheel_async client. Thus, an
attacker can remotely run any wheel modules on the master.

- CVE-2021-25282 (directory traversal)

An issue was discovered in SaltStack Salt before 3002.5. The
salt.wheel.pillar_roots.write method is vulnerable to directory
traversal.

- CVE-2021-25283 (cross-site scripting)

An issue was discovered in SaltStack Salt before 3002.5. The jinja
renderer does not protect against server side template injection
attacks.

- CVE-2021-25284 (information disclosure)

An issue was discovered in SaltStack Salt before 3002.5.
salt.modules.cmdmod can log credentials to the info or error log level.

Impact
======

A remote unauthenticated attacker could execute commands, bypass TLS
verification, traverse directories and disclose credentials.

References
==========

https://saltproject.io/security_announcements/active-saltstack-cve-release-2021-feb-25/
https://security.archlinux.org/CVE-2020-28243
https://security.archlinux.org/CVE-2020-28972
https://security.archlinux.org/CVE-2020-35662
https://security.archlinux.org/CVE-2021-3144
https://security.archlinux.org/CVE-2021-3148
https://security.archlinux.org/CVE-2021-3197
https://security.archlinux.org/CVE-2021-25281
https://security.archlinux.org/CVE-2021-25282
https://security.archlinux.org/CVE-2021-25283
https://security.archlinux.org/CVE-2021-25284