Lucene search

K
nucleiProjectDiscoveryNUCLEI:CVE-2020-16846
HistoryNov 18, 2020 - 5:21 p.m.

SaltStack <=3002 - Shell Injection

2020-11-1817:21:07
ProjectDiscovery
github.com
7

7.5 High

CVSS2

Attack Vector

NETWORK

Attack Complexity

LOW

Authentication

NONE

Confidentiality Impact

PARTIAL

Integrity Impact

PARTIAL

Availability Impact

PARTIAL

AV:N/AC:L/Au:N/C:P/I:P/A:P

9.8 High

CVSS3

Attack Vector

NETWORK

Attack Complexity

LOW

Privileges Required

NONE

User Interaction

NONE

Scope

UNCHANGED

Confidentiality Impact

HIGH

Integrity Impact

HIGH

Availability Impact

HIGH

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

9.4 High

AI Score

Confidence

High

0.973 High

EPSS

Percentile

99.9%

SaltStack Salt through 3002 allows an unauthenticated user with network access to the Salt API to use shell injections to run code on the Salt-API using the SSH client.
id: CVE-2020-16846

info:
  name: SaltStack <=3002 - Shell Injection
  author: dwisiswant0
  severity: critical
  description: |
    SaltStack Salt through 3002 allows an unauthenticated user with network access to the Salt API to use shell injections to run code on the Salt-API using the SSH client.
  remediation: |
    Upgrade to a patched version of SaltStack (>=3003) to mitigate this vulnerability.
  reference:
    - https://saltproject.io/on-november-3-2020-saltstack-publicly-disclosed-three-new-cves/
    - https://mp.weixin.qq.com/s/R8qw_lWizGyeJS0jOcYXag
    - https://github.com/vulhub/vulhub/tree/master/saltstack/CVE-2020-16846
    - https://nvd.nist.gov/vuln/detail/CVE-2020-16846
    - http://lists.opensuse.org/opensuse-security-announce/2020-11/msg00029.html
  classification:
    cvss-metrics: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
    cvss-score: 9.8
    cve-id: CVE-2020-16846
    cwe-id: CWE-78
    epss-score: 0.97467
    epss-percentile: 0.99962
    cpe: cpe:2.3:a:saltstack:salt:*:*:*:*:*:*:*:*
  metadata:
    max-request: 1
    vendor: saltstack
    product: salt
  tags: cve2020,cve,vulhub,saltstack,kev
variables:
  priv: "{{to_lower(rand_text_alpha(5))}}"
  roaster: "{{to_lower(rand_text_alpha(6))}}"

http:
  - method: POST
    path:
      - "{{BaseURL}}/run"

    body: "token=1337&client=ssh&tgt=*&fun=a&roster={{roaster}}&ssh_priv={{priv}}"

    headers:
      Content-Type: application/x-www-form-urlencoded # CherryPy will abort w/o define this header

    matchers-condition: and
    matchers:
      - type: dsl
        dsl:
          - regex("CherryPy\/([0-9.]+)", header) || regex("CherryPy ([0-9.]+)", body)

      - type: word
        part: body
        words:
          - "An unexpected error occurred"

      - type: word
        part: header
        words:
          - "application/json"

      - type: status
        status:
          - 500
# digest: 4a0a00473045022100bb3a2ef2a09cde2b0e23692833159a34d6152fbc8b95d31f5e32b51fd28898510220178b71d42f5e15eb57599c8f076105a041de943662f0d07909286c98258f32a9:922c64590222798bb761d5b6d8e72950

7.5 High

CVSS2

Attack Vector

NETWORK

Attack Complexity

LOW

Authentication

NONE

Confidentiality Impact

PARTIAL

Integrity Impact

PARTIAL

Availability Impact

PARTIAL

AV:N/AC:L/Au:N/C:P/I:P/A:P

9.8 High

CVSS3

Attack Vector

NETWORK

Attack Complexity

LOW

Privileges Required

NONE

User Interaction

NONE

Scope

UNCHANGED

Confidentiality Impact

HIGH

Integrity Impact

HIGH

Availability Impact

HIGH

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

9.4 High

AI Score

Confidence

High

0.973 High

EPSS

Percentile

99.9%