PT-2026-22292 · Ocaml · Ocaml
Justin Timperio
·
Published
2026-02-17
·
Updated
2026-03-17
·
CVE-2026-28364
CVSS v3.1
7.9
High
| Vector | AV:L/AC:L/PR:N/UI:N/S:C/C:H/I:L/A:N |
Name of the Vulnerable Software and Affected Versions
OCaml versions prior to 4.14.3 and 5.x versions prior to 5.4.1
Description
A flaw exists in OCaml's Marshal deserialization process (within runtime/intern.c) that could allow for remote code execution. This issue stems from a missing bounds check in the
readblock() function, which allows unbounded memcpy() operations using lengths controlled by an attacker from crafted Marshal data. The Marshal.from channel, Marshal.from bytes, Marshal.from string, Stdlib.input value, and Pervasives.input value functions are affected when processing data from untrusted sources. The vulnerability can be triggered by corrupted or malicious marshaled data that causes undefined behavior in the runtime system when unmarshaled.Recommendations
Upgrade to OCaml version 4.14.3 or later.
Upgrade to OCaml version 5.4.1 or later.
Fix
RCE
Buffer Over-read
Found an issue in the description? Have something to add? Feel free to write us 👾
Weakness Enumeration
Related Identifiers
Affected Products
Ocaml