[ CVE-2026-119196 · Published 29 Oct 2026 ]
pyasn1 has quadratic CPU consumption in constructed BIT STRING decoding
CVSS 7.5
EPSS <1%Fix available
[ Why it matters ]Priority signals
- Public proof-of-concept exploit exists (CISA SSVC)
[ Description ]Official description
pyasn1 is a generic ASN.1 library for Python. Prior to 0.6.5, constructed BIT STRING decoding repeatedly shifts and copies the complete bit value accumulated from earlier fragments. Attacker-controlled BER or CER input contains many constructed BIT STRING fragments; schema-driven DER also accepts a definite-length constructed BIT STRING. BitStringPayloadDecoder repeatedly calls BitString.fromOctetString with the prior bitString as prepend, shifting an ever-growing SizedInteger for each fragment and causing quadratic work. Large fragmented values can exhaust CPU during decode() without requiring later conversion or formatting. This issue is fixed in version 0.6.5.
[ Fixes ]Fixes and patches
- pyasn1 0.6.5Fixed version · GitHub Advisories · pip package pyasn1: upgrade to 0.6.5 or later (affected <= 0.6.4)
[ Packages ]Affected open-source packages
- pyasn1 pipAffected <= 0.6.4 · fixed in 0.6.5 · GHSA-2qm8-x737-gmw5