专业联系方式:honggfuzz缝隙发掘技能原理剖析

访客4年前黑客工具367

专业联系方式:honggfuzz缝隙发掘技能原理剖析

Google开发的AFL(WinAFL)、libfuzzer和honggfuzz是最著名的三大根据代码覆盖率的fuzzer。网上关于AFL(WinAFL)的剖析文章较多,而关于后两者的剖析文章较少。之前泉哥现已写过关于honggfuzz的文章:honggfuzz缝隙发掘技能深究系列。本文是自己学习期间的一个笔记,读者也可当成对泉哥文章的一点弥补。主张读者先阅览泉哥的文章,本文不会再触及重复的内容。
比较其它的fuzzer,honggfuzz有以下特色:
1.含有多个fuzz实在程序(Apache/OpenSSL等等)的示例
2.支撑耐久型fuzzing(Persistent Fuzzing)方式,即长生命周期进程重复调用被fuzz的API
3.支撑Linux/FreeBSD/NetBSD/MacOS/Windows(CygWin)/Android等简直全部干流操作系统
4.支撑根据软件和根据硬件(分支计数(branch counting),指令计数(instruction counting),Intel *** S(Branch Trace Store),Intel PT(Processor Tracing))的反应驱动(Feedback-Driven)
[1]、https://www.microsoft.com/download/details.aspx?id=36982
5.运用底层接口监督进程(linux和NetBSD下运用ptrace),与其它fuzzer比较更| Set-Cookie: _gorilla_csrf=MTU2MzE5MDkwMHxJalZOT0c4MU0zbEJPVmhsVDI1MlRrSTVWM3BJTlhoQlRHdzNSa2hUZEcxc2FFMUtMMDVpVVVocWMxRTlJZ289fCCWbHBsW-9n90ew27ro5Jb1zXiF11Mr1BFa192sGwFS; HttpOnly; Secure有或许从crash中发现并陈述被劫持/疏忽的信号(被fuzz的程序或许截获并躲藏)
 
全体结构
我们首要仍是来看一下代码的全体目录。
android&mac&linux&netbsd&posix&arch.h:对不同操作系统的支撑,头文件统一在arch.h,接下来剖析的代码以linux为例。该目录下有这些文件:
arch.c:arch.h中函数的完结
bfd.c:根据bfd(Binary File Descriptor)完结解析符号/反汇编等功能
perf.c/pt.c:经过perf来运用PT,跟根据硬件的反应驱动有关
trace.c:子进程暂停/停止时剖析记载
unwind.c:根据libunwind完结栈回溯
docs:文档
examples:运用honggfuzz进行fuzz的一些比如
hfuzz_cc&libhfuzz:hfuzz_cc编译被fuzz程序的源代码,添加libhfuzz.a库。libhfuzz目录下有这些文件:
instrument.c:完结各种SanitizerCoverage需求的回调函数
linux.c:封装了libhfcommon/ns.c中的nsEnter/nsIfaceUp/nsMountTmpfs等函数
memorycmp.c:对libc/Apache/SSL/libXML/Samba等程序中触及比较的函数封装,添加instrumentUpdateCmpMap函数,两个参数分别是函数的回来地址和之一次呈现不持平字符的方位。之一次呈现不持平字符的方位越靠后两个值越挨近持平,越有或许走到新的途径

fetch.c/persistent.c:这儿面的代码主要是用于耐久型fuzzing方式的,有两种 *** 运用该方式:
一是把被fuzz的API放在LLVMFuzzerTestOneInput中,然后运用hfuzz_cc/hfuzz_clang test.c -o test指令编译,honggfuzz -P -- ./test工作fuzzer

二是在调用被fuzz的API之前添加HF_ITER获取输入,然后运用hfuzz_cc/hfuzz_clang test.c -o test ~/honggfuzz/libfuzz/libfuzz.a指令编译,honggfuzz -P -- ./

相关文章

领克01发布获认可,定位高端汽车行列

每日要闻国内不少汽车厂商都开始迈向高端化品牌建设,无论是不死不活的奇瑞观致汽车,还是销量火爆长城魏派,都似乎证向全世界证明中国人的造车能力的确不弱。作为这几年的一批黑马,吉利汽车与沃尔沃汽车的高端合资...

北京新发地猪肉批发大厅复市-北京新发地复工时

据了解,9月28日晚上10点开始,北京新发地猪肉批发大厅复市,这意味着北京新发地的疫情已经完全结束,而且不存在疫情传播的风险,不过需要注意的是,目前北京新发地猪肉批发大厅禁止销售所有的进口肉类冻品,北...

我们吃莲藕的哪个部位(吃莲藕6个禁忌)

  让我们一起休闲娱乐。点一下“大家来谈一谈吧”定阅   重庆市简直个好去处   不但有山城火锅   还有一个街边油爆用食油   合乎我的食欲   有各种各样皮薄肉厚的酱包   也有骨头汤和莲藕汤,充...

伤口不愈合怎么办(伤口一直不愈合)

伤口不愈合怎么办(伤口一直不愈合)

伤口不愈合怎么办(伤口一直不愈合)在日常生活中,我们不免会因为磕磕碰碰而导致出现结痂,这个时候伤口部位是比较脆弱的,皮肤的抵抗能力也比较弱。那么通常来说,结痂多久会自然脱落呢,脱落之后需要注意哪些事项...

2020福吧新年传奇,1月30日18点准时开放

去年的传奇版本玩的有点腻,原本不准备开了。 应不少假期延伸网友的要求,虽然年都过完了,照样开一个。 2020福吧传奇为复古180金币合击版本,以经由多次开区的商业版本为基础,修改成了半公益版本...

查看老公和别人的聊天记录怎么查(怎么样可以查到老公和别人的聊天记录)

查看老公和别人的聊天记录怎么查(怎么样可以查到老公和别人的聊天记录)

本文导读目录: 1、亲:请问一下我怎么才能看到我老公和别人聊天? 2、老公一直躲着我聊微信,我想看他跟别人聊些什么?怎么才能查询 3、知道老公手机的开机密码,怎么找回他和别人的聊天记录?...