paperbot · PL 论文追踪

全部论文 待读 收藏

P2 Enhancing ROS System Fuzzing through Callback Tracing

通过回调追踪增强 ROS 系统模糊测试
ISSTA Proceedings of the 33rd ACM SIGSOFT International Symposium on Software Testing and Analysis2024匹配度 2/10 · 该论文研究 ROS 系统的动态模糊测试,属于动态程序分析与软件测试领域,与用户关注的静态分析、LLM/Agent、浮点程序分析及贝叶斯程序分析等方向均无直接关联。引用 7 inbox
Yuheng Shen, Jianzhong Liu, Yiru Xu, Hao Sun, Mingzhe Wang, Nan Guan, Heyuan Shi, Yu Jiang
crossref: 2026-09-12

AI 速览

一句话:提出 ROS 系统模糊测试器 R2D2,利用回调追踪与运行时状态引导提升覆盖率并发现漏洞。

针对现有 ROS 测试方法难以捕获复杂、有状态行为而导致模糊测试效果受限的问题,本文提出 R2D2,一种以 ROS 运行时状态为引导的系统模糊测试器。R2D2 采用系统化插桩策略,捕获系统运行时行为并实时刻画当前系统状态,从而更深入地理解系统行为,并更有效地探索 ROS 庞大的状态空间。作者在四个知名 ROS 应用上评估 R2D2,结果显示其代码覆盖率相较先进 ROS 模糊测试器 Ros2Fuzz 和 RoboFuzz 分别提升 3.91 倍和 2.56 倍,并发现 39 个此前未知的漏洞,其中 6 个已在 ROS 运行时和应用中修复。R2D2 的平均执行开销和内存开销分别为 10.4% 和 1.0%。

问题
现有 ROS 测试方法难以捕获复杂且具状态性的运行时行为,导致模糊测试覆盖率和漏洞发现能力有限。
方法
R2D2 通过系统化插桩捕获 ROS 运行时行为并实时刻画系统状态,以运行时状态引导模糊测试搜索,提升对大规模状态空间的探索效率。
评估
在四个知名 ROS 应用上评估,代码覆盖率较 Ros2Fuzz 和 RoboFuzz 分别提升 3.91 倍和 2.56 倍,发现 39 个未知漏洞且 6 个已修复,同时平均执行与内存开销仅为 10.4% 和 1.0%。
原文摘要(Abstract)

The Robot Operating System 2 (ROS) is the de-facto standard for robotic software development, with a wide application in diverse safety-critical domains. There are many efforts in testing that seek to deliver a more secure ROS codebase. However, existing testing methods are often inadequate to capture the complex and stateful behaviors inherent to ROS deployments, resulting in limited test- ing effectiveness. In this paper, we propose R2D2, a ROS system fuzzer that leverages ROS’s runtime states as guidance to increase fuzzing effectiveness and efficiency. Unlike traditional fuzzers, R2D2 employs a systematic instrumentation strategy that captures the system’s runtime behaviors and profiles the current system state in real-time. This approach provides a more in-depth understanding of system behaviors, thereby facilitating a more insightful explo- ration of ROS’s extensive state space. For evaluation, we applied it to four well-known ROS applications. Our evaluation shows that R2D2 achieves an improvement of 3.91× and 2.56× in code coverage compared to state-of-the-art ROS fuzzers, including Ros2Fuzz and RoboFuzz, while also uncovering 39 previously unknown vulnera- bilities, with 6 fixed in both ROS runtime and ROS applications. For its runtime overhead, R2D2 maintains an average execution and memory usage overhead with 10.4% and 1.0% in respect, making R2D2 effective in ROS testing.

链接与引用

DOI 原文 · PDF(开放获取) ·

BibTeX
@inproceedings{paperbot8510,
  title = {Enhancing ROS System Fuzzing through Callback Tracing},
  author = {Yuheng Shen and Jianzhong Liu and Yiru Xu and Hao Sun and Mingzhe Wang and Nan Guan and Heyuan Shi and Yu Jiang},
  booktitle = {ISSTA},
  year = {2024},
  doi = {10.1145/3650212.3652111}
}