about summary refs log tree commit diff
path: root/src
AgeCommit message (Collapse)Author
2020-07-14added frida gum extensionvan Hauser
2020-07-09illumos littlefixes: little typo for cpu binding andDavid Carlier
even tough gcc plugin less good than LLVM, clang is more buggy on this os.
2020-07-08eliminate race condition for cpu affinity on -M/-Svan Hauser
2020-07-06warn rather than fail if AFL_MAP_SIZE is set and not understood by instrumentervan Hauser
2020-07-06warn rather than fail if AFL_MAP_SIZE is set and not understood by instrumentervan Hauser
2020-07-03ubsan optionsAndrea Fioraldi
2020-07-01warn on deprecated env varsvan Hauser
2020-07-01because github errors reput typo fixvan Hauser
2020-06-30Big renaming (#429)van Hauser
* first commit, looks good * fix ascii percentage calc * fix ascii percentage calc * modify txt configs for test * further refinement * Revert "Merge branch 'text_inputs' into dev" This reverts commit 6d9b29daca46c8912aa9ddf6c053bc8554e9e9f7, reversing changes made to 07648f75ea5ef8f03a92db0c7566da8c229dc27b. * blacklist -> ignore renaming * rename whitelist -> instrumentlist * reduce the time interval in which the secondaries sync Co-authored-by: root <root@localhost.localdomain>
2020-06-29workaround for recent afl++ versionsvan Hauser
2020-06-29fix autodictvan Hauser
2020-06-28less problematic definitionsvan Hauser
2020-06-28less problematic definitionsvan Hauser
2020-06-28debug codevan Hauser
2020-06-28fix output for LTOinstrimvan Hauser
2020-06-27fix typosvan Hauser
2020-06-27afl-sharedmem.c: fix leaks on error paths (SysV shared memory)hexcoder-
2020-06-26original fix for calibration errorAndrea Fioraldi
2020-06-26implement sharedmem mmap for cmplogvan Hauser
2020-06-26fix shared memory leaks in afl-showmap, initialize cmplog_modehexcoder-
2020-06-25fix for schedulesvan Hauser
2020-06-25shmem release fixvan Hauser
2020-06-25make llvm_mode pcguard instrumentation collision freevan Hauser
2020-06-25initialized variableDominik Maier
2020-06-25remove radamsa, add radamsa custom mutatorvan Hauser
2020-06-25Merge pull request #425 from dgmelski/fix-recalibrationAndrea Fioraldi
Fix saturated maps & stability cliff in recalibration
2020-06-25add seek power schedule, remove update stats in calibration, fix help outputvan Hauser
2020-06-25fix plotvan Hauser
2020-06-24Fix saturated maps & stability cliff in recalibrationDavid Melski
I have observed two problems: 1. A sudden "stability cliff" where stability drops precipitously. 2. A sudden jump to a 100% saturated "density map". Both issues are due to attempted "recalibration" of a case at the beginning of fuzz_one_original() or mopt_common_fuzzing(). See the comments "CALIBRATION (only if failed earlier on)" in those functions and the subsequent call to calibrate_case(). At those calls to calibrate_case(), afl->fsrv.trace_bits holds trace_bits for a run of the SUT on a prior queue entry. However, calibrate_case() may use the trace_bits as if they apply to the current queue entry (afl->queue_cur). Most often this bug causes the "stability cliff". Trace bits are compared for runs on distinct inputs, which can be very different. The result is a sudden drop in stability. Sometimes it leads to the "saturated map" problem. A saturated density map arises if the trace bits on the previous entry were "simplified" by simplify_trace(). Simplified traces only contain the values 1 and 128. They are meant to be compared against virgin_crashes and virgin_tmouts. However, this bug causes the (stale) simplified trace to be compared against virgin_bits during a call to has_new_bits(), which causes every byte in vigin_bits to be something other than 255. The overall map density is determined by the percentage of bytes not 255, which will be 100%. Worse, AFL++ will be unable to detect novel occurrences of edge counts 1 and 128 going forward. This patch avoids the above issues by clearing q->exec_cksum when calibration fails. Recalibrations are forced to start with a fresh trace on the queue entry. Thanks to @andreafioraldi for suggesting the current, improved patch.
2020-06-24decrease time to sync for mainvan Hauser
2020-06-24add -D option for -Svan Hauser
2020-06-24create .synced/NAMES.last to document last sync attemptsvan Hauser
2020-06-23lto whitelist in test.shvan Hauser
2020-06-22Added rand, hash unittestsDominik Maier
2020-06-22old compiler fixvan Hauser
2020-06-22shmem support for afl-tmin and afl-showmapvan Hauser
2020-06-22fix afl-cmin.bashaflpp
2020-06-22allow /tmpvan Hauser
2020-06-21fix unicorn mode for CFLAGSvan Hauser
2020-06-21fix for s=0van Hauser
2020-06-21fix for -s 0van Hauser
2020-06-20fix libradamsa see issue #419hexcoder-
2020-06-18`fault == afl->crash_mode` should be likely2019
Since during normal fuzzing, crash_mode is FSRV_RUN_OK, and fault is also usually FSRV_RUN_OK since most executions are valid executions, thus it should be likely instead of unlikely
2020-06-17fix displayed schedulevan Hauser
2020-06-16fix for *BSD: remove all HAVE_ARC4RANDOM dependencieshexcoder-
2020-06-15code formatDominik Maier
2020-06-15using XX64 for 32 bit hashDominik Maier
2020-06-15tidied hash32, unicornDominik Maier
2020-06-15switched to new MOpt dictionary supportvan Hauser
2020-06-15improve performance for default power schedulevan Hauser