diff options
author | van Hauser <vh@thc.org> | 2020-06-09 19:25:09 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-06-09 19:25:09 +0200 |
commit | 12bdefe00e38cdc3dd8cb028eeac325ab2e94e16 (patch) | |
tree | 0d321d362a19ff19a4a98dcd1b9b72601945695f /README.md | |
parent | 748238d6ab4aeb7f34958d4c37c5ef200ad22463 (diff) | |
parent | 81829d132bebcb42c0e289bb5788b8f2b29c1599 (diff) | |
download | afl++-12bdefe00e38cdc3dd8cb028eeac325ab2e94e16.tar.gz |
Merge pull request #392 from AFLplusplus/dev
Push to master
Diffstat (limited to 'README.md')
-rw-r--r-- | README.md | 23 |
1 files changed, 8 insertions, 15 deletions
diff --git a/README.md b/README.md index 5ebd6b6b..76f510c8 100644 --- a/README.md +++ b/README.md @@ -62,7 +62,7 @@ * LLVM mode Ngram coverage by Adrian Herrera [https://github.com/adrianherrera/afl-ngram-pass](https://github.com/adrianherrera/afl-ngram-pass) - A more thorough list is available in the PATCHES file. + A more thorough list is available in the [PATCHES](docs/PATCHES.md) file. | Feature/Instrumentation | afl-gcc | llvm_mode | gcc_plugin | qemu_mode | unicorn_mode | | ----------------------- |:-------:|:---------:|:----------:|:----------------:|:------------:| @@ -134,6 +134,8 @@ For everyone who wants to contribute (and send pull requests) please read ## Building and installing afl++ An easy way to install afl++ with everything compiled is available via docker: +You can use the [Dockerfile](Dockerfile) (which has gcc-10 and clang-11 - +hence afl-clang-lto is available!) or just pull directly from the docker hub: ```shell docker pull aflplusplus/aflplusplus docker run -ti -v /location/of/your/target:/src aflplusplus/aflplusplus @@ -149,6 +151,8 @@ sudo apt install build-essential libtool-bin python3-dev automake flex bison lib make distrib sudo make install ``` +It is recommended to install the newest available gcc and clang and llvm-dev +possible in your distribution! Note that "make distrib" also builds llvm_mode, qemu_mode, unicorn_mode and more. If you just want plain afl then do "make all", however compiling and @@ -193,17 +197,6 @@ These build options exist: e.g.: make ASAN_BUILD=1 - -Note that afl++ is faster and better the newer the compilers used are. -Hence at least gcc-9 and especially llvm-9 should be the compilers of choice. -If your distribution does not have them, you can use the Dockerfile: - -```shell -cd AFLplusplus -sudo docker build -t aflplusplus . -``` - - ## Challenges of guided fuzzing Fuzzing is one of the most powerful and proven strategies for identifying @@ -388,10 +381,10 @@ The available schedules are: - rare (experimental) In parallel mode (-M/-S, several instances with the shared queue), we suggest to -run the master using the explore or fast schedule (-p explore) and the slaves -with a combination of cut-off-exponential (-p coe), exponential (-p fast), +run the main node using the explore or fast schedule (-p explore) and the secondary +nodes with a combination of cut-off-exponential (-p coe), exponential (-p fast), explore (-p explore) and mmopt (-p mmopt) schedules. If a schedule does -not perform well for a target, restart the slave with a different schedule. +not perform well for a target, restart the secondary nodes with a different schedule. In single mode, using -p fast is usually slightly more beneficial than the default explore mode. |