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 products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| Open Source Robotics Foundation | Robot Operating System (ROS) | Noetic Ninjemys, Melodic Morenia, Kinetic Kame, Indigo Igloo | — |
Fixed in Linux distributions
Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.
Debian
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian 14 | ros-dynamic-reconfigure | 1.7.6-1 | — |
| Debian 13 | ros-dynamic-reconfigure | No fix yet | — |
| Debian 12 | ros-dynamic-reconfigure | No fix yet | — |
Ubuntu
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu 22.04 LTS | ros-dynamic-reconfigure | No fix yet | — |
| Ubuntu 20.04 LTS | ros-dynamic-reconfigure | No fix yet | — |
| Ubuntu 18.04 LTS | ros-dynamic-reconfigure | No fix yet | — |
| Ubuntu 16.04 LTS | ros-dynamic-reconfigure | No fix yet | — |