paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Multi-Dimensional and Message-Guided Fuzzing for Robotic Programs in Robot Operating System

面向机器人操作系统(ROS)中机器人程序的多维度与消息引导模糊测试
ASPLOS Proceedings of the 29th ACM International Conference on Architectural Support for Programming Languages and Operating Systems, Volume 22024匹配度 1/10 · 论文研究的是 ROS 机器人程序的模糊测试,属于动态测试与缺陷检测;与用户核心关注的静态分析、LLM/Agent 结合、浮点程序分析及贝叶斯程序分析均无直接交集。虽然发现了较多真实缺陷并具有工业价值,但方向匹配度很低。引用 6 inbox
Jia-Ju Bai, Hao-Xuan Song, Shi-Min Hu
crossref: 2026-09-12dblp: 2026-09-12

AI 速览

一句话:提出 ROFER 框架,以维度级变异和消息特征覆盖引导 ROS 程序模糊测试,发现 88 个真实缺陷。

随着越来越多机器人程序基于机器人操作系统(ROS)实现,已有若干工作将模糊测试用于 ROS 程序以检测缺陷,但仍存在测试用例生成低效、程序反馈无效、通用性与自动化程度弱等主要局限。本文设计并实现了新的模糊测试框架 ROFER,相比现有 ROS 模糊测试方法引入两项新技术:其一为维度级变异方法,考虑每个输入维度对测试覆盖的贡献,从多个维度高效生成测试用例;其二为消息引导的模糊测试方法,采用名为消息特征(message feature)的新覆盖度量,反映受多个 ROS 节点影响下机器人可能的状态转移。作者在 ROS2 的 13 个常见机器人程序上评估 ROFER,共发现 88 个真实缺陷,其中 46 个已获 ROS 开发者确认;与四种现有最优 ROS 模糊测试方法相比,ROFER 发现的缺陷更多且测试覆盖率更高。

问题
现有 ROS 程序模糊测试方法存在测试用例生成低效、程序反馈无效以及通用性与自动化程度不足的问题,难以有效检测机器人程序缺陷。
方法
ROFER 采用维度级变异,依据各输入维度对测试覆盖的贡献从多维度生成测试用例;并采用消息引导的模糊测试,用新覆盖度量「消息特征」刻画多个 ROS 节点影响下机器人可能的状态转移。
评估
在 ROS2 的 13 个常见机器人程序上评估,发现 88 个真实缺陷(46 个已被 ROS 开发者确认),并与四种最优 ROS 模糊测试方法对比,缺陷更多、覆盖率更高。
原文摘要(Abstract)

An increasing number of robotic programs are implemented based on Robot Operating System (ROS), which provides many practical tools and libraries for robot development. To improve robot reliability and security, several recent approaches apply fuzzing to ROS programs for bug detection. However, these approaches still have some main limitations, including inefficient test case generation, ineffective program feedback and weak generality/automation. In this paper, we design a new fuzzing framework named ROFER, to effectively test robotic programs in ROS for bug detection. Compared to existing ROS fuzzing approaches, ROFER has two novel techniques: (1) a dimension-level mutation method that considers the contribution of each input dimension to testing coverage, to generate efficient test cases from multiple dimensions; (2) a message-guided fuzzing approach that uses a new coverage metric named message feature, to reflect the robot's possible state transitions affected by multiple ROS nodes. We evaluate ROFER on 13 common robotic programs in ROS2, and it finds 88 real bugs, 46 of which have been confirmed by ROS developers. We compare ROFER to four state-of-the-art ROS fuzzing approaches, and it finds more bugs with higher testing coverage.

链接与引用

DOI 原文 · DBLP

BibTeX
@inproceedings{BaiS024,
  title = {Multi-Dimensional and Message-Guided Fuzzing for Robotic Programs in Robot Operating System},
  author = {Jia-Ju Bai and Hao-Xuan Song and Shi-Min Hu},
  booktitle = {ASPLOS},
  year = {2024},
  doi = {10.1145/3620665.3640425}
}