一句话:将模糊测试与自动程序修复统一视为搜索问题,提出补丁调度算法 Casino,并开源仿真工具 SimAPR。
本文在模糊测试(fuzzing)与自动化程序修复(APR)之间建立联系,指出两者本质上都可视为搜索问题,从而可以把模糊测试领域的经验迁移到 APR 中。论文分为两部分:第一部分系统阐述 fuzzing 与 APR 在搜索空间、搜索目标与搜索策略上的相似性;第二部分基于这一视角提出新的补丁调度(patch-scheduling)算法 Casino,旨在提升 APR 过程中对候选补丁的搜索效率。作者通过实验对 Casino 与已有补丁调度算法进行比较,结果表明 Casino 在搜索效率上优于现有算法。此外,论文还发布 SimAPR 仿真工具,用于评估新的补丁调度算法,以推动该方向的开放科学与可复现研究。
In this work, we present a novel approach that connects two closely-related topics: fuzzing and automated program repair (APR). The paper is divided into two parts. In the first part, we describe the similarities between fuzzing and APR both of which can be viewed as a search problem. In the second part, we introduce a new patch-scheduling algorithm called Casino, which is designed from a fuzzing perspective to enhance search efficiency. Our experiments demonstrate that Casino outperforms existing algorithms. We also promote open science by sharing SimAPR, a simulation tool that can be used to evaluate new patch-scheduling algorithms.