量化二进制文件中可用代码路径
1. Clone项目
git clone https://github.com/mrash/afl-cov.git
2. 重编译项目
- 此时不需要再afl插桩,删掉rule.mak中插桩相关代码
- 删掉executor中的forkserver相关代码
make CFLAGS+="-fprofile-arcs -ftest-coverage" -j8
make fuzz-tests/cirrus_vga-test CFLAGS+="-fprofile-arcs -ftest-coverage"
3.执行程序
../afl-cov/afl-cov -d ../workout/usb-xhci-out --live --enable-branch-coverage --lcov-web-all -c ./hw/usb -e " ./fuzz-tests/usb-xhci < AFL_FILE"
4.查看结果
在 out/cov 目录中会产生结果
python -m SimpleHTTPServer 80