CVE-2026-119197
pyasn1 has quadratic-complexity denial of service in binary REAL decoding
Impact
pyasn1 is a generic ASN.1 library for Python. Prior to 0.6.5, binary REAL decoding builds a large mantissa one octet at a time by shifting a growing integer and slicing the remaining byte string. Attacker-controlled ASN.1 includes a binary-encoded REAL with a large mantissa and reaches BER, CER, or DER decode(), with or without a schema containing REAL. RealPayloadDecoder.valueDecoder repeatedly performs a left shift, OR, and suffix copy for every mantissa octet, making decode time quadratic in mantissa length. A comparatively small REAL value can hold a decoding worker on one CPU core for seconds or longer and cause availability loss. This issue is fixed in version 0.6.5.
Affected packages
| Ecosystem | Package | Affected | Fixed in |
|---|---|---|---|
| pip | pyasn1 | <= 0.6.4 | 0.6.5 |
Affected products
| Vendor | Product | Affected versions |
|---|---|---|
| Pyasn1 | Pyasn1 | before 0.6.5 |
Weakness classification
References
- NVD record
- CVE.org record
- GitHub advisory
- https://github.com/advisories/GHSA-mm57-4v3p-rchx
- https://github.com/pyasn1/pyasn1/security/advisories/GHSA-mm57-4v3p-rchx
- https://nvd.nist.gov/vuln/detail/CVE-2026-119197
- https://github.com/pyasn1/pyasn1/pull/132
- https://github.com/pyasn1/pyasn1/commit/ce3ec3390784780a530047e0e77be5ff457636a4
- https://github.com/pyasn1/pyasn1/releases/tag/v0.6.5