CVE-2026-33936: PYSEC-2026-2467 - python-ecdsa: Denial of Service via improper DER length validation in crafted private keys

CVE-2026-33936 · Severity: medium · CVSS 5.3 · Published 2026-03-27

The `ecdsa` PyPI package is a pure Python implementation of ECC (Elliptic Curve Cryptography) with support for ECDSA (Elliptic Curve Digital Signature Algorithm), EdDSA (Edwards-curve Digital Signature Algorithm) and ECDH (Elliptic Curve Diffie-Hellman). Prior to version 0.19.2, an issue in the low-level DER parsing functions can cause unexpected exceptions to be raised from the public API functions. `ecdsa.der.remove_octet_string()` accepts truncated DER where the encoded length exceeds the available buffer. For example, an OCTET STRING that declares a length of 4096 bytes but provides only 3 bytes is parsed successfully instead of being rejected. Because of that, a crafted DER input can cause `SigningKey.from_der()` to raise an internal exception (`IndexError: index out of bounds on dimension 1`) rather than cleanly rejecting malformed DER (e.g., raising `UnexpectedDER` or `ValueError`). Applications that parse untrusted DER private keys may crash if they do not handle unexpected exceptions, resulting in a denial of service. Version 0.19.2 patches the issue.

Technologies: ecdsa (PyPI). Vendors: PyPI.

Quick answers

Is CVE-2026-33936 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2026-33936 being exploited in the wild.
How severe is CVE-2026-33936?
Medium severity, with a CVSS score of 5.3, published 27 March 2026.
Which products and versions are affected?
ecdsa (PyPI) ECOSYSTEM:introduced=0,fixed=0.19.2.
Is there a fix for CVE-2026-33936?
Yes. ecdsa (PyPI): upgrade to 0.19.2 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
Am I affected by CVE-2026-33936?
Check whether you run ecdsa (PyPI) or Tlsfuzzer Ecdsa at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

How to fix

  • ecdsa (PyPI): upgrade to 0.19.2 or later
    pip install "ecdsa>=0.19.2"

Affected products

  • ecdsa (PyPI) ECOSYSTEM:introduced=0,fixed=0.19.2
  • Tlsfuzzer Ecdsa

Identifiers

  • CVE-2026-33936
  • GHSA-9f5j-8jwj-x28g
  • PYSEC-2026-2467

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.