diff options
author | Alexander Shvedov <60114847+a-shvedov@users.noreply.github.com> | 2023-05-22 16:57:45 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-05-22 16:57:45 +0300 |
commit | 629edb1e78d791894ce9ee6d53259f95fe1a29af (patch) | |
tree | 3337fbdabebc223c5222b650127af7469a77f693 /docs/best_practices.md | |
parent | 8012b555a8cbc49f1c78d4a33cad56ea59280780 (diff) | |
parent | c4b1566ba35c697cda7822bd0cf30e2e3eeee0c7 (diff) | |
download | afl++-629edb1e78d791894ce9ee6d53259f95fe1a29af.tar.gz |
Merge pull request #2 from AFLplusplus/stable
push to stable (#1734)
Diffstat (limited to 'docs/best_practices.md')
-rw-r--r-- | docs/best_practices.md | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/docs/best_practices.md b/docs/best_practices.md index 133c645e..459fcaf7 100644 --- a/docs/best_practices.md +++ b/docs/best_practices.md @@ -131,6 +131,11 @@ jitter, or is a hash map function etc., then it should not be instrumented. To be able to exclude these functions (based on AFL++'s measured stability), the following process will allow to identify functions with variable edges. +Note that this is only useful for non-persistent targets! +If a persistent target is unstable whereas when run non-persistent is fine, +then this means that the target is keeping internal state, which is bad for +fuzzing. Fuzz such targets **without** persistent mode. + Four steps are required to do this and it also requires quite some knowledge of coding and/or disassembly and is effectively possible only with `afl-clang-fast` `PCGUARD` and `afl-clang-lto` `LTO` instrumentation. |