CVE-2021-43837

Published: Dic 16, 2021 Last Modified: Nov 21, 2024 EU-VD ID: EUVD-2021-0458 Aliases: GHSA-q34h-97wf-8r8j, PYSEC-2021-853
ExploitDB:
Other exploit source:
Google Dorks:
HIGH 8,4
Attack Vector: adjacent_network
Attack Complexity: low
Privileges Required: high
User Interaction: none
Scope: changed
Confidentiality: high
Integrity: high
Availability: high
HIGH 9,0
Access Vector: network
Access Complexity: low
Authentication: single
Confidentiality: complete
Integrity: complete
Availability: complete

Description

AI Translation Available

vault-cli is a configurable command-line interface tool (and python library) to interact with Hashicorp Vault. In versions before 3.0.0 vault-cli features the ability for rendering templated values. When a secret starts with the prefix `!template!`, vault-cli interprets the rest of the contents of the secret as a Jinja2 template. Jinja2 is a powerful templating engine and is not designed to safely render arbitrary templates. An attacker controlling a jinja2 template rendered on a machine can trigger arbitrary code, making this a Remote Code Execution (RCE) risk. If the content of the vault can be completely trusted, then this is not a problem. Otherwise, if your threat model includes cases where an attacker can manipulate a secret value read from the vault using vault-cli, then this vulnerability may impact you. In 3.0.0, the code related to interpreting vault templated secrets has been removed entirely. Users are advised to upgrade as soon as possible. For users unable to upgrade a workaround does exist. Using the environment variable `VAULT_CLI_RENDER=false` or the flag `--no-render` (placed between `vault-cli` and the subcommand, e.g. `vault-cli --no-render get-all`) or adding `render: false` to the vault-cli configuration yaml file disables rendering and removes the vulnerability. Using the python library, you can use: `vault_cli.get_client(render=False)` when creating your client to get a client that will not render templated secrets and thus operates securely.

EPSS (Exploit Prediction Scoring System)

Trend Analysis

EPSS (Exploit Prediction Scoring System)

Prevede la probabilità di sfruttamento basata su intelligence sulle minacce e sulle caratteristiche della vulnerabilità.

EPSS Score
0,0955
Percentile
0,9th
Updated

EPSS Score Trend (Last 90 Days)

74

Improper Neutralization of Special Elements in Output Used by a Downstream Component ('Injection')

Incomplete
Common Consequences
Security Scopes Affected:
Confidentiality Access Control Other Integrity Non-Repudiation
Potential Impacts:
Read Application Data Bypass Protection Mechanism Alter Execution Logic Other Hide Activities
Applicable Platforms
All platforms may be affected
View CWE Details
94

Improper Control of Generation of Code ('Code Injection')

Draft
Common Consequences
Security Scopes Affected:
Access Control Integrity Confidentiality Availability Non-Repudiation
Potential Impacts:
Bypass Protection Mechanism Gain Privileges Or Assume Identity Execute Unauthorized Code Or Commands Hide Activities
Applicable Platforms
Languages: Interpreted
Technologies: AI/ML
View CWE Details
Application

Vault-Cli by Vault-Cli Project

Version Range Affected
From 0.7.0 (inclusive)
To 3.0.0 (exclusive)
cpe:2.3:a:vault-cli_project:vault-cli:*:*:*:*:*:python:*:*
Common Platform Enumeration - Standardized vulnerability identification
https://github.com/peopledoc/vault-cli/commit/3ba3955887fd6b7d4d646c8b260f21ceb…
https://github.com/peopledoc/vault-cli/security/advisories/GHSA-q34h-97wf-8r8j
https://podalirius.net/en/publications/grehack-2021-optimizing-ssti-payloads-fo…
https://github.com/peopledoc/vault-cli/commit/3ba3955887fd6b7d4d646c8b260f21ceb…
https://github.com/peopledoc/vault-cli/security/advisories/GHSA-q34h-97wf-8r8j
https://podalirius.net/en/publications/grehack-2021-optimizing-ssti-payloads-fo…