Vulnerability · Published Apr 2, 2025 · Assigned by canonical

CVE-2024-39780Use of unsafe yaml load in dynparam

High 7.8

In plain English

A high-severity unsafe deserialization in Robot Operating System (ROS) from Open Source Robotics Foundation. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 0.4% (higher than 35% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.

Severity (CVSS 3.1)7.8High
Exploit odds (30 days)0.4%top 65.2% of all CVEs
Exploited in the wildNo reportsCISA SSVC: none
Attack toolingNoneno public tooling known

Official description

A YAML deserialization vulnerability was found in the Robot Operating System (ROS) 'dynparam', a command-line tool for getting, setting, and deleting parameters of a dynamically configurable node, affecting ROS distributions Noetic and earlier. The issue is caused by the use of the yaml.load() function in the 'set' and 'get' verbs, and allows for the creation of arbitrary Python objects. Through this flaw, a local or remote user can craft and execute arbitrary Python code.

Affected packages & fixed versions

EcosystemPackageFixed inAdvisory
Debian:12ros-dynamic-reconfigureno fix listedDEBIAN-CVE-2024-39780
Debian:13ros-dynamic-reconfigureno fix listedDEBIAN-CVE-2024-39780
Debian:14ros-dynamic-reconfigure1.7.6-1DEBIAN-CVE-2024-39780
Ubuntu:22.04:LTSros-dynamic-reconfigureno fix listedUBUNTU-CVE-2024-39780

Affected products (as reported)

VendorProductVersions
Open Source Robotics Foundation Robot Operating System (ROS) Noetic NinjemysMelodic MoreniaKinetic KameIndigo Igloo

Weakness: CWE-502, CWE-20 · Vector: CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H

References