{"id":"CVE-2026-87736","aliases":["DEBIAN-CVE-2026-87736","EUVD-2026-74622","GHSA-x37h-cx7x-wm76","OSEC-2026-15","UBUNTU-CVE-2026-87736"],"status":"published","title":"An issue was discovered in the mirage-crypto-ec package before 2.3.0 for OCaml. There is an EC...","description":"An issue was discovered in the mirage-crypto-ec package before 2.3.0 for OCaml. There is an EC public key out-of-bounds read for compressed points.","severity":{"version":"3.1","score":4.3,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L","level":"medium","assessor":"cna","from":"cve"},"epss":{"day":"2026-11-11","score":0.00359,"percentile":0.30061,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-125"],"published":"2026-08-07T13:00:00Z","modified":"2026-11-06T13:45:03Z","fixes":[{"ecosystem":"Debian:14","package":"ocaml-mirage-crypto","fixed_in":["2.3.0-1"],"sources":["osv"]},{"ecosystem":"opam","package":"mirage-crypto-ec","fixed_in":["2.3.0"],"sources":["osv"]}],"affected":[{"source":"osv","ecosystem":"Debian:12","package":"ocaml-mirage-crypto","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.10.7-1","0.11.1-1","0.11.1-2","0.11.1-3","0.11.2-1","0.11.2-2","0.11.3-1","1.1.0-1","1.1.0-2","2.0.0-1","2.0.1-1","2.0.2-1","2.0.3-1","2.1.0-1","2.2.0-1","2.2.0-2","2.3.0-1","2.4.0-1","2.4.1-1"]},{"source":"osv","ecosystem":"Debian:13","package":"ocaml-mirage-crypto","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["2.0.0-1","2.0.1-1","2.0.2-1","2.0.3-1","2.1.0-1","2.2.0-1","2.2.0-2","2.3.0-1","2.4.0-1","2.4.1-1"]},{"source":"osv","ecosystem":"Debian:14","package":"ocaml-mirage-crypto","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.3.0-1"}]}],"versions":["2.0.0-1","2.0.1-1","2.0.2-1","2.0.3-1","2.1.0-1","2.2.0-1","2.2.0-2"]},{"source":"osv","ecosystem":"opam","package":"mirage-crypto-ec","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"2.3.0"}]}],"versions":["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.0.0","1.1.0","1.2.0","2.0.0","2.0.1","2.0.2","2.0.3","2.1.0","2.2.0"]},{"source":"osv","ecosystem":"Ubuntu:22.04:LTS","package":"ocaml-mirage-crypto","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.10.5-4","0.10.5-4build2"]},{"source":"osv","ecosystem":"Ubuntu:24.04:LTS","package":"ocaml-mirage-crypto","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["0.11.1-3","0.11.2-1","0.11.2-1build1","0.11.2-2build3"]},{"source":"osv","ecosystem":"Ubuntu:26.10","package":"ocaml-mirage-crypto","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["2.0.2-1build5","2.4.0-1"]},{"source":"osv","ecosystem":"Ubuntu:26.04:LTS","package":"ocaml-mirage-crypto","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["2.0.1-1build1","2.0.2-1build1","2.0.2-1build2","2.0.2-1build3","2.0.2-1build5"]}],"products":[{"vendor":"ocaml","product":"mirage-crypto-ec"}],"references":[{"url":"https://osv.dev/vulnerability/OSEC-2026-15","tags":["report"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-87736"},{"url":"https://github.com/advisories/GHSA-x37h-cx7x-wm76"},{"url":"https://security-tracker.debian.org/tracker/CVE-2026-87736","tags":["advisory"]},{"url":"https://ubuntu.com/security/CVE-2026-87736","tags":["report"]},{"url":"https://www.cve.org/CVERecord?id=CVE-2026-87736","tags":["report"]}],"sources":{"cve":[{"id":"CVE-2026-87736","description":"An issue was discovered in the mirage-crypto-ec package before 2.3.0 for OCaml. There is an EC public key out-of-bounds read for compressed points.","status":"published","published":"2026-09-09T04:19:00.276Z","modified":"2026-09-14T15:41:32.129Z","cvss":[{"version":"3.1","score":4.3,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L","level":"medium","assessor":"cna"}],"cwes":["CWE-125"],"updated_at":"2026-11-02T13:37:47.463822Z"}],"euvd":[{"id":"EUVD-2026-74622","description":"An issue was discovered in the mirage-crypto-ec package before 2.3.0 for OCaml. There is an EC public key out-of-bounds read for compressed points.","status":"published","published":"2026-09-09T04:19:00Z","modified":"2026-09-14T15:41:32Z","cvss":[{"version":"3.1","score":4.3,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L","level":"medium"}],"updated_at":"2026-11-02T17:28:20.426868Z"}],"ghsa":[{"id":"GHSA-x37h-cx7x-wm76","title":"An issue was discovered in the mirage-crypto-ec package before 2.3.0 for OCaml. There is an EC...","description":"An issue was discovered in the mirage-crypto-ec package before 2.3.0 for OCaml. There is an EC public key out-of-bounds read for compressed points.","status":"published","published":"2026-09-09T06:31:39Z","modified":"2026-09-09T06:31:40Z","cvss":[{"version":"3.1","score":4.3,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L","level":"medium"}],"cwes":["CWE-125"],"updated_at":"2026-11-02T15:11:37.523128Z"}],"nvd":[{"id":"CVE-2026-87736","description":"An issue was discovered in the mirage-crypto-ec package before 2.3.0 for OCaml. There is an EC public key out-of-bounds read for compressed points.","status":"published","published":"2026-09-09T05:18:20.873Z","modified":"2026-09-14T16:17:21.733Z","cvss":[{"version":"3.1","score":4.3,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L","level":"medium","assessor":"secondary"}],"cwes":["CWE-125"],"updated_at":"2026-11-02T14:12:45.93749Z"}],"osv":[{"id":"DEBIAN-CVE-2026-87736","description":"An issue was discovered in the mirage-crypto-ec package before 2.3.0 for OCaml. There is an EC public key out-of-bounds read for compressed points.","status":"published","published":"2026-09-09T05:18:20.873Z","modified":"2026-10-01T03:03:52.539120376Z","cvss":[{"version":"3.1","score":4.3,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L","level":"medium"}],"updated_at":"2026-11-02T15:46:05.506112Z"},{"id":"OSEC-2026-15","title":"EC public key out of bounds read","description":"The internal Point.of_octets function is missing a length check for compressed\npoints, and thus is raising an exception when a short buffer is provided. This\naffects all NIST curves (P-256, P-384, P-521) and both `Dsa.pub_of_octets` and\n`Dh.key_exchange` functions.\n\n## Fix\n\nThe fix is to check the length of the provided buffer.\n\n## Timeline\n\n- July 28th 2026: report to security@ocaml.org\n- August 7th: release of mirage-crypto-pk 2.3.0 and security advisory","status":"published","published":"2026-08-07T13:00:00Z","modified":"2026-11-06T13:45:03.091221066Z","cvss":[{"version":"3.1","score":4.3,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L","level":"medium"}],"updated_at":"2026-11-06T14:15:37.555093Z"},{"id":"UBUNTU-CVE-2026-87736","description":"An issue was discovered in the mirage-crypto-ec package before 2.3.0 for OCaml. There is an EC public key out-of-bounds read for compressed points.","status":"published","published":"2026-09-09T05:18:00Z","modified":"2026-10-17T13:01:14.830656095Z","cvss":[{"version":"3.1","score":4.3,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L","level":"medium"}],"updated_at":"2026-11-02T16:57:24.828975Z"}]}}
