基于 SIVO 的精细化灰盒模糊测试
密码学与安全
2021-07-16 v2
摘要
我们从零设计并实现了一种称为 SIVO 的新型模糊测试器(fuzzer),其精细化了灰盒模糊测试的多个阶段。首先,SIVO 以两种方式精细化数据流模糊测试:(a) 它提供了一种新的污点推断引擎,仅需输入规模的对数级数量的测试即可推断所有程序分支对输入字节的依赖性;(b) 它部署了一种通过直接且高效地求解不等式组来反转分支的新方法。其次,我们的模糊测试器以简单且易于实现的方法精细化了代码覆盖率的精确跟踪与检测。最后,SIVO 通过参数化模糊测试的所有阶段并在模糊测试过程中动态选择最优值,精细化了参数与策略的选择。因此该模糊测试器可轻松适应目标程序并快速提升覆盖率。我们在 27 个流行基准上将我们的模糊测试器与另外 11 个最先进的灰盒模糊测试器进行比较。我们的评估表明,SIVO 在代码覆盖率与所发现漏洞数量两方面均得分最高。
引用
@article{arxiv.2102.02394,
title = {Refined Grey-Box Fuzzing with SIVO},
author = {Ivica Nikolic and Radu Mantu and Shiqi Shen and Prateek Saxena},
journal= {arXiv preprint arXiv:2102.02394},
year = {2021}
}