Skip to main content

openssl_encrypt CVE-2026-81693

| EUVDEUVD-2026-67049 HIGH
Memory Allocation with Excessive Size Value (CWE-789)
2026-08-27 VulnCheck GHSA-m9c9-3x53-3cf8
8.7
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

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

  1. Access
    Craft QR image with oversized total field
  2. Delivery
    Submit QR to exposed endpoint
  3. Exploit
    Library parses JSON payload without validation
  4. Execution
    Unbounded memory allocation triggered
  5. Persist
    Host memory exhausted
  6. Impact
    Application process crashes with OOM

Vulnerability Assessment

Weakness
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Memory allocation limits
Exploitation Conditions

No special conditions are required beyond the ability to submit a QR image to an application using the affected openssl_encrypt library (before version 1.4.9). Exploitation is limited by the following factors: (1) the target application must use openssl_encrypt specifically for QR code processing - applications using the library only for encryption without QR ingestion are not affected; (2) the crafted QR must be accepted by the application's QR parsing code path before being passed to the vulnerable validation logic; (3) host-level memory limits (PHP memory_limit, OS ulimits, container cgroup constraints) may prevent full memory exhaustion and instead cause a recoverable process-level crash rather than host-wide OOM. No authentication, specific configuration, or non-default deployment mode is required - the vulnerability is reachable against any default deployment that processes QR input.

Impact

The CVSS 4.0 score of 8.7 (AV:N/AC:L/AT:N/PR:N/UI:N/VA:H) accurately reflects the low friction of exploitation: no authentication, no special conditions, and no user interaction are required. The impact is limited strictly to availability - confidentiality and integrity are unaffected (VC:N/VI:N/VA:H/SC:N/SI:N/SA:N) - which limits the blast radius compared to code-execution flaws of similar CVSS score. EPSS data was not provided in the input; given the trivial attack conditions but niche product footprint, real-world exploitation risk is likely low in absolute terms. No CISA KEV listing exists and no POC has been identified, further supporting a lower operational priority in most environments. The primary real-world risk is concentrated in applications that expose QR ingestion endpoints publicly, such as event ticketing or logistics platforms. SSVC signals: exploitation status unconfirmed, attack is automatable (AV:N/AC:L/PR:N), technical impact is partial (DoS only, no code execution).

Exploit ScenarioDerived

An attacker targeting an internet-facing ticketing or logistics application that uses openssl_encrypt to validate QR codes submits a crafted QR image in which the embedded JSON payload contains an astronomically large 'total' value (e.g., 2^63). The library reads this value and attempts to allocate a corresponding memory range without validation, causing the PHP worker or host process to exhaust available RAM, crashing the service or triggering OOM-killer termination across co-hosted services. No public exploit code has been identified, but the attack requires only the ability to craft a QR image, which is trivially achievable with standard libraries.

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

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

Alert me

AnalysisAIv1 – Aug 27, 2026

Uncontrolled memory allocation in the jahlives openssl_encrypt PHP library (versions before 1.4.9) exposes any application processing QR codes to remote denial of service. The library fails to validate the 'total' field within QR JSON payloads before allocating memory for range materialization, allowing an unauthenticated attacker to supply a crafted QR image containing an arbitrarily large 'total' value and exhaust host memory. No public exploit code or CISA KEV listing has been identified at time of analysis, but the attack is low-complexity and requires no authentication, making automated exploitation plausible against any internet-facing service that accepts QR input.

RemediationAI

Upgrade to openssl_encrypt version 1.4.9, which is the vendor-confirmed patched release per the advisory at https://github.com/jahlives/openssl_encrypt/security/advisories/GHSA-r23m-gf2m-8www and the VulnCheck report at https://www.vulncheck.com/advisories/openssl-encrypt-before-1.4.9-denial-of-service-via-qr-total-field. If immediate patching is not possible, the most actionable compensating controls are: (1) enforce a maximum payload size limit at the web or application layer before QR image data reaches the library, rejecting requests whose QR JSON 'total' field exceeds a defined threshold - this eliminates the attack surface without requiring a code change; (2) apply memory limits to the PHP process or worker handling QR ingestion (e.g., via PHP's memory_limit directive or cgroup constraints) to cap the blast radius of a successful OOM trigger, though this may cause process crashes rather than graceful degradation; (3) restrict QR ingestion endpoints to authenticated or internal users if the feature allows it. None of these workarounds fix the underlying validation flaw and should be treated as temporary measures only.

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 affected component is the openssl_encrypt library (CPE: cpe:2.3:a:jahlives:openssl_encrypt:*:*:*:*:*:*:*:*) - a PHP library authored by 'jahlives' that, despite its name, is distinct from the standard OpenSSL cryptographic library. The library includes QR code processing functionality that parses JSON payloads embedded in QR images; within these payloads, a 'total' field is used to control range materialization. CWE-789 (Uncontrolled Memory Allocation) describes the root cause: the library reads a caller-supplied numeric value and directly uses it to size a memory allocation without first enforcing a reasonable upper bound or checking available system memory. This is a classic input-validation failure at a trust boundary - the 'total' field originates from attacker-controlled image data and is never sanitized before use.

Know when Openssl Encrypt 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:N/VI:N/VA:H/SC:N/SI:N/SA:N
vuln.today AI 7.5 HIGH

Network-accessible QR ingestion with no auth or interaction required; impact is availability-only with no scope change.

3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
4.0 AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/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
None
Vulnerable system: Integrity
None
Vulnerable system: Availability
High
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:50 cve.org
HIGH 8.7

DescriptionCVE.org

openssl_encrypt before 1.4.9 fails to validate the total field from QR JSON payloads before materializing ranges. Attackers can supply crafted QR images with extremely large total values to trigger unbounded memory allocation and cause denial of service through out-of-memory conditions.

Executive ViewAI

Why It Matters

The jahlives openssl_encrypt PHP library (versions before 1.4.9) contains an uncontrolled memory allocation vulnerability that enables remote denial of service against any internet-facing application processing QR codes. Organizations running this library face immediate risk of service unavailability through memory exhaustion. This is particularly critical for systems handling user-supplied QR input such as ticketing, payment, or identity verification platforms.

Business Impact: High
Compensating Controls

Implement strict input validation rejecting QR payloads with 'total' field values exceeding documented safe thresholds; configure memory limits at application and operating system kernel level to constrain maximum allocation; deploy rate limiting on QR processing endpoints; disable QR processing functionality where not business-critical; maintain monitoring for memory spikes and service crashes indicating potential exploitation.

Threat Intelligence Overview

EPSS Score
0.3%
Top 73% exploitable
Prevalence
Low
niche single-author PHP library, limited 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.3%
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

Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.

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

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