AFL初次尝试
看了一些fuzz的文章但是一直没有做过小的demo,这次算是入门级别的尝鲜。
AFL的安装
安装环境:vm虚拟机、Ubuntu18
- 首先检测LLVM和CLANG是否安装:
sudo apt-get install clang
sudo apt-get install llvm
安装时出现的问题:
E: 无法获得锁 /var/lib/dpkg/lock-frontend - open (11: 资源暂时不可用)
E: 无法获取 dpkg 前端锁 (/var/lib/dpkg/lock-frontend),是否有其他进程正占用它?
解决方案:
ps -e | grep apt
然后执行sudo kill 进程号
- 在目录下下载包:
wget http://lcamtuf.coredump.cx/afl/releases/afl-2.52b.tgz
tar -zxvf afl-2.52b.tgz
cd afl-2.52b
make
sudo make install
然后尝试使用afl-fuzz命令
选择目标程序
本人采用了网上的简单代码来进行测试
- 创建一个testfile文件夹,然后在该文件夹下创建测试文件afl_test.c,内容如下:
#include <stdio.h>
#include <stdlib