PX4 — это стек автопилота с открытым исходным кодом для дронов и беспилотных транспортных средств. Версии 1.17.0-rc2 и ниже уязвимы к переполнению буфера на основе стека через MavlinkLogHandler и запускаются через запрос журнала MAVLink. Буфер LogEntry.filepath имеет размер 60 байт, но функция sscanf анализирует пути из файла списка журналов без указания ширины, что позволяет пути длиной более 60 символов переполнять буфер.
Злоумышленник, имеющий доступ к ссылке MAVLink, может инициировать это, сначала создав глубоко вложенные каталоги через MAVLink FTP, а затем запросив список журналов. Задача полетного контроллера MAVLink аварийно завершает работу, теряя возможности телеметрии и команд, что приводит к DoS. Эта проблема исправлена в этом коммите: https://github.com/PX4/PX4-Autopilot/commit/616b25a280e229c24d5cf12a03dbf248df89c474.
Показать оригинальное описание (EN)
PX4 is an open-source autopilot stack for drones and unmanned vehicles. Versions 1.17.0-rc2 and below are vulnerable to Stack-based Buffer Overflow through the MavlinkLogHandler, and are triggered via MAVLink log request. The LogEntry.filepath buffer is 60 bytes, but the sscanf function parses paths from the log list file with no width specifier, allowing a path longer than 60 characters to overflow the buffer. An attacker with MAVLink link access can trigger this by first creating deeply nested directories via MAVLink FTP, then requesting the log list. The flight controller MAVLink task crashes, losing telemetry and command capability and causing DoS. This issue has been fixed in this commit: https://github.com/PX4/PX4-Autopilot/commit/616b25a280e229c24d5cf12a03dbf248df89c474.
Характеристики атаки
Последствия
Строка CVSS v3.1