Skip to main content

openssl_encrypt EUVDEUVD-2026-60103

| CVE-2026-74884 HIGH
External Control of File Name or Path (CWE-73)
2026-08-17 VulnCheck GHSA-4hf6-j482-f379
8.7
CVSS 4.0 · Vendor: VulnCheck
Share

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/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
vuln.today AI
7.5 HIGH

Network-accessible endpoint with no authentication required; read-only traversal yields high confidentiality impact and no integrity or availability effect.

3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
4.0 AV:N/AC:L/AT:N/PR:N/UI:N/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
Privileges Required
None
User Interaction
None
Scope
X

Lifecycle Timeline

3
Analysis Generated
Aug 17, 2026 - 13:11 vuln.today
Patch available
Aug 17, 2026 - 12:01 EUVD
CVE Published
Aug 17, 2026 - 11:04 cve.org
HIGH 8.7

DescriptionCVE.org

openssl_encrypt versions before 1.4.0 contain a path traversal vulnerability in the _is_safe_path method where the plugin_id parameter is not sanitized before constructing the plugin config directory path. Attackers can declare a malicious plugin_id containing path traversal sequences like '../' to access arbitrary directories outside the intended plugin directory.

AnalysisAI

Path traversal in the jahlives openssl_encrypt plugin (versions before 1.4.0) permits unauthenticated remote attackers to escape the intended plugin configuration directory by supplying crafted plugin_id values containing sequences such as '../'. The _is_safe_path method fails to sanitize the plugin_id parameter before using it to construct filesystem paths, exposing arbitrary server-side files readable by the application process. No active exploitation is confirmed (not in CISA KEV) and no public POC has been identified at time of analysis, though the network-accessible, zero-authentication attack profile makes this straightforward to exploit from the vulnerability description alone.

Technical ContextAI

CWE-73 (External Control of File Name or Path) describes the root cause: user-supplied input is used directly or insufficiently filtered when constructing a filesystem path, allowing an attacker to resolve paths outside the intended directory boundary. The affected component is the _is_safe_path method in the jahlives openssl_encrypt plugin - a third-party PHP plugin (CPE: cpe:2.3:a:jahlives:openssl_encrypt) - which is responsible for validating that a plugin_id maps to a safe config directory. Because path traversal sequences like '../' are not stripped or rejected, the constructed path can walk up the directory tree to reach sensitive system or application files. This is not the OpenSSL cryptographic library; it is an independently developed plugin by the 'jahlives' author.

RemediationAI

Upgrade openssl_encrypt to version 1.4.0 or later, where the _is_safe_path method has been corrected to sanitize the plugin_id parameter. The fix is confirmed by the vendor via the GitHub Security Advisory at https://github.com/jahlives/openssl_encrypt/security/advisories/GHSA-8jpj-w975-rwv5 and detailed further at https://www.vulncheck.com/advisories/openssl-encrypt-before-path-traversal-via-plugin-id. If immediate upgrade is not feasible, restrict network access at the perimeter or WAF level to any endpoint that accepts the plugin_id parameter, specifically blocking requests where plugin_id contains '../', '..\', or absolute path prefixes such as '/'. Alternatively, add server-side input validation upstream of the plugin to reject traversal sequences before they reach _is_safe_path - note that allowlist-based validation (permitting only alphanumeric plugin IDs) is more reliable than denylist-based filtering, which is prone to encoding bypass.

CVE-2026-74872 CRITICAL
9.3 Aug 17

Arbitrary native code execution in the jahlives openssl_encrypt Python package (all versions before 1.4.0) arises from i

CVE-2026-81707 CRITICAL
9.3 Aug 27

Fingerprint-verification spoofing in jahlives openssl_encrypt before 1.4.9 lets attackers embed ANSI escape sequences in

CVE-2026-74895 CRITICAL
9.3 Aug 17

Sandbox escape in the openssl_encrypt Python library (jahlives) before 1.4.0 allows attacker-supplied plugins to run wit

CVE-2026-74886 CRITICAL
9.3 Aug 17

Arbitrary code execution in jahlives openssl_encrypt before 1.4.0 stems from an inconsistent sandbox: the runtime Plugin

CVE-2026-74894 CRITICAL
9.3 Aug 17

Authentication bypass in the jahlives openssl_encrypt library (all versions before 1.4.0) lets remote unauthenticated at

CVE-2026-74878 CRITICAL
9.3 Aug 17

Authentication brute-force protection can be bypassed in jahlives openssl_encrypt before 1.4.0 because the TOTP rate lim

CVE-2026-74899 CRITICAL
9.3 Aug 17

Sandbox escape in the openssl_encrypt Python library (jahlives) before 1.4.0 lets attacker-supplied plugin code break ou

CVE-2026-74900 CRITICAL
9.3 Aug 17

Cryptographic shared-secret disclosure in the openssl_encrypt Python library (maintainer 'jahlives') before 1.4.0 lets a

CVE-2026-74896 CRITICAL
9.3 Aug 17

Sandbox escape leading to remote code execution affects openssl_encrypt (the jahlives Python package) in all versions be

CVE-2026-81719 CRITICAL
9.3 Aug 27

Arbitrary code execution in openssl_encrypt (the jahlives Python encryption utility) before 1.4.9 allows an attacker-sup

CVE-2026-81701 CRITICAL
9.3 Aug 27

Arbitrary code execution in jahlives openssl_encrypt before 1.4.9 stems from a flawed plugin trust model that uses a den

CVE-2026-74880 CRITICAL
9.3 Aug 17

Sensitive-token exposure in openssl_encrypt (the jahlives Python package, pip 'openssl-encrypt') before 1.4.0 stems from

Share

EUVD-2026-60103 vulnerability details – vuln.today

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