Advisories for Pypi/Salt package

2024

Path traversal in saltstack

A specially crafted url can be created which leads to a directory traversal in the salt file server. A malicious user can read an arbitrary file from a Salt master’s filesystem.

2023

Salt vulnerable to denial of service

Salt masters prior to 3005.2 or 3006.2 contain a DoS in minion return. After receiving several bad packets on the request server equal to the number of worker threads, the master will become unresponsive to return requests until restarted.

Salt can cause Git Providers to get wrong data

Git Providers can read from the wrong environment because they get the same cache directory base name in Salt masters prior to 3005.2 or 3006.2. Anything that uses Git Providers with different environments can get garbage data or the wrong data, which can lead to wrongful data disclosure, wrongful executions, data corruption and/or crash.

2022

Salt's PAM auth fails to reject locked accounts

An issue was discovered in SaltStack Salt in versions before 3002.9, 3003.5, 3004.2. PAM auth fails to reject locked accounts, which allows a previously authorized user whose account is locked still run Salt commands when their account is locked. This affects both local shell accounts with an active session and salt-api users that authenticate via PAM eauth.

Incorrect Permission Assignment for Critical Resource

An issue was discovered in SaltStack Salt in versions before 3002.8, 3003.4, 3004.1. When configured as a Master-of-Masters, with a publisher_acl, if a user configured in the publisher_acl targets any minion connected to the Syndic, the Salt Master incorrectly interpreted no valid targets as valid, allowing configured users to target any of the minions connected to the syndic with their configured commands. This requires a syndic master combined with publisher_acl …

Improper Authentication

An issue was discovered in SaltStack Salt in versions before 3002.8, 3003.4, 3004.1. A minion authentication denial of service can cause a MiTM attacker to force a minion process to stop by impersonating a master.

Authentication Bypass by Capture-replay

An issue was discovered in SaltStack Salt in versions before 3002.8, 3003.4, 3004.1. Job publishes and file server replies are susceptible to replay attacks, which can result in an attacker replaying job publishes causing minions to run old jobs. File server replies can also be re-played. A sufficient craft attacker could gain root access on minion under certain scenarios.

2021

Improper Authentication

An issue was discovered in SaltStack Salt The salt minion installer will accept and use a minion config file at C:\salt\conf if that file is in place before the installer is run. This allows for a malicious actor to subvert the proper behaviour of the given minion software.

Command Injection

In SaltStack Salt, a command injection vulnerability exists in the snapper module that allows for local privilege escalation on a minion. The attack requires that a file is created with a pathname that is backed up by snapper, and that the master calls the snapper.diff function (which executes popen unsafely).

Path Traversal

An issue was discovered in SaltStack Salt's salt.wheel.pillar_roots.write method which is vulnerable to directory traversal.

Injection Vulnerability

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

Improper Authentication

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

Command Injection

An issue was discovered in SaltStack Salt. 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 a files on the minion in a non-ignored directory.

Command Injection

An issue was discovered in SaltStack Salt. By 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.

Code Injection

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

2020

OS Command Injection

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

Improper Input Validation

The salt-master process ClearFuncs class does not properly validate method calls. This allows a remote user to access some methods without authentication. These methods can be used to retrieve user tokens from the salt master and/or run arbitrary commands on salt minions.

Improper Input Validation

The salt-master process ClearFuncs class allows access to some methods that improperly sanitize paths. These methods allow arbitrary directory access to authenticated users.

Injection Vulnerability

In SaltStack Salt, the salt-api NET API with the ssh client enabled is vulnerable to command injection. This allows an unauthenticated attacker with network access to the API endpoint to execute arbitrary code on the salt-api host.

2019

SQL Injection

SaltStack Salt is affected by SQL Injection. Through a specially crafted password string, an attacker could escalate privileges on MySQL server deployed by cloud provider leading to RCE.

2018

Path Traversal

Directory Traversal vulnerability in salt-api in SaltStack Salt before allows remote attackers to determine which files exist on the server.

2017

Path Traversal

A Directory traversal vulnerability in minion id validation in SaltStack Salt allows remote minions with incorrect credentials to authenticate to a master via a crafted minion ID.

Improper Authentication

When using the local_batch client from salt-api in SaltStack Salt, external authentication is not respected, enabling all authentication to be bypassed.

Path Traversal

A directory traversal vulnerability in minion id validation in SaltStack Salt allows remote minions with incorrect credentials to authenticate to a master via a crafted minion ID.

Information Exposure

The salt-ssh minion code in SaltStack Salt copied over configuration from the Salt Master without adjusting permissions, which might leak credentials to local attackers on configured minions (clients).

2016

Improper Access Control

Salt does not properly handle clear messages on the minion, which allows man-in-the-middle attackers to execute arbitrary code by inserting packets into the minion-master data stream.

2014

Insecure Temporary File Creation

Salt contains a flaw in seed.py, salt-ssh, and salt-cloud that is due to the program creating temporary files insecurely. This may allow a local attacker to have an unspecified impact.