OSEC-2026-15

See a problem?
Import Source
https://github.com/ocaml/security-advisories/blob/generated-osv/2026/OSEC-2026-15.json
JSON Data
https://api.osv.dev/v1/vulns/OSEC-2026-15
Published
2026-08-07T13:00:00Z
Modified
2026-08-07T18:30:04.170823869Z
Severity
  • 4.3 (Medium) CVSS_V3 - CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L CVSS Calculator
Summary
EC public key out of bounds read
Details

The internal Point.of_octets function is missing a length check for compressed points, and thus is raising an exception when a short buffer is provided. This affects all NIST curves (P-256, P-384, P-521) and both Dsa.pub_of_octets and Dh.key_exchange functions.

Fix

The fix is to check the length of the provided buffer.

Timeline

  • July 28th 2026: report to security@ocaml.org
  • August 7th: release of mirage-crypto-pk 2.3.0 and security advisory
Database specific
{
    "osv": "https://github.com/ocaml/security-advisories/tree/generated-osv/2026/OSEC-2026-15.json",
    "human_link": "https://github.com/ocaml/security-advisories/tree/main/advisories/2026/OSEC-2026-15.md",
    "cwe": [
        "CWE-125",
        "CWE-248"
    ]
}
References
Credits
    • Thomas Gazagnaire - REPORTER
    • Hannes Mehnert - REMEDIATION_DEVELOPER

Affected packages

opam / mirage-crypto-ec

Package

Name
mirage-crypto-ec
Purl
pkg:opam/mirage-crypto-ec

Affected ranges

Type
ECOSYSTEM
Events
Introduced
0Unknown introduced version / All previous versions are affected
Fixed
2.3.0
Type
GIT
Repo
https://github.com/mirage/mirage-crypto.git
Events
Introduced
0 Unknown introduced commit / All previous commits are affected
Fixed

Affected versions

0.*
0.9.0
0.9.1
0.9.2
0.10.0
0.10.1
0.10.2
0.10.3
0.10.4
0.10.5
0.10.6
0.10.7
0.11.0
0.11.1
0.11.2
0.11.3
1.*
1.0.0
1.1.0
1.2.0
2.*
2.0.0
2.0.1
2.0.2
2.0.3
2.1.0
2.2.0
v2.*
v2.2.0
v2.1.0
v2.0.3
v2.0.2
v2.0.1
v2.0.0
v1.*
v1.2.0
v1.1.0
v1.0.1
v1.0.0
v0.*
v0.11.3
v0.11.2
v0.11.1
v0.11.0
v0.10.7
v0.10.6
v0.10.5
v0.10.4
v0.10.3
v0.10.2
v0.10.1
v0.10.0
v0.9.2
v0.9.1
v0.9.0
v0.8.10
v0.8.9
v0.8.8
v0.8.7
v0.8.6
v0.8.5
v0.8.4
v0.8.3
v0.8.2
v0.8.1
v0.8.0
v0.7.0
v0.6.2
v0.6.1
v0.6.0

Ecosystem specific

{
    "opam_constraint": "mirage-crypto-ec {< \"2.3.0\"}",
    "affected_bindings": [
        "Mirage_crypto_ec.P256.Dsa.pub_of_octets",
        "Mirage_crypto_ec.P256.Dh.key_exchange",
        "Mirage_crypto_ec.P384.Dsa.pub_of_octets",
        "Mirage_crypto_ec.P384.Dh.key_exchange",
        "Mirage_crypto_ec.P521.Dsa.pub_of_octets",
        "Mirage_crypto_ec.P521.Dh.key_exchange"
    ]
}

Database specific

source
"https://github.com/ocaml/security-advisories/blob/generated-osv/2026/OSEC-2026-15.json"