参考【AFL(八)】用 AFL 对 LAVA-M 进行 Fuzz(LAVA上)
下载 && 前期准备
wget http://panda.moyix.net/~moyix/lava_corpus.tar.xz
sudo apt-get install libacl1-dev
设置环境
export CC=afl-gcc
export CXX=afl-g++
运行脚本
./validate.sh
这里没成功
- 下载 iJon 和 iJon-data 数据集
git clone https://github.com/RUB-SysSec/ijon.git
git clone https://github.com/RUB-SysSec/ijon-data.git
afl
make
sudo make install (-j4 如果支持多核可以用-j参数,能加快速度)
- 安装 llvm 和 clang
sudo apt-get install -y clang-6.0
运行
cd llvm_mode
LLVM_CONFIG=llvm-config-6.0 CC=clang-6.0 make
注意这里的clang版本要和github上一致
- 对比
按照afl fuzz的方法先对没有注释的small.c文件fuzz
然后注释small.c,使用afl-clang-fast编译small.c之后用afl+ijon进行fuzz