{"answers":{"affected":"It affects 1 product.","exploited":"It is not confirmed as exploited in the wild, but public exploit code for CVE-2024-28231 exists.","fix":"Upgrade to a fixed version.","what":"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."},"fix_prompt":"Check this codebase for CVE-2024-28231 and fix it if it is affected.\n\nWhat 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.\nExploitation: It is not confirmed as exploited in the wild, but public exploit code for CVE-2024-28231 exists.\n\nAffected product: eProsima Fast-DDS. No package-level version data is available, so check the vendor advisory linked from the reference page.\n\nTask:\n1. 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.\n2. 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.\n3. If there is no fix, or the upgrade would break the build, do not guess: explain the risk and the safest workaround instead.\n4. Run the tests and summarise what changed and why.\n5. If nothing in the project is affected, say so and change nothing.\n\nReference: https://insights.sbomify.com/CVE-2024-28231/ (Markdown: https://insights.sbomify.com/CVE-2024-28231/index.md)","id":"CVE-2024-28231","markdown":"https://insights.sbomify.com/CVE-2024-28231/index.md","name":"CVE-2024-28231","record":{"aliases":["DEBIAN-CVE-2024-28231","GHSA-9m2j-qw67-ph4w","UBUNTU-CVE-2024-28231"],"analysis":{"component_type":"library","fix_type":"upgrade","impacts":["denial_of_service"],"network_reachable":"adjacent_or_local","non_default_config":false,"product_category":"Fast DDS library","requires_auth":"none","summary":"A manipulated DATA Submessage triggers an integer overflow leading to heap-buffer-overflow, causing remote denial of service in eProsima Fast DDS.","user_interaction":"not_required","vuln_class":"integer_overflow"},"analysis_generated_by":"qwen3.8-flash-next","assigner":"GitHub_M","cpe":[{"product":"fast_dds","vendor":"eprosima"}],"cvss":{"score":9.7,"severity":"critical","source":"cna","vector":"CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H","version":"3.1"},"cwes":[{"id":"CWE-787","name":"Out-of-bounds Write"},{"id":"CWE-122","name":"Heap-based Buffer Overflow"}],"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.","ecosystems":[],"exploits":{"exploitdb":0,"first_seen":"2025-10-15","github_poc":1,"max_poc_stars":0,"metasploit":0,"nuclei":0,"refs":[{"date":"2025-10-15T16:17:27Z","kind":"github_poc","ref":"https://github.com/grimmmbo/ros2_CVE-2024-28231","stars":0,"title":"Demonstrating the usage of Fastrtps-DDS vulnerability CVE-2024-28231 within Ros2"}],"tier":"weaponised"},"has_fix":true,"headline":"Manipulated DATA Submessage causes a heap-buffer-overflow error","id":"CVE-2024-28231","indexable":true,"kev":null,"kind":"cve","links":{"ecosystem":null,"product":null,"products":[],"type":"integer_overflow","year":"2024"},"n_packages":0,"n_references":2,"next":{"headline":"Username Enumeration in CasaOS via bypass of CVE-2024-24766","id":"CVE-2024-28232"},"packages":[],"prev":{"headline":"Missing authorization in YouTrack","id":"CVE-2024-28230"},"products":["Fast-DDS"],"published":"2024-03-20","related":[{"cvss_score":10,"headline":"Security feature bypass in n/a","id":"CVE-2025-67108","kev_date_added":null,"published":"2025-12-23"},{"cvss_score":9.7,"headline":"Invalid DATA_FRAG Submessage causes a bad-free error","id":"CVE-2023-50716","kev_date_added":null,"published":"2024-03-06"},{"cvss_score":9.7,"headline":"Disconnect Vulnerability in RTPS Packets Used by SROS2","id":"CVE-2023-50257","kev_date_added":null,"published":"2024-02-19"},{"cvss_score":8.6,"headline":"Malformed DATA submessage leads to bad-free error in Fast-DDS","id":"CVE-2023-42459","kev_date_added":null,"published":"2023-10-16"},{"cvss_score":8.2,"headline":"FastDDS crash when publisher send malformed packet","id":"CVE-2024-30258","kev_date_added":null,"published":"2024-05-13"},{"cvss_score":8.2,"headline":"FastDDS heap buffer overflow when publisher sends malformed packet","id":"CVE-2024-30259","kev_date_added":null,"published":"2024-05-13"}],"sources":[{"class":"attribution","licence":"CVE Terms of Use (MITRE)","name":"CVE List","prefix":"CVE"},{"class":"attribution","licence":"US public information, NVD API terms","name":"NVD"},{"class":"attribution","licence":"CWE Terms of Use","name":"CWE (MITRE)"},{"class":"attribution","licence":"FIRST CVSS licence","name":"CVSS (FIRST)"},{"class":"open","licence":"CC0","name":"PoC-in-GitHub"}],"ssvc":{"automatable":"no","exploitation":"poc","technical_impact":"total"},"state":"PUBLISHED","updated":"2024-08-02","vendors":["eProsima"]},"summary":"A manipulated DATA Submessage triggers an integer overflow leading to heap-buffer-overflow, causing remote denial of service in eProsima Fast DDS.","url":"https://insights.sbomify.com/CVE-2024-28231/"}