CVE-2026-28364
Buffer Over-Read in OCaml Marshal Enables Remote Code Execution
Publication date: 2026-02-27
Last updated on: 2026-03-06
Assigner: MITRE
Description
Description
CVSS Scores
EPSS Scores
| Probability: | |
| Percentile: |
Meta Information
Affected Vendors & Products
| Vendor | Product | Version / Range |
|---|---|---|
| ocaml | ocaml | to 4.14.3 (exc) |
| ocaml | ocaml | From 5.0.0 (inc) to 5.4.1 (exc) |
Helpful Resources
Exploitability
| CWE ID | Description |
|---|---|
| CWE-126 | The product reads from a buffer using buffer access mechanisms such as indexes or pointers that reference memory locations after the targeted buffer. |
Attack-Flow Graph
AI Powered Q&A
Can you explain this vulnerability to me?
This vulnerability exists in OCaml versions before 4.14.3 and 5.x before 5.4.1. It is a buffer over-read issue in the Marshal deserialization process, specifically in the runtime/intern.c file. The problem arises because the readblock() function lacks proper bounds validation and performs unbounded memcpy() operations using lengths controlled by an attacker through crafted Marshal data. This flaw enables a remote code execution attack through a multi-phase attack chain.
How can this vulnerability impact me? :
The vulnerability can lead to remote code execution, meaning an attacker could potentially execute arbitrary code on the affected system without user interaction. This could compromise the confidentiality and integrity of the system, allowing unauthorized access or manipulation of data.
How does this vulnerability affect compliance with common standards and regulations (like GDPR, HIPAA)?:
I don't know
How can this vulnerability be detected on my network or system? Can you suggest some commands?
I don't know
What immediate steps should I take to mitigate this vulnerability?
I don't know