像(多臂)老虎机一样赚钱:用 T-Scheduler 提高模糊测试种子调度的胜算
密码学与安全
2023-12-11 v1
摘要
模糊测试是一种高度可扩展的软件测试技术,通过使用变异后的输入执行目标程序来发现其中的错误。在模糊测试活动的生命周期中,模糊器会积累那些能引发新的、有趣的目标行为的输入,并从中抽取输入进行进一步的变异。这迅速导致有大量输入可供选择,使得快速准确地选择出“最有希望”的输入进行变异变得具有挑战性。强化学习(RL)为这个“种子调度”问题提供了一个自然的解决方案:模糊器通过从过去的结果中学习来动态调整其选择策略。然而,现有的 RL 方法 (a) 计算成本高(降低了模糊器的吞吐量)和/或 (b) 需要超参数调整(降低了跨目标和输入类型的通用性)。为此,我们提出了 T-Scheduler,这是一个基于多臂老虎机理论的种子调度器,它无需任何超参数调整即可自动适应目标。我们对 T-Scheduler 进行了超过 35 CPU 年的模糊测试评估,并将其与 11 个最先进的调度器进行了比较。我们的结果表明,T-Scheduler 在错误发现和覆盖率扩展能力上都优于这 11 个调度器。
引用
@article{arxiv.2312.04749,
title = {Make out like a (Multi-Armed) Bandit: Improving the Odds of Fuzzer Seed Scheduling with T-Scheduler},
author = {Simon Luo and Adrian Herrera and Paul Quirk and Michael Chase and Damith C. Ranasinghe and Salil S. Kanhere},
journal= {arXiv preprint arXiv:2312.04749},
year = {2023}
}
备注
12 pages, 4 figures, Accepted paper at AsiaCCS2024