Skip to main content

openssl-encrypt EUVDEUVD-2026-67065

| CVE-2026-81715 HIGH
Insertion of Sensitive Information into Log File (CWE-532)
2026-08-27 VulnCheck GHSA-h5x2-vmqf-9934
8.7
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Enable --debug in 'keyserver set-token' invocation
  2. Delivery
    Token printed to stderr in argv dump
  3. Exploit
    Attacker reads CI/CD or aggregated logs
  4. Execution
    Extract cleartext bearer token
  5. Persist
    Authenticate to keyserver
  6. Impact
    Access protected keyserver resources

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A09:2025 - Security Logging & Alerting Failures
ASVS 5.0
V16 - Security Logging and Error Handling Log data sanitization
Exploitation Conditions

Exploitation requires both of the following: (1) the --debug flag must be explicitly passed when invoking 'keyserver set-token <token>' - the token is not exposed in normal (non-debug) operation, and the --unsafe-show-secrets guard does not govern this path; (2) an attacker must have read access to the stderr output, which could be a local terminal session, shared shell history, a CI/CD build log (e.g., GitHub Actions, Jenkins), or a centralized log aggregation system. Deployments that never use 'keyserver set-token' or never enable --debug are not affected. Limiting factors: the vulnerability does not allow remote unauthenticated access to the token without prior log access; it produces no network-reachable exposure on its own.

Impact

The provided CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:N, score 8.7) represents a theoretical ceiling that requires scrutiny. Practically, exploitation depends on two preconditions that substantially reduce opportunistic risk: a legitimate operator must invoke 'keyserver set-token' with --debug active, and an attacker must have read access to the resulting stderr output (CI/CD pipeline logs, centralized log aggregation, shared terminal sessions, or shell history files). The PR:N and UI:N assignments in the provided vector appear to reflect worst-case assumptions about log accessibility rather than direct network exploitability. In environments where debug output flows into shared CI platforms (GitHub Actions logs, Jenkins console, etc.), the effective attack surface becomes broader and the risk materially higher. No EPSS data was provided; no CISA KEV listing and no POC availability are confirmed. Real-world priority should be elevated for teams running this package in CI/CD pipelines where build logs are accessible to multiple users or external contributors.

Exploit ScenarioDerived

A developer or automated CI/CD job invokes 'keyserver set-token <BEARER_TOKEN> --debug' during a pipeline run; the token appears in cleartext in the build log output visible to all contributors with repository access. An attacker - an insider, a malicious contributor, or someone who gains read access to the CI platform - retrieves the token from the logs and uses it to authenticate to the keyserver, accessing or exfiltrating protected resources without further exploitation steps.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Aug 27, 2026

Credential exposure in the openssl-encrypt pip package (versions ≤ 1.4.8) leaks keyserver bearer tokens in cleartext to stderr when the --debug flag is active. The root cause is a gap in sanitize_argv_for_debug(), which fails to redact the token supplied as a positional argument to the 'keyserver set-token' subcommand, leaving it visible in terminal output, CI/CD build logs, and shell history. Fixed in version 1.4.9; no public exploit identified at time of analysis, but credential exposure is immediately actionable for any attacker with access to affected log sources.

RemediationAI

The primary fix is to upgrade openssl-encrypt to version 1.4.9 or later via pip ('pip install --upgrade openssl-encrypt'). This version patches sanitize_argv_for_debug() to redact the positional token argument. If immediate upgrade is not possible, stop passing the --debug flag to any invocation of 'keyserver set-token' as an immediate workaround - the token is only exposed when --debug is active. Additionally, rotate any keyserver bearer tokens that may have been passed to affected versions under --debug, since those credentials may already persist in logs, CI/CD artifacts, or shell history. Audit log aggregation systems and CI/CD pipeline output for any historical exposure. Restrict access to build logs and stderr outputs that may have captured prior debug runs. See the vendor advisory at https://github.com/jahlives/openssl_encrypt/security/advisories/GHSA-jqqp-pf9j-889j.

Affected VersionsENISA

openssl_encrypt 0 <1.4.9

Affected Packages

pypi openssl-encrypt fix: 1.4.9

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in pypi

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

The openssl-encrypt package (CPE: cpe:2.3:a:jahlives:openssl_encrypt:*:*:*:*:*:*:*:*, PyPI/pip) is a Python wrapper providing CLI access to OpenSSL operations including keyserver token management. Its --debug mode serializes the full argv array to stderr for diagnostic purposes. The sanitize_argv_for_debug() function is responsible for scrubbing sensitive values from this dump, but it does not cover the positional token argument accepted by the 'keyserver set-token' subcommand - only named/flag-style arguments appear to be handled. CWE-532 (Insertion of Sensitive Information into Log File) captures this root cause precisely: a credential flowing through an argument vector reaches an insufficiently filtered logging path, bypassing the --unsafe-show-secrets guard entirely.

Know when OpenSSL gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (VulnCheck) PRIMARY 8.7 HIGH
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N
vuln.today AI 5.7 MEDIUM

Log access requires at minimum low-privilege read rights (PR:L), and a legitimate user must trigger the debug run (UI:R); only confidentiality is impacted.

3.1 AV:N/AC:L/PR:L/UI:R/S:U/C:H/I:N/A:N
4.0 AV:N/AC:L/AT:N/PR:L/UI:P/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
None
User Interaction
None
Vulnerable system: Confidentiality
High
Vulnerable system: Integrity
None
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

2
Patch available
Aug 27, 2026 - 18:02 EUVD
CVE Published
Aug 27, 2026 - 14:51 cve.org
HIGH 8.7

DescriptionCVE.org

openssl_encrypt (pip package openssl-encrypt) versions <= 1.4.8 do not redact the keyserver bearer token passed as the positional argument to 'keyserver set-token' in the --debug argv dump, because sanitize_argv_for_debug fails to sanitize it. As a result the token is printed in cleartext to stderr under --debug (even without --unsafe-show-secrets), persisting the credential in logs and terminal history. Fixed in 1.4.9.

Executive ViewAI

Why It Matters

Keyserver credentials in the openssl-encrypt package can be exposed in plain text when developers enable debug logging, creating immediate risk for organizations that have inadvertently logged these authentication tokens in CI/CD systems or terminal histories. This affects all versions 1.4.8 and earlier of this widely-used cryptographic utility. Any attacker with access to build logs or shell histories can immediately extract and abuse exposed credentials to compromise key management infrastructure.

Business Impact: High
Compensating Controls

Apply vendor patch: upgrade to openssl-encrypt version 1.4.9 or later. Until patched, disable --debug flag in all production and CI/CD environments and conduct immediate audit of logs for exposed credentials.

Threat Intelligence Overview

EPSS Score
0.2%
Top 92% exploitable
Prevalence
Rare
niche PyPI package by individual developer, minimal enterprise footprint
Data Quality
6 sources
Confidence: High

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
Yes
Human Impact
High
Technical Impact
Partial

Priority Score

44
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +44
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

CVE-2014-0160 HIGH POC
7.5 Apr 07

The (1) TLS and (2) DTLS implementations in OpenSSL 1.0.1 before 1.0.1g do not properly handle Heartbeat Extension packe

CVE-2021-3711 CRITICAL POC
9.8 Aug 24

In order to decrypt SM2 encrypted data an application is expected to call the API function EVP_PKEY_decrypt(). Rated cri

CVE-2014-0195 MEDIUM POC
6.8 Jun 05

The dtls1_reassemble_fragment function in d1_both.c in OpenSSL before 0.9.8za, 1.0.0 before 1.0.0m, and 1.0.1 before 1.0

CVE-2014-0224 HIGH POC
7.4 Jun 05

OpenSSL before 0.9.8za, 1.0.0 before 1.0.0m, and 1.0.1 before 1.0.1h does not properly restrict processing of ChangeCiph

CVE-2016-0800 MEDIUM POC
5.9 Mar 01

The SSLv2 protocol, as used in OpenSSL before 1.0.1s and 1.0.2 before 1.0.2g and other products, requires a server to se

CVE-2015-0204 MEDIUM POC
4.3 Jan 09

The ssl3_get_key_exchange function in s3_clnt.c in OpenSSL before 0.9.8zd, 1.0.0 before 1.0.0p, and 1.0.1 before 1.0.1k

CVE-2022-2068 HIGH
7.3 Jun 21

In addition to the c_rehash shell command injection identified in CVE-2022-1292, further circumstances where the c_rehas

CVE-2015-4000 LOW POC
3.7 May 21

The TLS protocol 1.2 and earlier, when a DHE_EXPORT ciphersuite is enabled on a server but not on a client, does not pro

CVE-2014-3566 LOW POC
3.4 Oct 15

The SSL protocol 3.0, as used in OpenSSL through 1.0.1i and other products, uses nondeterministic CBC padding, which mak

CVE-2016-2107 MEDIUM POC
5.9 May 05

The AES-NI implementation in OpenSSL before 1.0.1t and 1.0.2 before 1.0.2h does not consider memory allocation during a

CVE-2015-1793 MEDIUM POC
6.5 Jul 09

The X509_verify_cert function in crypto/x509/x509_vfy.c in OpenSSL 1.0.1n, 1.0.1o, 1.0.2b, and 1.0.2c does not properly

CVE-2022-3602 HIGH
7.5 Nov 01

A buffer overrun can be triggered in X.509 certificate verification, specifically in name constraint checking. Rated hig

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy