Fuzz

在《Fuzzing(模糊测试)的前世今生(上)》和《Fuzzing(模糊测试)的前世今生(中)》我们讲解了模糊测试技术的由来、技术原理和底层算法,本篇我们为大家简述一下模糊测试的实践应用,让大家对它有更深的了解。
在上一篇《Fuzzing(模糊测试)的前世今生(上)》中,我们讲解了模糊测试技术的由来,本篇我们重点为大家阐述一下模糊测试的技术原理和底层算法。
之前我们在《Fuzzing(模糊测试)技术,你真的了解吗?》一文中提及了模糊测试概念的兴起,描述比较简单。
本文的作者设计了一个工具GFuzz,用来针对channel-related concurrency bug进行挖掘。首先需要定位可能引入bug的并发channel,并对程序完成改写与编译,使之支持channel中信息的乱序到达。
在前两篇文章中,我分析了afl-gcc的相关处理逻辑。简单来说,afl-gcc会将必要的函数以及桩代码插入到我们的源汇编文件中,这样,经过编译的程序将会带有一些外来的函数。但是。这些函数到底是怎样生效的呢,在本篇文章中,我将对AFL的主逻辑,也就是afl-fuzz进行分析。
​ 在第二部分中,我将重点介绍如何构建我们自己的自定义 ASAN 拦截器,以便在实现自定义内存池时捕获内存错误,以及如何拦截文件系统系统调用以检测目标应用程序中的逻辑错误。
​ 我将分三部分详细介绍我的 Apache fuzzing 研究。在第一部分中,我将简要介绍 Apache HTTP 的工作原理,并让您深入了解自定义 mutator 以及如何将它们有效地应用于 HTTP 协议。
在学习了Fishing for Deep Bugs with Grammars后迫不及待的想要上手试试Nautilus去fuzz一些CTF中遇到的解释器类型的题目。正好项目也给出了一个target,下面记录了我的实践过程。
Snapdragon是由高通技术公司设计和销售的一套用于移动终端的系统芯片(SoC)半导体产品。单个SoC可能包括多个CPU内核、Adreno图形处理单元(GPU)、Snapdragon无线调制解调器、Hexagon数字信号处理器(DSP)、Qualcomm Spectra图像信号处理器(ISP)和其他硬件。
在这次护网时就已产生了魔改ysoserial的想法, 原因是其本身自携带了许多的反序列化Gadgget,并且frohoff也在内部适配了许多的Util,让后续添加Gadget更加的方便,同时其模式为exploit-payloads,如果对ysoserial内部做改动就不需要将其作为lib加入其他项目中,也比较方便。