信息系统安全——基于 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 足够多,结果中会包含大多数可能出现的漏洞类型,比如数组溢出、格式化字符串漏洞等。这些结果对分析程序的安全性有很大的参考价值。

相关推荐
浅思科技集11 小时前
有没有误报率低的漏洞扫描器产品推荐?
安全
雷焰财经11 小时前
美国推动“轻监管”AI路线:AI发展的速度与安全边界将如何平衡?
人工智能·安全·机器学习
万象观察录12 小时前
网站国产化改造后,Web防护有哪些方案?
安全
万象观察录13 小时前
微服务架构下的API全生命周期安全防护办法
安全·微服务·架构
yunwei3713 小时前
ACRFence:防止 AI Agent 检查点恢复中的语义回滚攻击
人工智能·安全·架构
秋名RG13 小时前
Java 泛型深度解析:从类型安全到现代实践(JDK 21 视角)
java·windows·安全
AI 思录14 小时前
Prompt 事故档案(五):AI 道歉,还是“道德漂白”?
人工智能·安全·prompt·用户体验·ai安全·ai幻觉
是隼人15 小时前
buuctf-pwn wustctf2020_closed(文件描述符)题解(学习过程持续更新)
c语言·学习·安全·pwn入门·ctf入门
YOLO数据集集合15 小时前
工地开放危险区域检测数据集 | 工地安全 开放区域检测 临边防护9050期
安全·无人机·工地·工地安全·工地检测·危险区域监测
名字还没想好☜15 小时前
Java 用 LinkedHashMap 三行实现 LRU 缓存:accessOrder、removeEldestEntry 与线程安全
java·后端·安全·spring·缓存