信息系统安全——基于 AFL 的模糊测试

实验 3 基于 AFL 的模糊测试

3.1 实验名称

《基于 AFL 的模糊测试》

3.2 实验目

1 、熟悉模糊测试方法

2 、熟悉模糊测试工具 AFL 的使用

3.3 实验步骤及内容

1 、 安装 AFL

2 、 任意选择一个有源代码的样本

这里采用教材上一个包含栈溢出漏洞的样本。

3 、 结合源代码分析用 AFL 进行模糊测试后的结果,将主要步骤和分析结果记录到实验报告中,可截图说明。
首先是用 afl-gcc 编译并插桩。

接着是用 afl-fuzz 进行模糊测试。

在 cycles done 变成绿色之后可以停止。可以看到检测出了两条路径和一个 crash

crashes 存储了导致崩溃或异常的测试用例,queue 存储了不同路径的测试用例,plot_data 是对测试结果的可视化。

进入 crashes 目录,使用xxd 可以看到导致崩溃的测试用例。显然这里是因为数组越界导致的溢出。

3.4 实验关键过程及其分析

在使用 afl 模糊测试时,crashes 目录会记录导致崩溃的输入。如果积累的 crashes 足够多,结果中会包含大多数可能出现的漏洞类型,比如数组溢出、格式化字符串漏洞等。这些结果对分析程序的安全性有很大的参考价值。

相关推荐
xy18990几秒前
C++线程安全是如何保证的?线程不安全是如何出现的?有什么处理方案呢
开发语言·c++·安全
Canon_YK10 小时前
安全隔离上网的有效途径:沙箱
服务器·网络·安全·web安全·网络安全
莱茶荼菜10 小时前
c++ 线程安全与线程管理
开发语言·c++·安全
马叔聊跨境11 小时前
如何使用代理 IP 防止多个 Facebook 帐户关联 - 最佳实践
网络·tcp/ip·安全·ip
Faris_yzf13 小时前
人工智能给文化安全带来挑战
人工智能·科技·安全
墨痕诉清风13 小时前
OpenSSH漏洞扫描(CVE-2024-6387、CVE-2006-5051、CVE-2008-4109)
安全
FreeBuf_14 小时前
SherlockChain:基于高级AI实现的智能合约安全分析框架
人工智能·安全·智能合约
julien_qiao16 小时前
【安全开发】内网扫描器
安全·网络安全·go·个人开发
Qspace丨轻空间16 小时前
气膜建筑消防设计:安全与创新的完美结合—轻空间
安全·娱乐