Skip to content
OpenAdvisories
Critical · 9.8 Known exploited Scanner template Public exploit CVE-2020-16846 EUVD-2020-0173GHSA-qr38-h96j-2j3wPYSEC-2020-104

SaltStack Salt Command Injection in netapi ssh client

Published Nov 6, 2020 · Updated Oct 21, 2025 · Assigned by mitre

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.

Fixed in Linux distributions

Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.

ReleasePackageFixed inAdvisory
Debian 10 salt 2018.3.4+dfsg1-6+deb10u2 DSA-4837-1
Debian 9 salt 2016.11.2+ds-1+deb9u6 DLA-2480-1
ReleasePackageFixed inAdvisory
Ubuntu Pro 18.04 LTS salt 2017.7.4+dfsg1-1ubuntu18.04.2+esm1 USN-6948-1
Ubuntu Pro 16.04 LTS salt 2015.8.8+ds-1ubuntu0.1+esm2 USN-6948-1
Ubuntu Pro 14.04 LTS salt 0.17.5+ds-1ubuntu0.1~esm4 USN-7181-1
ReleasePackageFixed inAdvisory
SLES 15 SP2 salt 3000-4.20.1 SUSE-SU-2020:3155-1
SLES 15 SP1 salt 3000-6.51.1 SUSE-SU-2020:3243-1
SLES 15 salt 3000-5.91.1 SUSE-SU-2020:3244-1
SLES 12 salt 3000-46.114.1 SUSE-SU-2020:3245-1
SLES 11 SP4 cobbler 2.2.2-0.68.12.1 SUSE-SU-2020:14538-1
SLES 11 SP4 mgr-daemon 4.1.3-5.20.1 SUSE-SU-2020:14538-1
SLES 11 SP4 salt 2016.11.10-43.63.1 SUSE-SU-2020:14538-1
SLES 11 SP4 spacecmd 4.1.8-18.72.1 SUSE-SU-2020:14538-1
SLES 11 SP4 spacewalk-client-tools 4.1.7-27.38.1 SUSE-SU-2020:14538-1
Show 12 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
SLES 11 SP3 cobbler 2.2.2-0.68.12.1 SUSE-SU-2020:14538-1
SLES 11 SP3 mgr-daemon 4.1.3-5.20.1 SUSE-SU-2020:14538-1
SLES 11 SP3 salt 2016.11.10-43.63.1 SUSE-SU-2020:14538-1
SLES 11 SP3 spacecmd 4.1.8-18.72.1 SUSE-SU-2020:14538-1
SLES 11 SP3 spacewalk-client-tools 4.1.7-27.38.1 SUSE-SU-2020:14538-1
SLES 2 salt 3000-4.20.1 SUSE-SU-2020:3243-1, SUSE-SU-2020:3155-1
SLES for SAP 15 salt 3000-5.91.1 SUSE-SU-2020:3244-1
SLE HPC 15 salt 3000-5.91.1 SUSE-SU-2020:3244-1
SUSE Manager Server Module 4.1 bind-formula 0.1.1603299886.60e4bcf-3.3.2 SUSE-SU-2020:3235-1
SUSE Manager Server Module 4.1 grafana-formula 0.3.0-3.3.2 SUSE-SU-2020:3235-1
SUSE Manager Server Module 4.1 prometheus-exporters-formula 0.8.0-3.16.2 SUSE-SU-2020:3235-1
SUSE Manager Server Module 4.1 prometheus-formula 0.3.0-3.3.1 SUSE-SU-2020:3235-1
SUSE Manager Server Module 4.1 pxe-formula 0.1.1602490840.4f32148-3.3.2 SUSE-SU-2020:3235-1
SUSE Manager Server Module 4.1 py26-compat-salt 2016.11.10-6.3.3 SUSE-SU-2020:3235-1
SUSE Manager Server Module 4.1 python-susemanager-retail 1.0.1602150122.f08af0a-3.3.2 SUSE-SU-2020:3235-1
SUSE Manager Server Module 4.1 salt-netapi-client 0.18.0-15.7.5 SUSE-SU-2020:3235-1
SUSE Manager Server Module 4.1 saltboot-formula +1 0.1.1602150122.f08af0a-3.6.2 SUSE-SU-2020:3235-1
SUSE Manager Server Module 4.1 spacecmd 4.1.8-4.9.2 SUSE-SU-2020:3235-1
SUSE Manager Server Module 4.1 spacewalk-admin 4.1.7-3.6.3 SUSE-SU-2020:3235-1
SUSE Manager Server Module 4.1 spacewalk-backend 4.1.16-4.11.5 SUSE-SU-2020:3235-1
SUSE Manager Server Module 4.1 spacewalk-branding 4.1.11-3.9.6 SUSE-SU-2020:3235-1
SUSE Manager Server Module 4.1 spacewalk-client-tools 4.1.7-4.6.4 SUSE-SU-2020:3235-1
SUSE Manager Server Module 4.1 spacewalk-java 4.1.22-3.16.4 SUSE-SU-2020:3235-1
SUSE Manager Server Module 4.1 spacewalk-search 4.1.3-3.3.7 SUSE-SU-2020:3235-1
SUSE Manager Server Module 4.1 spacewalk-web 4.1.19-3.9.5 SUSE-SU-2020:3235-1
SUSE Manager Server Module 4.1 susemanager 4.1.21-3.11.6 SUSE-SU-2020:3235-1
SUSE Manager Server Module 4.1 susemanager-build-keys 15.2.2-3.6.3 SUSE-SU-2020:3235-1
SUSE Manager Server Module 4.1 susemanager-docs_en +1 4.1-11.17.1 SUSE-SU-2020:3235-1
SUSE Manager Server Module 4.1 susemanager-schema 4.1.15-3.11.2 SUSE-SU-2020:3235-1
SUSE Manager Server Module 4.1 susemanager-sls 4.1.17-3.13.6 SUSE-SU-2020:3235-1
SUSE Manager Server Module 4.0 py26-compat-salt 2016.11.10-10.17.1 SUSE-SU-2020:3250-1
SUSE Manager Server Module 4.0 spacewalk-java 4.0.39-3.45.1 SUSE-SU-2020:3250-1
SUSE Manager Server 3.2 py26-compat-salt 2016.11.10-6.41.1 SUSE-SU-2020:3251-1
SUSE Manager Server 3.2 salt 3000-46.114.1 SUSE-SU-2020:3245-1
SUSE Manager Server 3.2 spacewalk-java 2.8.78.31-3.56.1 SUSE-SU-2020:3251-1
SUSE Manager Proxy Module 4.1 mgr-daemon 4.1.3-2.6.3 SUSE-SU-2020:3235-1
SUSE Manager Proxy Module 4.1 spacecmd 4.1.8-4.9.2 SUSE-SU-2020:3235-1
SUSE Manager Proxy Module 4.1 spacewalk-backend 4.1.16-4.11.5 SUSE-SU-2020:3235-1
SUSE Manager Proxy Module 4.1 spacewalk-client-tools 4.1.7-4.6.4 SUSE-SU-2020:3235-1
SUSE Manager Proxy Module 4.1 spacewalk-web 4.1.19-3.9.5 SUSE-SU-2020:3235-1
SUSE Manager Proxy Module 4.1 susemanager-build-keys 15.2.2-3.6.3 SUSE-SU-2020:3235-1
SUSE Manager Proxy 3.2 salt 3000-46.114.1 SUSE-SU-2020:3245-1
SUSE Manager Client Tools 12 salt 3000-46.114.1 SUSE-SU-2020:3245-1
SUSE Linux Enterprise Point of Sale 12 SP2 salt 3000-46.114.1 SUSE-SU-2020:3245-1
SUSE Enterprise Storage 5 salt 2016.11.4-48.13.1 SUSE-SU-2020:3171-1
ReleasePackageFixed inAdvisory
openSUSE Leap 15.2 salt 3000-lp152.3.15.1 openSUSE-SU-2020:1833-1
openSUSE Leap 15.1 salt 3000-lp151.5.30.1 openSUSE-SU-2020:1868-1
ReleasePackageFixed inAdvisory
Alpine v3.24 salt 3002-r1 —
Alpine v3.23 salt 3002-r1 —
Alpine v3.22 salt 3002-r1 —
Alpine v3.21 salt 3002-r1 —
Alpine v3.20 salt 3002-r1 —
Show 7 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
Alpine v3.19 salt 3002-r1 —
Alpine v3.18 salt 3002-r1 —
Alpine v3.17 salt 3002-r1 —
Alpine v3.16 salt 3002-r1 —
Alpine v3.15 salt 3002-r1 —
Alpine v3.14 salt 3002-r1 —
Alpine v3.13 salt 3002-r1 —

Public exploits

Exploit or proof-of-concept code for this vulnerability is publicly available, which lowers the bar for attackers. Treat it as a reason to patch sooner.

Third-party code, not reviewed by us. Public PoCs are sometimes fake or contain malware. Read the code first and run it only in an isolated lab, against systems you are authorised to test.

Metasploit 1 module

GitHub 2 repositories

Sources: PoC-in-GitHub, Metasploit Framework, Exploit-DB — updated daily. Only links are listed; no exploit code is hosted here.

Automated scanner template

A ready-made Nuclei template detects this vulnerability automatically. Vulnerabilities with public scanner templates are typically probed across the internet soon after the template appears — exposed systems should be patched first.

Source: projectdiscovery/nuclei-templates (MIT) — updated daily. Only links are listed.

Affected packages

EcosystemPackageAffectedFixedRecord
PyPI salt < 2015.8.13 2015.8.13 GHSA-qr38-h96j-2j3w
PyPI salt >= 2016.3.0, < 2016.3.8 2016.3.8 GHSA-qr38-h96j-2j3w
PyPI salt >= 2016.11.0, < 2016.11.10 2016.11.10 GHSA-qr38-h96j-2j3w
PyPI salt >= 2017.5.0, < 2017.7.8 2017.7.8 GHSA-qr38-h96j-2j3w
PyPI salt >= 2018.2.0, < 2018.3.5 2018.3.5 GHSA-qr38-h96j-2j3w
PyPI salt >= 2019.2.0, < 2019.2.6 2019.2.6 GHSA-qr38-h96j-2j3w
PyPI salt >= 3000.0, < 3000.4 3000.4 GHSA-qr38-h96j-2j3w
PyPI salt >= 3001, < 3001.2 3001.2 GHSA-qr38-h96j-2j3w
PyPI salt >= 3002, < 3002.1 3002.1 GHSA-qr38-h96j-2j3w
PyPI salt < 2015.8.10 · >= 2015.8.11, < 2015.8.13 · >= 2016.3.0, < 2016.3.4 · >= 2016.3.5, < 2016.3.6 · >= 2016.3.7, < 2016.3.8 · >= 2016.11.0, < 2016.11.3 · >= 2016.11.4, < 2016.11.6 · >= 2016.11.7, < 2016.11.10 · >= 2017.7.0, < 2017.7.4 · >= 2017.7.5, < 2017.7.8 · >= 2018.3.0rc1, < 2018.3.5 · >= 2019.2.0, … 2015.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 PYSEC-2020-104

Advisories 16

References