CVE-2026-28364
Published: 27 February 2026
Summary
CVE-2026-28364 is a high-severity Buffer Over-read (CWE-126) vulnerability in Ocaml Ocaml. Its CVSS base score is 7.9 (High).
Operationally, exploitation aligns with the MITRE ATT&CK technique Exploitation for Privilege Escalation (T1068); ranked at the 15.7th percentile by exploit likelihood (below the median); it is not currently listed in the CISA KEV catalog.
The strongest mitigations our analysis identified are NIST 800-53 SI-10 (Information Input Validation) and SI-2 (Flaw Remediation).
Threat & Defense at a Glance
Threat & Defense Details
Mitigating Controls (NIST 800-53 r5)AI
Applying vendor patches to OCaml versions 4.14.3 or 5.4.1 directly remediates the buffer over-read flaw in Marshal deserialization.
Validating bounds and structure of input data prior to Marshal deserialization prevents processing of attacker-controlled lengths leading to unbounded memcpy.
Memory protection mechanisms like ASLR and DEP mitigate exploitation of the buffer over-read for remote code execution.
MITRE ATT&CK Enterprise TechniquesAI
Why these techniques?
Buffer over-read in OCaml Marshal deserialization (unbounded memcpy from attacker-controlled lengths) enables local unauthenticated attackers to achieve arbitrary code execution, directly facilitating T1068 Exploitation for Privilege Escalation (AV:L/PR:N to code exec with scope change).
NVD Description
In OCaml before 4.14.3 and 5.x before 5.4.1, a buffer over-read in Marshal deserialization (runtime/intern.c) enables remote code execution through a multi-phase attack chain. The vulnerability stems from missing bounds validation in the readblock() function, which performs unbounded memcpy() operations…
more
using attacker-controlled lengths from crafted Marshal data.
Deeper analysisAI
CVE-2026-28364 is a buffer over-read vulnerability (CWE-126) in the Marshal deserialization functionality of OCaml, located in the runtime/intern.c file's readblock() function. It affects OCaml versions before 4.14.3 and 5.x versions before 5.4.1. The flaw results from missing bounds validation, enabling unbounded memcpy() operations controlled by lengths from attacker-crafted Marshal data.
A local attacker (AV:L) with no privileges (PR:N), low attack complexity (AC:L), and no user interaction (UI:N) can exploit this vulnerability through a multi-phase attack chain. Successful exploitation leads to remote code execution, with a CVSS v3.1 base score of 7.9 (S:C/C:H/I:L/A:N), providing high confidentiality impact, low integrity impact, no availability impact, and changed scope.
Advisories detail mitigations in the referenced security notices, including patches in OCaml 4.14.3 and 5.4.1. See https://github.com/ocaml/security-advisories/blob/generated-osv/2026/OSEC-2026-01.json and https://osv.dev/vulnerability/OSEC-2026-01 for full details.
Details
- CWE(s)