Security Resilience

CVE-2020-16846

RCE in Saltstack Salt ≤ 2015.8.10

CISA KEVActive ExploitationEUVD ExploitedPublic PoCRCECommand Injection
Published
06 November 2020
Modified
07 November 2025
KEV Added
03 November 2021
Patch / advisory
CVSS Score v3.1 9.8
Click a component to see what it means
Raw vectorCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
EPSS Score 0.99 99.9th percentile
Risk Priority 97 floored blend · peak EPSS

CVSS and EPSS are reproduced from their sources (NVD, FIRST EPSS). Risk Priority is our own derived reading, not an NVD score.

Summary

CVE-2020-16846 is a critical-severity OS Command Injection (CWE-78) vulnerability in Saltstack Salt. Its CVSS base score is 9.8 (Critical).

Operationally, exploitation aligns with the MITRE ATT&CK technique NTDS (T1003.003); ranked in the top 0.1% of CVEs by exploit likelihood; CISA has added it to the Known Exploited Vulnerabilities catalog; a public proof-of-concept is referenced.

Deeper analysis AI-assisted summary

Synthesised by an AI model from the NVD description and linked references — a reading aid, not an authoritative source.

The vulnerability CVE-2020-16846 is a shell injection flaw, tracked under CWE-78, that affects SaltStack Salt through version 3002. It resides in the Salt API component when the SSH client is enabled and carries a CVSS 3.1 base score of 9.8 reflecting network-accessible, unauthenticated attack conditions.

An unauthenticated remote attacker can exploit the issue by submitting crafted web requests to the Salt API, resulting in arbitrary command execution that yields full control over confidentiality, integrity, and availability of the affected system.

Public advisories reference patches and updated packages distributed via the SaltStack GitHub releases along with downstream fixes from openSUSE and Debian LTS. No information on observed in-the-wild exploitation is supplied in the source data.

OWASP Top 10 for Web (2025)

EU & UK References

Vulnerability Data

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.

CWE(s)
KEV Date Added
03 November 2021

Related Threats

MITRE ATT&CK Enterprise Techniques

T1003.003 NTDS Credential Access
Adversaries may attempt to access or create a copy of the Active Directory domain database in order to steal credential information, as well as obtain other information about domain members such as devices, users, and access rights.
T1007 System Service Discovery Discovery
Adversaries may try to gather information about registered local system services.
T1010 Application Window Discovery Discovery
Adversaries may attempt to get a listing of open application windows.
T1021.004 SSH Lateral Movement
Adversaries may use [Valid Accounts](https://attack.
T1021.008 Direct Cloud VM Connections Lateral Movement
Adversaries may leverage [Valid Accounts](https://attack.
T1027.001 Binary Padding Stealth
Adversaries may use binary padding to add junk data and change the on-disk representation of malware.
Derived from this CVE’s CWE(s) via the direct CWE→ATT&CK cross-walk.

CVEs Like This One

CVE-2020-7247Same product: Debian Debian Linuxboth on KEV
CVE-2020-12641Same product: Opensuse Leapboth on KEV
CVE-2019-10149Same product: Debian Debian Linuxboth on KEV
CVE-2024-4577Same product: Fedoraproject Fedoraboth on KEV
CVE-2023-24805Same product: Debian Debian Linux
CVE-2020-8813Same product: Debian Debian Linux
CVE-2014-7169Same product: Debian Debian Linuxboth on KEV
CVE-2014-6271Same product: Debian Debian Linuxboth on KEV
CVE-2025-54948Shared CWE-78both on KEV
CVE-2019-15107Shared CWE-78both on KEV

Affected Assets

saltstack
salt
3001, 3002 · ≤ 2015.8.10 · 2015.8.11 — 2015.8.13 · 2016.3.0 — 2016.3.4
debian
debian linux
10.0, 9.0
fedoraproject
fedora
31
opensuse
leap
15.1

Mitigating Controls

Control response

Prevent
Stop it (NIST 800-53)

—

Detect
Catch it (NIST detect / respond)

—

Harden
Shrink the surface (DISA STIG)

—

Validate
Prove the fix (OWASP ASVS)
  • V1.2.5
  • V1.2.8

Likely Mitigating Controls AI

Per-CVE control mapping for this CVE has not run yet; the list below is derived from the weakness types (CWEs) cited in the NVD entry.

addresses: CWE-78

Platform-independent apps typically execute inside a managed runtime or sandbox that restricts direct OS command execution, reducing the ability to exploit OS command injection.

addresses: CWE-78

Validates inputs to block special elements that would alter OS command execution.

Mitigating Controls (NIST CSF 2.0) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→CSF cross-walk (authority under review) — links open the control.

PR.PS-06 mostly match
blocks

PR.PS-06's SDLC practices directly require secure coding and input handling that blocks command-injection defects, yet the single broad outcome leaves many specific neutralization vectors and verification gaps unaddressed.

PR.PS-02 partial match
blocks

Routine patching/maintenance can remediate known command-injection CVEs in dependencies (partial forward) but does nothing to stop developers from introducing improper neutralization in custom code (none reverse).

Mitigating Controls (ISO/IEC 27001:2022 Annex A) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→ISO cross-walk (authority under review) — links open the control.

removes
removes
removes
removes
removes

References