diff options
| author | Andrea Fioraldi <andreafioraldi@gmail.com> | 2019-08-31 11:23:48 +0200 |
|---|---|---|
| committer | Andrea Fioraldi <andreafioraldi@gmail.com> | 2019-08-31 11:23:48 +0200 |
| commit | 500a378fdf8664aea42f557f60c9842bb15f06a0 (patch) | |
| tree | 76fd49c79a999e8112a148424eff4e177353fc7a /qemu_mode/libcompcov/README.compcov | |
| parent | eadd378f6c54a7e021985bca041d9642fff41034 (diff) | |
| download | afl++-500a378fdf8664aea42f557f60c9842bb15f06a0.tar.gz | |
modernize some readmes
Diffstat (limited to 'qemu_mode/libcompcov/README.compcov')
| -rw-r--r-- | qemu_mode/libcompcov/README.compcov | 37 |
1 files changed, 0 insertions, 37 deletions
diff --git a/qemu_mode/libcompcov/README.compcov b/qemu_mode/libcompcov/README.compcov deleted file mode 100644 index 9be13d88..00000000 --- a/qemu_mode/libcompcov/README.compcov +++ /dev/null @@ -1,37 +0,0 @@ -================================================================ -strcmp() / memcmp() CompareCoverage library for AFLplusplus-QEMU -================================================================ - - Written by Andrea Fioraldi <andreafioraldi@gmail.com> - -This Linux-only companion library allows you to instrument strcmp(), memcmp(), -and related functions to log the CompareCoverage of these libcalls. - -Use this with caution. While this can speedup a lot the bypass of hard -branch conditions it can also waste a lot of time and take up unnecessary space -in the shared memory when logging the coverage related to functions that -doesn't process input-related data. - -To use the library, you *need* to make sure that your fuzzing target is linked -dynamically and make use of strcmp(), memcmp(), and related functions. -For optimized binaries this is an issue, those functions are often inlined -and this module is not capable to log the coverage in this case. - -If you have the source code of the fuzzing target you should nto use this -library and QEMU but build it with afl-clang-fast and the laf-intel options. - -To use this library make sure to preload it with AFL_PRELOAD. - - export AFL_PRELOAD=/path/to/libcompcov.so - export AFL_COMPCOV_LEVEL=1 - - afl-fuzz -Q -i input -o output <your options> -- <target args> - -The AFL_COMPCOV_LEVEL tells to QEMU and libcompcov how to log comaprisons. -Level 1 logs just comparison with immediates / read-only memory and level 2 -logs all the comparisons. - -The library make use of https://github.com/ouadev/proc_maps_parser and so it is -Linux specific. However this is not a strict dependency, other UNIX operating -systems can be supported simply replacing the code related to the -/proc/self/maps parsing. |
