Skip to main content
CVE-2026-22590VulnerabilityPublished 09/09/2026

CVE-2026-22590: CWE-125: Out-of-bounds Read in eProsima Fast-DDS

Affects eProsima Fast-DDSSource CVE Database V5

0

Not known to be exploited · CVSS 9.1 Critical.

Data as of 10/25/2026, 04:40:11 UTC

CVSS 3.1 base score
9.1Critical
How severe the flaw is on the 0–10 CVSS scale.
Exploitation

Not in CISA KEV, no exploitation reported

EPSS
0.3% chance of exploitation in 30 days – higher than 31% of CVEsExploit Prediction Scoring System: the likelihood attackers will use this flaw soon.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:H

What to do

Affected software

ProductAffectedFixed in
eProsimaFast-DDSAffected
  • <2.6.12
  • >=2.7.0 <2.14.6
  • >=3.0.0 <3.2.4
  • >=3.3.0 <3.3.1
  • >=3.4.0 <3.4.2
Fixed in
  • 2.6.12
  • 2.14.6
  • 3.2.4
  • 3.3.1
  • 3.4.2
GitHubeprosima/Fast-DDSpkg:github/eprosima/Fast-DDSOther threatsAffected
  • <2.6.12
  • >=2.7.0 <2.14.6
  • >=2.14.0 <3.2.4
  • >=3.2.0 <3.3.1
  • >=3.3.0 <3.4.2
Fixed in
  • 2.6.12
  • 2.14.6
  • 3.2.4
  • 3.3.1
  • 3.4.2

Check your own hosts for these packages with threat-finder (opens in a new tab), our free open-source scanner.

AI-suggested

Fixed versions are available: 2.6.12, 2.14.6, 3.2.4, 3.3.1, and 3.4.2. Users should upgrade to these or later versions to remediate the vulnerability. No vendor advisory content was provided to indicate alternative mitigations or temporary workarounds. Patch status is confirmed by the version information specifying fixed versions. No cloud service remediation applies as this is not a cloud service.

Description

eprosima Fast DDS is a C++ implementation of the DDS (Data Distribution Service) standard of the OMG (Object Management Group). Versions prior to 2.6.12, 2.14.6, 3.2.4, 3.3.1, and 3.4.2 have a remotely triggerable Out-of-Bounds Read while processing RTPS `DATA_FRAG` submessages. An attacker can craft a `DATA_FRAG` with a large `sampleSize` but a small actual payload, and set `fragmentsInSubmessage` such that the receiver treats the packet as the LAST fragment**. In this LAST-fragment path, Fast-DDS computes `incoming_length` based on `sampleSize` and calls `memcpy()` without validating `incoming_data.length >= incoming_length`. As a result, `CacheChange_t::add_fragments()` reads past the received UDP datagram buffer and into adjacent heap memory, copying those bytes into the reassembly buffer. In a Discovery Server deployment, the resulting `CacheChange_t` can be relayed to other participants, meaning that a newly joining participant may receive leaked heap memory (e.g., pointer values that could aid ASLR bypass). Versions 2.6.12, 2.14.6, 3.2.4, 3.3.1, and 3.4.2 fix the issue.

Impact

The vulnerability allows remote attackers to cause an out-of-bounds read, leading to leakage of adjacent heap memory. This memory disclosure can expose sensitive information such as pointer values, which may assist in bypassing address space layout randomization (ASLR) protections. The flaw does not impact integrity but has a high confidentiality impact and causes a denial of service (crash or instability) due to invalid memory access. The CVSS score is 9.1 (critical), reflecting network attack vector, low attack complexity, no privileges required, no user interaction, and high confidentiality and availability impacts.

Weaknesses

  • CWE-125Out-of-bounds Read (opens in a new tab)

    Base weaknessCWE Top 25 (2025): #8

    The product reads data past the end, or before the beginning, of the intended buffer.

  • CWE-131Incorrect Calculation of Buffer Size (opens in a new tab)

    Base weaknessLikelihood of exploit: High

    The product does not correctly calculate the size to be used when allocating a buffer, which could lead to a buffer overflow.

References

Community reviews

Loading reviews…