update for new sanitizer support

This commit is contained in:
vanhauser-thc
2021-11-04 16:12:54 +01:00
parent bb255fdd79
commit 74b4274e35

View File

@ -95,21 +95,22 @@ fairly broad use of environment variables instead:
- Setting `AFL_QUIET` will prevent afl-cc and afl-as banners from being - Setting `AFL_QUIET` will prevent afl-cc and afl-as banners from being
displayed during compilation, in case you find them distracting. displayed during compilation, in case you find them distracting.
- Setting `AFL_USE_ASAN` automatically enables ASAN, provided that your - Setting `AFL_USE_...` automatically enables supported sanitizers -
compiler supports it. provided that your compiler supports it.
Available are:
(You can also enable MSAN via `AFL_USE_MSAN`; ASAN and MSAN come with the - `AFL_USE_ASAN=1` - activate the address sanitizer (memory corruption
same gotchas; the modes are mutually exclusive. UBSAN can be enabled detection)
similarly by setting the environment variable `AFL_USE_UBSAN=1`. Finally, - `AFL_USE_MSAN=1` - activate the memory sanitizer (uninitialized memory)
there is the Control Flow Integrity sanitizer that can be activated by - `AFL_USE_UBSAN=1` - activate the undefined behaviour sanitizer
`AFL_USE_CFISAN=1`.) - `AFL_USE_TSAN=1` - activate the thread sanitizer to find thread race
conditions
- Setting `AFL_USE_LSAN` automatically enables Leak-Sanitizer, provided that - `AFL_USE_CFISAN=1` - activate the Control Flow Integrity sanitizer (e.g.
your compiler supports it. To perform a leak check within your program at a type confusion vulnerabilities)
certain point (such as at the end of an __AFL_LOOP), you can run the macro - `AFL_USE_LSAN` - activates the leak sanitizer. To perform a leak check
__AFL_LEAK_CHECK(); which will cause an abort if any memory is leaked (you within your program at a certain point (such as at the end of an
can combine this with the LSAN_OPTIONS=suppressions option to supress some `__AFL_LOOP()`), you can run the macro `__AFL_LEAK_CHECK();` which will
known leaks). cause an abort if any memory is leaked (you can combine this with the
`LSAN_OPTIONS=...` suppression option to supress some known leaks).
- `TMPDIR` is used by afl-as for temporary files; if this variable is not set, - `TMPDIR` is used by afl-as for temporary files; if this variable is not set,
the tool defaults to /tmp. the tool defaults to /tmp.