文件名称:Kleenex:围绕KLEE和AFL的C ++包装器,可进行智能的覆盖指导的模糊测试。 在MWR Infosecurity进行研究时开发
文件大小:1.65MB
文件格式:ZIP
更新时间:2024-05-17 06:36:30
LLVM
描述 在进行模糊测试时,发现崩溃的可能性随着代码覆盖率的增加而增加。 我研究的前提是开发一种智能的白盒模糊检测方法,以引起内存损坏。 白盒程序模糊测试可以描述为发送有效载荷,以验证是否击中了所有代码路径。 简而言之,这项研究的过程是使用程序路径分析来生成测试用例,并在这些初始测试用例上应用基于变异的模糊测试技术。 为了进行路径分析,符号虚拟机Klee为程序中的每个可发现路径生成了唯一的输入。 该过程将在帖子的实施部分中进一步说明。 AFL(American Fuzzy Lop)将其遗传算法和语义分析应用于生成的Klee输出到模糊程序。 考虑到这一点,我围绕Klee和AFL开发了一个全面的C ++包装器Kleenex,该包装器可以使用初始Klee分析启动各种类型的afl-fuzz线程。 KLEENEX 当前路径信息在Makefile和头文件的#define语句中进行了硬编码。 这些必须修改