模板文件:选取正常的文件(在此文件基础上进行变异)
目标路径:存放变异样本的路径。选日志前一定要保证路径存在.
后缀名:填写样本的后缀名
宿主程序:要挖掘软件的路径
挖掘过程:
1 进行样本生成
2 样本生成的文件进行挖掘
然后介绍选项窗口
选项窗口包括一些高级选项
异常日志:存放异常信息的日志. 选日志前一定要保证路径存在。
运行时间:对每一个样本处理的生命周期。 不同性能的计算机,和不同的测试目标(浏览器,播放器,还是图片查看器) 对这个数值要求是不同的。数值过大会降低实验效率,浪费能源。数值多小则会让测试无法正常进行。
开启速率:多少时间启动一个开启线程。
合理配置好运行时间和开启速率这2个数值,可以大大提高fuzz效率。
如图:运行时间是开启速率的4倍,基本上程序是在四进程上运行。
引擎1: 适合较小文件的漏洞挖掘 主要用于挖掘整数溢出的漏洞。效率较低,覆盖面较广。
引擎2: 用于较大文件的漏洞挖掘(至少大于1KB),主要用于挖掘缓冲区溢出漏洞。
更多引擎正在开发中。
忽略异常这个选项用于异常误报的处理。这里不再讨论。
更多功能正在开发中。下面用他对sdemo视频工具做fuzz。
2.smv是我提前做个一个标准视频样本。
我们选择引擎2 对他生成畸形样本。
点击生成文件。
几秒钟后一句生成完毕
打开文件夹,这里已经生成了大量样本。
这时候我们点击fuzzing。
这时候程序正在高负荷的fuzzing,并且是多线程的哦!
已经挖掘一部分了,由于时间问题,我提前结束了fuzz
在logo日志内,我们发现了异常日志 某日志现实687号文件出现异常
手动验证下,确实异常了。
其实这就是一个缓冲区溢出漏洞。