This commit is contained in:
van Hauser
2019-10-21 11:28:32 +02:00
parent d0bbef74ef
commit be6bc155eb
7 changed files with 28 additions and 27 deletions

View File

@ -104,6 +104,13 @@ man: $(MANPAGES)
tests: source-only
@cd test ; ./test.sh
performance-tests: performance-test
test-performance: performance-test
performance-test: source-only
@cd test ; ./test-performance.sh
help:
@echo "HELP --- the following make targets exist:"
@echo "=========================================="
@ -307,7 +314,7 @@ install: all $(MANPAGES)
install -m 755 $(PROGS) $(SH_PROGS) $${DESTDIR}$(BIN_PATH)
rm -f $${DESTDIR}$(BIN_PATH)/afl-as
if [ -f afl-qemu-trace ]; then install -m 755 afl-qemu-trace $${DESTDIR}$(BIN_PATH); fi
#if [ -f afl-gcc-fast ]; then set e; install -m 755 afl-gcc-fast $${DESTDIR}$(BIN_PATH); ln -sf afl-gcc-fast $${DESTDIR}$(BIN_PATH)/afl-g++-fast; install -m 755 afl-gcc-pass.so afl-gcc-rt.o $${DESTDIR}$(HELPER_PATH); fi
if [ -f afl-gcc-fast ]; then set e; install -m 755 afl-gcc-fast $${DESTDIR}$(BIN_PATH); ln -sf afl-gcc-fast $${DESTDIR}$(BIN_PATH)/afl-g++-fast; install -m 755 afl-gcc-pass.so afl-gcc-rt.o $${DESTDIR}$(HELPER_PATH); fi
ifndef AFL_TRACE_PC
if [ -f afl-clang-fast -a -f libLLVMInsTrim.so -a -f afl-llvm-rt.o ]; then set -e; install -m 755 afl-clang-fast $${DESTDIR}$(BIN_PATH); ln -sf afl-clang-fast $${DESTDIR}$(BIN_PATH)/afl-clang-fast++; install -m 755 libLLVMInsTrim.so afl-llvm-pass.so afl-llvm-rt.o $${DESTDIR}$(HELPER_PATH); fi
else

View File

@ -1,8 +1,8 @@
# american fuzzy lop plus plus (afl++)
Release Version: 2.57c
Release Version: 2.58c
Github Version: 2.57d
Github Version: 2.58d
includes all necessary/interesting changes from Google's afl 2.56b
@ -52,13 +52,13 @@
A more thorough list is available in the PATCHES file.
| Feature/Instrumentation | LLVM | GCC | QEMU | Unicorn |
| ----------------------- |:----:|:---:|:----:| -------:|
| laf-intel / CompCov | x | | x | x |
| NeverZero | x(1)| x | x | x |
| Persistent mode | x | | x | |
| Whitelist | x | | | |
| InsTrim | x | | | |
| Feature/Instrumentation | AFL-GCC | LLVM_MODE | GCC_PLUGIN | QEMU_MODE | Unicorn |
| ----------------------- |:-------:|:---------:|:----------:|:---------:|:-------:|
| laf-intel / CompCov | | x | | x | x |
| NeverZero | X | x(1) | | x | x |
| Persistent mode | | x | X | x | |
| Whitelist | | x | X | | |
| InsTrim | | x | | | |
(1) only in LLVM >= 9.0 due to a bug in llvm in previous versions

5
TODO
View File

@ -7,11 +7,8 @@ afl-fuzz:
- test the libmutator actually works and does not run infinite (need an example though)
gcc_plugin:
- needs to be rewritten
- whitelist support
- skip over uninteresting blocks
- laf-intel
- neverZero
- laf-intel
qemu_mode:
- update to 4.x (probably this will be skipped :( )

View File

@ -13,14 +13,16 @@ Want to stay in the loop on major new features? Join our mailing list by
sending a mail to <afl-users+subscribe@googlegroups.com>.
----------------------
Version ++2.57d (dev):
----------------------
--------------------------
Version ++2.58c (release):
--------------------------
- reverted patch to not unlink and recreate the input file, it resulted in performance loss
- reverted patch to not unlink and recreate the input file, it resulted in
performance loss of ~10%
- added test/test-performance.sh script
- (re)added gcc_plugin, fast inline instrumentation is not yet finished
- added gcc_plugin tests
- (re)added gcc_plugin, fast inline instrumentation is not yet finished,
however it includes the whitelisting and persistance feature! by hexcoder-
- gcc_plugin tests added to testing framework
--------------------------------

View File

@ -156,7 +156,3 @@ depending on whether the input loop is being entered for the first time or
executed again. To avoid spurious warnings, the feature implies
AFL_NO_VAR_CHECK and hides the "variable path" warnings in the UI.
PS. Because there are task switches still involved, the mode isn't as fast as
"pure" in-process fuzzing offered, say, by LLVM's LibFuzzer; but it is a lot
faster than the normal fork() model, and compared to in-process fuzzing,
should be a lot more robust.

View File

@ -6,8 +6,7 @@ Using afl++ with partial instrumentation
that are interesting to you using the gcc instrumentation provided by
afl++.
Originally developed by Christian Holler (:decoder) <choller@mozilla.com>,
adapted to gcc plugin by hexcoder-.
Plugin by hexcoder-.
## 1) Description and purpose

View File

@ -26,7 +26,7 @@
/* Version string: */
#define VERSION "++2.57d" // c = release, d = volatile github dev
#define VERSION "++2.58c" // c = release, d = volatile github dev
/******************************************************
* *