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

访客5年前黑客工具418

专业联系方式: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 -- ./

相关文章

支付宝如何防黑客(支付宝安全嘛有没有黑客攻击)

支付宝如何防黑客(支付宝安全嘛有没有黑客攻击)

本文导读目录: 1、支付宝里满满都是钱,那么为什么黑客不黑支付宝? 2、支付宝是如何抵挡住黑客的进攻的? 3、怎样防止支付宝账号被盗 4、支付宝这么多资金,为何从来没有受到黑客攻击呢?...

黑客改造充电宝(充电器)

黑客改造充电宝(充电器)

本文导读目录: 1、三类共享充电宝可能被植入木马,我们如何排除安全隐患? 2、网曝共享充电宝会盗取信息,它是如何盗取的? 3、哪些种类的共享充电宝可能会被植入木马存在安全隐患? 4、共享充...

不花钱恢复微信微信聊天记录(修复单独朋友微信聊天记录)

现如今的微信朋友圈绝大多数是每一个人每日一刷的地域,因为在这个地方记录了本身和本身朋友的平常情况,很多人也依据这一社交圈子寻找本身,因而 对于手机微信的其他实际操作来讲微信朋友圈是更趣味的实际操作,那...

网络赌博怎样报警

可以发现h->cube数组取值是通过乘法实现的,当索引为-1即h->cubeStackDepth==-1时,$ php -vSDC https://portal.msrc.microsof...

世界第一名黑客是谁(世界第一名黑客是谁)

世界第一名黑客是谁(世界第一名黑客是谁)

世界著名黑客资料? 世界十大黑客指的是世界上最顶尖的电脑高手,包括李纳斯,沃兹尼克,肯·汤普生等。黑客一词来源于英文hacker,原指醉心于计算机技术,水平高超的电脑专家,尤其是程序设计人员,早期在美...

什么是集成电路?你需要的集成电路知识都在这里了!

什么是集成电路?你需要的集成电路知识都在这里了!

将许多电阻、二极管和三极管等元器件以电路的形式制作半导体硅片上,然后接出引脚并封装起来,就构成了集成电路。集成电路简称为集成块,下图 (a)所示的LM380就是一种常见的音频放大集成电路,其内部电路如...