# CVE-2024-28231: Manipulated DATA Submessage causes a heap-buffer-overflow error

> A manipulated DATA Submessage triggers an integer overflow leading to heap-buffer-overflow, causing remote denial of service in eProsima Fast DDS.

- **Severity:** Critical 9.7 (`CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H`)
- **Exploited in the wild:** Not known
- **Login needed:** Not needed
- **Attackable:** Local or same network only
- **Victim action needed:** Not needed
- **Fix available:** Yes
- **Published:** 20 Mar 2024
- **Updated:** 2 Aug 2024
- **Also known as:** DEBIAN-CVE-2024-28231, GHSA-9m2j-qw67-ph4w, UBUNTU-CVE-2024-28231

## What is CVE-2024-28231?

CVE-2024-28231 is a critical vulnerability in eProsima Fast-DDS, published on 20 Mar 2024. It can only be exploited from the same machine or local network, with no action from the victim.

### Official description

eprosima Fast DDS is a C++ implementation of the Data Distribution Service standard of the Object Management Group. Prior to versions 2.14.0, 2.13.4, 2.12.3, 2.10.4, and 2.6.8, manipulated DATA Submessage can cause a heap overflow error in the Fast-DDS process, causing the process to be terminated remotely. Additionally, the payload_size in the DATA Submessage packet is declared as uint32_t. When a negative number, such as -1, is input into this variable, it results in an Integer Overflow (for example, -1 gets converted to 0xFFFFFFFF). This eventually leads to a heap-buffer-overflow, causing the program to terminate. Versions 2.14.0, 2.13.4, 2.12.3, 2.10.4, and 2.6.8 contain a fix for this issue.

Weakness: CWE-787 (Out-of-bounds Write), CWE-122 (Heap-based Buffer Overflow)

## Which versions are affected by CVE-2024-28231?

It affects 1 product.


Products: Eprosima Fast Dds.

## How do I fix CVE-2024-28231?

Upgrade to a fixed version.

## Is CVE-2024-28231 being exploited?

It is not confirmed as exploited in the wild, but public exploit code for CVE-2024-28231 exists.

Public exploit code:

- Demonstrating the usage of Fastrtps-DDS vulnerability CVE-2024-28231 within Ros2 (github_poc): https://github.com/grimmmbo/ros2_CVE-2024-28231

## Other vulnerabilities in eProsima Fast-DDS

- [CVE-2025-67108](https://insights.sbomify.com/CVE-2025-67108/): Security feature bypass in n/a (critical 10.0)
- [CVE-2023-50716](https://insights.sbomify.com/CVE-2023-50716/): Invalid DATA_FRAG Submessage causes a bad-free error (critical 9.7)
- [CVE-2023-50257](https://insights.sbomify.com/CVE-2023-50257/): Disconnect Vulnerability in RTPS Packets Used by SROS2 (critical 9.7)
- [CVE-2023-42459](https://insights.sbomify.com/CVE-2023-42459/): Malformed DATA submessage leads to bad-free error in Fast-DDS (high 8.6)
- [CVE-2024-30258](https://insights.sbomify.com/CVE-2024-30258/): FastDDS crash when publisher send malformed packet (high 8.2)

## Fix prompt for AI coding agents

```text
Check this codebase for CVE-2024-28231 and fix it if it is affected.

What it is: CVE-2024-28231 is a critical vulnerability in eProsima Fast-DDS, published on 20 Mar 2024. It can only be exploited from the same machine or local network, with no action from the victim.
Exploitation: It is not confirmed as exploited in the wild, but public exploit code for CVE-2024-28231 exists.

Affected product: eProsima Fast-DDS. No package-level version data is available, so check the vendor advisory linked from the reference page.

Task:
1. Search the dependency manifests and lockfiles (for example package.json, package-lock.json, requirements.txt, poetry.lock, uv.lock, pom.xml, build.gradle, go.mod, Cargo.lock, Gemfile.lock) and any Dockerfiles for the affected packages, including transitive dependencies.
2. If an affected version is in use, upgrade it to the fixed version for its release line with the project's package manager, so the lockfile is regenerated. Prefer the smallest upgrade that fixes it.
3. If there is no fix, or the upgrade would break the build, do not guess: explain the risk and the safest workaround instead.
4. Run the tests and summarise what changed and why.
5. If nothing in the project is affected, say so and change nothing.

Reference: https://insights.sbomify.com/CVE-2024-28231/ (Markdown: https://insights.sbomify.com/CVE-2024-28231/index.md)
```

## Sources

- CVE record: https://www.cve.org/CVERecord?id=CVE-2024-28231
- NVD: https://nvd.nist.gov/vuln/detail/CVE-2024-28231
- OSV: https://osv.dev/vulnerability/CVE-2024-28231

---
From sbomify Insights: https://insights.sbomify.com/CVE-2024-28231/
Summaries are generated and may contain mistakes; the official description above is the record.
