Skip to main content

pyasn1 EUVDEUVD-2026-43738

| CVE-2026-59886 HIGH
Uncontrolled Resource Consumption (CWE-400)
2026-07-14 GitHub_M GHSA-hm4w-wwcw-mr6r
7.5
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

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

  1. Access
    Reach ASN.1-decoding endpoint
  2. Delivery
    Send tiny crafted REAL with huge exponent
  3. Exploit
    App decodes to univ.Real
  4. Execution
    Print/log/compare triggers pow() exponentiation
  5. Persist
    CPU and memory exhausted
  6. Impact
    Service hangs (denial of service)

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V2 - Validation and Business Logic Resource consumption limits
MITRE ATT&CK

1 technique across 1 tactic: Impact

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

The target application must decode attacker-supplied BER/CER/DER data with pyasn1 (<0.6.4) AND subsequently trigger float conversion of a decoded univ.Real - via prettyPrint(), str()/repr(), logging, comparison, arithmetic, int(), or an explicit float() call. The malicious input is a compact ASN.1 REAL (universal tag 9) whose variable-length exponent field encodes a very large exponent (the fix's regression tests use exponents such as 262140 and 76354972). No authentication and no user interaction are required (PR:N/UI:N). The limiting factor is application behavior: an application that decodes but never prints, logs, compares, or numerically converts the Real object does not reach the hang - exhaustion only occurs when the decoded value is materialized as a float.

Impact

The CVSS 3.1 vector CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H (7.5, High) is internally consistent with the description: an unauthenticated remote attacker with no user interaction can trigger availability loss only (C:N/I:N), which matches a pure DoS. The one caveat is that exploitation is not purely a decode operation - the malicious object must additionally be printed, logged, compared, or numerically converted by the consuming application, a condition CVSS folds into the base score but which somewhat lowers real-world universality. Because pyasn1 is almost always used behind higher-level parsers (LDAP, PKI, SNMP) that routinely log or compare decoded fields, the practical exposure is broad. It is not listed in CISA KEV and no POC was provided, so this is not confirmed active exploitation; however, the low attack complexity and trivial payload size make it an easy, reliable hang rather than a theoretical high-CVSS-but-low-real-risk issue. Treat as a genuine patch priority for services that ingest untrusted ASN.1. No EPSS score was supplied in the input, so probabilistic exploitation likelihood could not be cross-referenced.

Exploit ScenarioDerived

An attacker sends a service that decodes untrusted ASN.1 (for example an LDAP, PKI/certificate, or SNMP endpoint) a tiny crafted BER/CER/DER REAL value carrying a huge exponent. When the application logs, prints, or compares the decoded object, pyasn1 attempts exact big-integer exponentiation, pinning CPU and exhausting memory until the worker hangs or the process is killed. No exploit code was provided, but the payload is only a handful of bytes and the attack complexity is low (AC:L).

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 – Jul 14, 2026

Uncontrolled resource consumption in the pyasn1 Python ASN.1 library (versions prior to 0.6.4) lets remote attackers hang applications that decode untrusted BER/CER/DER data. A REAL value only a few bytes long can encode an enormous exponent; when the decoded univ.Real object is later printed, logged, compared, or converted via prettyPrint(), str(), int(), or float(), pyasn1 performs exact big-integer exponentiation that consumes excessive CPU and memory. There is no public exploit identified at time of analysis, but the network/no-auth/no-interaction, availability-only profile makes this a straightforward denial-of-service primitive; the issue is fixed in version 0.6.4.

RemediationAI

Vendor-released patch: pyasn1 0.6.4 - upgrade to 0.6.4 or later (e.g. pip install --upgrade "pyasn1>=0.6.4"), which caps Real-to-float conversion via math.ldexp and OverflowError guards; the fix commit is e60c691cb91addb8fcefa2f537e85ede6fb1e886 and the advisory is GHSA-hm4w-wwcw-mr6r. If you cannot upgrade immediately, avoid invoking prettyPrint(), str(), float(), int(), comparison, or arithmetic on Real objects decoded from untrusted input (for example, do not log or repr() decoded ASN.1 structures that may contain REAL values) - the trade-off is losing diagnostic visibility on those objects. Where feasible, reject or size-limit inbound ASN.1 before decoding, or constrain schemas so the REAL universal type is not accepted from untrusted sources; note this only helps where your application controls the expected ASN.1 structure. Also audit and update transitive dependencies that pin an older pyasn1.

Affected VersionsENISA

pyasn1 < 0.6.4

Affected Packages

pypi pyasn1 fix: 0.6.4

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

pyasn1 is a foundational, pure-Python ASN.1 encoder/decoder used as a transitive dependency across the Python ecosystem (X.509/PKI handling, LDAP clients such as ldap3, SNMP tooling, Kerberos and various crypto libraries). The root cause is CWE-400 (Uncontrolled Resource Consumption). ASN.1 REAL values in the binary (BER/CER/DER) encoding are stored as a (mantissa, base, exponent) triple, and the exponent field is variable-length, so a compact multi-byte exponent can represent an astronomically large power. The vulnerable code in pyasn1/type/univ.py computed float(mantissa * pow(base, exponent)) - materializing the full big integer via pow() before conversion. The fix short-circuits this: base-2 values use math.ldexp(), base-10 values raise OverflowError when the exponent exceeds sys.float_info.max_10_exp, and prettyPrint() now emits '<overflow>' instead of grinding through the exponentiation.

Know when Pyasn1 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 (GitHub_M) PRIMARY 7.5 HIGH
AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
vuln.today AI 7.5 HIGH

Remote unauthenticated decoding of a tiny crafted value with no interaction yields availability-only impact; PR:N and C:N/I:N since only DoS occurs, AC:L as the payload is trivial to craft.

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
SUSE HIGH
Red Hat 7.5 HIGH

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
None
Availability
High

Lifecycle Timeline

2
Patch available
Jul 14, 2026 - 18:20 EUVD
CVE Published
Jul 14, 2026 - 16:38 cve.org
HIGH 7.5

DescriptionCVE.org

pyasn1 is a generic ASN.1 library for Python. Prior to 0.6.4, the univ.Real type converted its mantissa, base, and exponent value to a Python float using exact big-integer exponentiation. A BER, CER, or DER encoded REAL value only a few bytes long can carry a very large exponent, causing float conversion through prettyPrint(), str(), comparison, arithmetic, int(), or an explicit float() call to consume excessive CPU and memory and hang applications that decode untrusted ASN.1 data and then print, log, or compare decoded objects. This issue is fixed in version 0.6.4.

Blast Radius

ecosystem impact
† from your stack dependencies † transitive graph · vuln.today resolves 4-path depth
  • 52 pypi packages depend on pyasn1 (18 direct, 34 indirect)

Ecosystem-wide dependent count for version 0.6.4.

Executive ViewAI

Why It Matters

The pyasn1 Python library versions prior to 0.6.4 contain a remote denial-of-service vulnerability requiring no authentication or user interaction. Any organization whose services depend on pyasn1 for ASN.1 parsing, certificate validation, or protocol handling faces service disruption risk. This requires immediate inventory and patching of affected deployments.

Business Impact: High
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
0.3%
Top 74% exploitable
Prevalence
High
core Python ASN.1 library, transitive dependency of PKI/LDAP/SNMP stacks
Threat Intel
1
1 sources
Data Quality
7 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GHSA MSRC Vendor GitHub VulDB

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

38
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +38
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.

Vendor StatusVendor

SUSE

Severity: Important
Product Status
SUSE Linux Enterprise Desktop 15 SP7 SUSE Linux Enterprise High Performance Computing 15 SP7 SUSE Linux Enterprise Module for Python 3 15 SP7 SUSE Linux Enterprise Server 15 SP7 SUSE Linux Enterprise Server for SAP Applications 15 SP7 Fixed
SUSE Linux Enterprise High Performance Computing 15 SP4-ESPOS Fixed
SUSE Linux Enterprise High Performance Computing 15 SP4-LTSS Fixed
SUSE Linux Enterprise High Performance Computing 15 SP4 SUSE Linux Enterprise Module for Public Cloud 15 SP4 SUSE Linux Enterprise Server 15 SP4 SUSE Manager Proxy 4.3 SUSE Manager Retail Branch Server 4.3 SUSE Manager Server 4.3 Fixed
SUSE Linux Enterprise High Performance Computing 15 SP5-ESPOS Fixed

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