AFL Fuzz 不同架构的二进制文件

1 篇文章 0 订阅

AFL Fuzz 不同架构的二进制文件

AFL 提供了Fuzz闭源程序的QEMU mode ,如果想用AFL进行不同架构的闭源程序进行模糊测试,主要是依赖于AFL所用的QEMU支持的架构,所以主要是关注:./build_qemu_support.sh 的执行过程。
查看QEMU支持的架构:

在这里插入图片描述
以64位arm为例:

~/aflnet/qemu_mode$ CPU_TARGET=aarch64 ./build_qemu_support.sh

然后测试下能不能将arm64的文件运行起来:
在这里插入图片描述当然了为了方便考虑这里采用了一个静态连接的Arm64 的程序 ,对于动态链接需要考虑其加载库的问题。

在这里插入图片描述成功的运行了!虽然有些慢。

【参考资料】

  1. https://www.gandalf.site/2019/01/aflafl-qemufuzz.html
AFL(American Fuzzy Lop)是一款非常受欢迎的模糊测试工具,可以用于发现软件程序中的漏洞和错误。而QEMU是一款开源的虚拟机监控程序,可以模拟不同的系统架构,用于测试和调试。 在进行AFL QEMU测试二进制之前,我们首先需要安装AFL和QEMU这两个工具。安装完成后,我们可以通过以下步骤进行测试: 1. 准备一个待测试的二进制文件,可以是目标软件程序的可执行文件; 2. 使用AFL二进制文件进行处理,将其变成可模糊测试的目标; 3. 设置AFL和QEMU的参数,如模糊测试的目标文件、输入样本和输出文件等; 4. 运行AFL QEMU,开始进行模糊测试。AFL会根据设置的参数,生成各种变异的输入样本,并将其输入到待测试的二进制文件中; 5. QEMU会模拟执行这些输入样本,并监控目标程序的执行过程。它会在发现异常情况时,如程序崩溃或产生错误输出,记录下这些情况; 6. 模糊测试结束后,AFL会生成一个测试报告,包含了发现的漏洞和错误。我们可以根据这些报告,进行漏洞修复或错误修正。 通过AFL QEMU测试二进制,我们可以有效地发现软件程序中的潜在问题,提高程序的安全性和稳定性。同时,由于AFL和QEMU都是开源工具,可以根据需要进行自定义设置和扩展,以满足不同测试需求。总之,AFL QEMU测试二进制是一种非常有效的方法,可以帮助开发人员提升软件质量和性能。
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值