# CVE-2026-87733: Mirage-crypto-ec ECDSA signature forgery via point at infinity

Source: https://junglewise.ai/threats/cve-2026-87733-mirage-crypto-ec-ecdsa-signature-forgery-via-point-at-infinity  
Publisher: Junglewise Threat Intelligence, https://junglewise.ai/threats  
Published: 2026-09-09. Updated: 2026-09-26  
License: CC BY 4.0 with a link back

CVE-2026-87733 · Severity: medium · CVSS 6.2 · Published 2026-09-09

Mirage-crypto-ec is an OCaml library providing elliptic curve cryptography functions, including ECDSA digital signature verification. A flaw allows attackers to forge ECDSA signatures without possessing the private key by exploiting acceptance of the point at infinity (encoded as 0x00) as a valid public key. This undermines the authenticity guarantees of any system relying on this library for signature verification, potentially allowing unauthorized transactions, data tampering, or identity spoofing.

Technologies: [OCaml Mirage-Crypto-Ec](https://junglewise.ai/threats/technologies/mirage-crypto-ec). Vendors: [OCaml](https://junglewise.ai/threats/vendors/ocaml).

## Quick answers

**Is CVE-2026-87733 exploited in the wild?** No. Junglewise Threat Intelligence has no report of CVE-2026-87733 being exploited in the wild.

**How severe is CVE-2026-87733?** Medium severity, with a CVSS score of 6.2, published 9 September 2026.

**Which products and versions are affected?** OCaml Mirage-Crypto-Ec before 2.2.0.

**Is there a fix for CVE-2026-87733?** A patch was published on 2026-07-27: mirage-crypto 2.2.0 released with fix Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.

**How is CVE-2026-87733 attacked?** It is attacked with local access, in a software library.

**Am I affected by CVE-2026-87733?** Check whether you run OCaml Mirage-Crypto-Ec 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.

## Technical details

The vulnerability is a missing cryptographic validation in the ECDSA path of mirage-crypto-ec's pub_of_octets function for P256, P384, and P521 curves. The function fails to reject 0x00 (the SEC1 encoding of the elliptic curve point at infinity), accepting it as a legitimate public key. An attacker can then forge arbitrary ECDSA signatures for any message under this crafted public key with no knowledge of a private key; the forged signature verification succeeds due to the mathematical properties of operations involving the point at infinity. The Diffie-Hellman code path correctly rejects this point via point_of_octets. Fix: Version 2.2.0 and later add a check to reject the point at infinity in pub_of_octets.

## Affected products

- OCaml mirage-crypto-ec before 2.2.0

## Timeline

- 2026-06-25: disclosed: Reported to ocaml/security-advisories
- 2026-06-29: other: Issue acknowledged with clarifying questions
- 2026-07-06: other: Patch provided by reporter
- 2026-07-27: patched: mirage-crypto 2.2.0 released with fix
- 2026-09-09: advisory: Public advisory published

## Related threats

- [mirage-crypto-ec timing side channel in NIST elliptic-curve scalar multiplication](https://junglewise.ai/threats/cve-2026-87737-mirage-crypto-ec-timing-side-channel-in-nist-elliptic-curve)
- [Mirage-Crypto-EC out-of-bounds read in EC public key parsing](https://junglewise.ai/threats/cve-2026-87736-mirage-crypto-ec-out-of-bounds-read-in-ec-public-key-parsing)
