CVE-2020-16846 SaltStack Salt Shell Injection

Exploited in the wild Critical 9.8 Published Updated

Attackers can execute arbitrary shell commands via crafted web requests to the Salt API when the SSH client is enabled.

Exploited in the wild
Since 3 Nov 2021
Login needed
Not needed
Attackable
Over the internet
Victim action needed
Not needed
Fix
Available

What is CVE-2020-16846?

CVE-2020-16846 is a critical command injection vulnerability in Debian Debian Linux, published on 6 Nov 2020. An attacker can exploit it over the internet without logging in, with no action from the victim.

Official description

An issue was discovered in SaltStack Salt through 3002. Sending crafted web requests to the Salt API, with the SSH client enabled, can result in shell injection.

Weakness: CWE-78

Which versions are affected by CVE-2020-16846?

19 open source packages ship an affected version, including salt. It affects 4 products.

PackageAffectedFixed in
salt PyPIAll versions2015.8.10, 2015.8.13, 2016.3.4, 2016.3.6, 2016.3.8, 2016.11.3, 2016.11.6, 2016.11.10, 2017.7.4, 2017.7.8, 2018.3.5, 2019.2.5, 3000.3
salt PyPIAll versions2015.8.13
salt PyPIAll versions2015.8.13
salt PyPIFrom 2016.11.02016.11.10
salt PyPIFrom 2016.11.02016.11.10
salt PyPIFrom 2016.3.02016.3.8
13 more packages
salt PyPIFrom 2016.3.02016.3.8
salt PyPIFrom 2017.5.02017.7.8
salt PyPIFrom 2017.5.02017.7.8
salt PyPIFrom 2018.2.02018.3.5
salt PyPIFrom 2018.2.02018.3.5
salt PyPIFrom 2019.2.02019.2.6
salt PyPIFrom 2019.2.02019.2.6
salt PyPIFrom 3000.03000.4
salt PyPIFrom 3000.03000.4
salt PyPIFrom 30013001.2
salt PyPIFrom 30013001.2
salt PyPIFrom 30023002.1
salt PyPIFrom 30023002.1

Products include Debian Debian Linux, Fedoraproject Fedora, Opensuse Leap, Saltstack Salt.

How do I fix CVE-2020-16846?

Upgrade salt to a fixed version for your release line: 2015.8.10, 2015.8.13, 2016.3.4 or 2016.3.6. US federal agencies must fix it by 3 May 2022.

Upgrade, and pass arguments to programs as a list instead of through a shell. More about Command injection.

Is CVE-2020-16846 being exploited?

Yes. Attackers have exploited CVE-2020-16846 in the wild since at least 3 Nov 2021.

Public exploit code: 1 Metasploit module, 1 Nuclei template and 2 proofs of concept on GitHub.

All Debian Debian Linux vulnerabilities

Sources

Also known as GHSA-qr38-h96j-2j3w, PYSEC-2020-104, UBUNTU-CVE-2020-16846, USN-7181-1.

Is CVE-2020-16846 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free