一句话:研究灰盒模糊测试中未来覆盖率速率的外推预测,以支撑基于覆盖速率的停止策略。
灰盒模糊测试可以一直运行,但随着资源投入增加,覆盖率速率持续下降,模糊测试器的效用也随之降低。为处理覆盖率与资源的权衡,可设置停止策略:当每单位时间新增覆盖低于阈值时终止 campaign。论文因此研究:在 campaign 进行中能否预测未来某时刻的覆盖率速率;当预测范围或当前 campaign 长度增加时,预测效果如何变化;以及如何处理灰盒模糊测试固有的自适应偏差——样本并非独立同分布。
A fuzzer can literally run forever. However, as more resources are spent, the coverage rate continuously drops, and the utility of the fuzzer declines. To tackle this coverage-resource tradeoff, we could introduce a policy to stop a campaign whenever the coverage rate drops below a certain threshold value, say 10 new branches covered per 15 minutes. During the campaign, can we predict the coverage rate at some point in the future? If so, how well can we predict the future coverage rate as the prediction horizon or the current campaign length increases? How can we tackle the statistical challenge of adaptive bias, which is inherent in greybox fuzzing (i.e., samples are not independent and identically distributed)?