aboutsummaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
Diffstat (limited to 'docs')
-rw-r--r--docs/Changelog.md9
-rw-r--r--docs/FAQ.md7
-rw-r--r--docs/env_variables.md11
-rw-r--r--docs/perf_tips.md2
4 files changed, 20 insertions, 9 deletions
diff --git a/docs/Changelog.md b/docs/Changelog.md
index ae7377f2..edcdac58 100644
--- a/docs/Changelog.md
+++ b/docs/Changelog.md
@@ -22,8 +22,16 @@ sending a mail to <afl-users+subscribe@googlegroups.com>.
- fixed a bug in redqueen for strings
- llvm_mode:
- now supports llvm 12!
+ - support for AFL_LLVM_ALLOWLIST/AFL_LLVM_DENYLIST (previous
+ AFL_LLVM_WHITELIST and AFL_LLVM_INSTRUMENT_FILE are deprecated and
+ are matched to AFL_LLVM_ALLOWLIST). The format is compatible to llvm
+ sancov, and also supports function matching!
+ - added neverzero counting to trace-pc/pcgard
- fixes for laf-intel float splitting (thanks to mark-griffin for
reporting)
+ - LTO: switch default to the dynamic memory map, set AFL_LLVM_MAP_ADDR
+ for a fixed map address (eg. 0x10000)
+ - LTO: skipping ctors and ifuncs in fix map address instrumentation
- LTO: autodictionary mode is a default
- LTO: instrim instrumentation disabled, only classic support used
as it is always better
@@ -33,6 +41,7 @@ sending a mail to <afl-users+subscribe@googlegroups.com>.
- LTO: AFL_LLVM_SKIP_NEVERZERO behaviour was inversed, fixed
- setting AFL_LLVM_LAF_SPLIT_FLOATS now activates
AFL_LLVM_LAF_SPLIT_COMPARES
+ - support for -E and -shared compilation runs
- added honggfuzz mangle as a custom mutator in custom_mutators/honggfuzz
- added afl-frida gum solution to examples/afl_frida (mostly imported
from https://github.com/meme/hotwax/)
diff --git a/docs/FAQ.md b/docs/FAQ.md
index c15cd484..e690635a 100644
--- a/docs/FAQ.md
+++ b/docs/FAQ.md
@@ -112,12 +112,13 @@ afl-clang-fast PCGUARD and afl-clang-lto LTO instrumentation!
on start, check to which memory address the edge ID value is written
and set a write breakpoint to that address (`watch 0x.....`).
- 3. Third step: create a text file with the filenames
+ 3. Third step: create a text file with the filenames/functions
Identify which source code files contain the functions that you need to
- remove from instrumentation.
+ remove from instrumentation, or just specify the functions you want to
+ skip instrumenting. Note that optimization might inline functions!
- Simply follow this document on how to do this: [llvm_mode/README.instrument_file.md](llvm_mode/README.instrument_file.md)
+ Simply follow this document on how to do this: [llvm_mode/README.instrument_list.md](llvm_mode/README.instrument_list.md)
If PCGUARD is used, then you need to follow this guide (needs llvm 12+!):
[http://clang.llvm.org/docs/SanitizerCoverage.html#partially-disabling-instrumentation](http://clang.llvm.org/docs/SanitizerCoverage.html#partially-disabling-instrumentation)
diff --git a/docs/env_variables.md b/docs/env_variables.md
index 811c5658..f0ae0b6c 100644
--- a/docs/env_variables.md
+++ b/docs/env_variables.md
@@ -202,14 +202,15 @@ Then there are a few specific features that are only available in llvm_mode:
See llvm_mode/README.laf-intel.md for more information.
-### INSTRUMENT_FILE
+### INSTRUMENT LIST (selectively instrument files and functions)
This feature allows selectively instrumentation of the source
- - Setting AFL_LLVM_INSTRUMENT_FILE with a filename will only instrument those
- files that match the names listed in this file.
+ - Setting AFL_LLVM_ALLOWLIST or AFL_LLVM_DENYLIST with a filenames and/or
+ function will only instrument (or skip) those files that match the names
+ listed in the specified file.
- See llvm_mode/README.instrument_file.md for more information.
+ See llvm_mode/README.instrument_list.md for more information.
### NOT_ZERO
@@ -241,7 +242,7 @@ Then there are a few specific features that are only available in the gcc_plugin
- Setting AFL_GCC_INSTRUMENT_FILE with a filename will only instrument those
files that match the names listed in this file (one filename per line).
- See gcc_plugin/README.instrument_file.md for more information.
+ See gcc_plugin/README.instrument_list.md for more information.
## 3) Settings for afl-fuzz
diff --git a/docs/perf_tips.md b/docs/perf_tips.md
index 7a690b77..731dc238 100644
--- a/docs/perf_tips.md
+++ b/docs/perf_tips.md
@@ -67,7 +67,7 @@ to get to the important parts in the code.
If you are only interested in specific parts of the code being fuzzed, you can
instrument_files the files that are actually relevant. This improves the speed and
-accuracy of afl. See llvm_mode/README.instrument_file.md
+accuracy of afl. See llvm_mode/README.instrument_list.md
Also use the InsTrim mode on larger binaries, this improves performance and
coverage a lot.