摘要
针对AFL边覆盖不全、未充分利用边覆盖信息和有效字节信息的问题,提出了改进方法。首先,设计了新的种子选择算法,在一轮循环中可完全覆盖所有已发现的边;其次,按边覆盖热度对路径评分,以此调整种子的测试次数;最后,对有效字节进行更多的变异。基于上述方法实现了新的fuzzing工具—efuzz。实验表明,efuzz的平均边覆盖数比AFL和AFLFast分别增加了5%和9%;在LAVA-M测试集中,efuzz发现的漏洞数超过了AFL;在常用软件中,efuzz发现了3个新的CVE漏洞。所提方法可以有效提高fuzzing的边覆盖率、提升漏洞发现能力,具有实用性。
- 单位