fuzzing工具之honggfuzz的安装与使用

fuzzing工具之honggfuzz的安装与使用

honggfuzz介绍:

honggfuzz是由谷歌开发的,和AFL(点击这里查看AFL的安装与使用)类似,的反馈驱动,使用遗传算法来变异的fuzzer。

honggfuzz是一个多进程和多线程的fuzzer,所以用honggfuzz进行fuzzing的速度非常快,在安全漏洞发现中的表现十分突出。

honggfuzz的安装与使用

和AFL类似,我们首先从github上下载honggfuzz。

git
然后运行

1
2
make
make install

来安装honggfuzz

make

进行fuzzing

在安装好honggfuzz之后,我们就可以来fuzzing程序了,但是在fuzzing程序之前,我们需要对程序进行插桩。运行

1
./configure CC="hfuzz-gcc" CXX="hfuzz-g++"

就可以完成对程序进行插桩。

以tiff软件为例,我们可以运行下面的命令对程序进行插桩,然后运行make;make install命令安装tiff软件。

compile

然后我们就可以fuzzing程序了。
其中 -f 选项是fuzzer的初始输入,tiff_seed文件夹中包含了很多tiff格式的文件。下图是fuzzing代码。
fuzz
其中 -f 选项后面指向程序的输入文件夹。
-w 之后跟的是程序的输出结果。

-t 选项设定timeout

—run-time 选项制定fuzzer运行的时间

-z 表示采用插桩模式,对源码进插桩
FILE : 相当于AFL中的@@, 在运行时被程序的输入文件替换。

下图所示是执行完上图脚本后的fuzzing的面板。

panel