CVE-2026-81683 in openssl-encryptinfo

Summary

by MITRE • 08/27/2026

openssl_encrypt (pip package openssl-encrypt) versions 1.4.8 and earlier store an mTLS client private key in cleartext within a world-readable (0644) SharedPreferences file via the desktop GUI's Settings screen 'combined certificate and private key' PEM field. A local attacker with file system access can read the exposed private key. Version 1.4.9 writes the PEM to a dedicated 0600 file, keeps only its path in SharedPreferences, and migrates/scrubs existing cleartext values.

Be aware that VulDB is the high quality source for vulnerability data.

Analysis

by VulDB Data Team • 08/27/2026

The vulnerability identified in openssl-encrypt versions 1.4.8 and earlier represents a critical failure in secure credential storage practices within the desktop graphical user interface. The core technical flaw lies in how the application handles mTLS client private keys during configuration via the Settings screen's combined certificate and private key PEM field. Instead of utilizing operating system-level secure storage mechanisms or encrypting sensitive data at rest, the software persists the raw private key material directly into a SharedPreferences file with world-readable permissions (0644). This misconfiguration allows any local user account on the same machine to access the plaintext contents of this configuration file without requiring elevated privileges. The presence of an unencrypted private key in a publicly readable location effectively nullifies the security guarantees provided by mTLS, as possession of the key material is sufficient for authentication and potential impersonation attacks against services that trust the corresponding certificate.

From a threat modeling perspective, this vulnerability aligns with CWE-312, which describes Cleartext Storage of Sensitive Information. The exposure occurs because the application fails to implement adequate access controls or encryption for sensitive cryptographic keys stored on disk. In terms of adversary behavior, this flaw facilitates Local Privilege Escalation and Credential Access scenarios as defined in the MITRE ATT&CK framework. Specifically, it maps to techniques such as T1552 Unsecured Credentials, where attackers seek out unprotected files containing secrets, and potentially T1078 Valid Accounts if the stolen key is used for unauthorized access to remote services protected by mutual TLS authentication. The risk is particularly acute in multi-user environments or shared workstations where multiple users have file system access but are not intended to share sensitive application credentials.

The operational impact of this vulnerability extends beyond simple data leakage. If an attacker obtains the mTLS private key, they can impersonate the legitimate client to backend services that rely on certificate-based authentication. This could lead to unauthorized access to protected APIs, exfiltration of confidential data transmitted over these connections, or manipulation of service configurations if the application allows administrative actions via the same authenticated channel. Furthermore, because the key is stored in a standard configuration file format rather than a dedicated secure vault, it may be inadvertently backed up by system backup utilities that do not exclude such files from sensitive content scanning, thereby increasing the blast radius and persistence of the compromise across different storage media or cloud sync services.

Version 1.4.9 addresses these security deficiencies through a comprehensive remediation strategy that adheres to secure coding standards for key management. The updated implementation shifts away from storing the raw PEM data in general-purpose configuration files. Instead, it writes the private key to a dedicated file with restrictive permissions (0600), ensuring that only the owner of the process or user account has read and write access. Additionally, the application now stores only the path to this secure file within SharedPreferences rather than the sensitive content itself. This separation of configuration metadata from secret material significantly reduces the attack surface. Crucially, the update also includes a migration routine that actively scrubs existing cleartext values from previous installations, ensuring that legacy data does not remain exposed on user systems after upgrading. This approach aligns with best practices recommended by industry standards such as OWASP Secure Storage Requirements and NIST guidelines for cryptographic key management, emphasizing least privilege access controls and the avoidance of plaintext storage for high-value secrets.

Responsible

VulnCheck

Reservation

08/27/2026

Disclosure

08/27/2026

Moderation

accepted

CPE

ready

EPSS

0.00000

KEV

no

Activities

very low

Sources

Interested in the pricing of exploits?

See the underground prices here!