Age | Commit message (Collapse) | Author | |
---|---|---|---|
2020-09-02 | ignore unstable | van Hauser | |
2020-08-18 | Reworked maybe_grow to take a single ptr, renamed to afl_realloc (#505) | Dominik Maier | |
* maybe_grow takes a single ptr * fixed use_deflate * reworked maybe_grow_bufsize * helper to access underlying buf * remove redundant realloc_block * code format * fixes * added unit tests * renamed maybe_grow to afl_realloc * BUF_PARAMS -> AFL_BUF_PARAM | |||
2020-08-14 | Revert "Merge branch 'debug' into dev" | root | |
This reverts commit a7537b5511ad767d2240cf2dc6d3e261daa676f9, reversing changes made to 15e799f7ae666418e75c6a79db833c5316b21f97. | |||
2020-08-14 | Merge branch 'debug' into dev | van Hauser | |
2020-08-12 | split up __afl_manual_init, added internal AFL_DISABLE_LLVM_INSTRUMENTATION, ↵ | van Hauser | |
skipping ctor+ifunc functions for all llvm, code-format | |||
2020-08-12 | setting attribute hot intelligently gives 0.5% speed | van Hauser | |
2020-08-11 | review done, pray | van Hauser | |
2020-08-11 | move taint_mode var | van Hauser | |
2020-08-11 | cleanup minor issues | van Hauser | |
2020-08-11 | Merge branch 'debug' into taint | van Hauser | |
2020-08-10 | fixed minor inconsistencies, reenabled warnings | Dominik Maier | |
2020-08-10 | increase stack size | van Hauser | |
2020-08-10 | fix another segfault | van Hauser | |
2020-08-09 | final touches for first testing | van Hauser | |
2020-08-09 | integration in fuzz_one | van Hauser | |
2020-08-09 | taint integration done | van Hauser | |
2020-08-09 | fixes | van Hauser | |
2020-08-09 | changes | van Hauser | |
2020-08-09 | code format | van Hauser | |
2020-08-09 | step 1 | van Hauser | |
2020-08-07 | enabled Wextra, fixed bugs | Dominik Maier | |
2020-08-05 | fix short write | van Hauser | |
2020-07-30 | fix post process check | van Hauser | |
2020-07-30 | enhance for custom trim buffer | van Hauser | |
2020-07-30 | Merge pull request #460 from rish9101/dev | van Hauser | |
Add post-process functionality in write_with_gap | |||
2020-07-29 | Minor change to write_with_gap | Rishi Ranjan | |
2020-07-24 | add -F option to sync to foreign fuzzer queues | van Hauser | |
2020-07-23 | Remove reduntant copying from write_with_gap function | rish9101 | |
2020-07-23 | Add post-process functionality in write_with_gap | rish9101 | |
2020-06-29 | fix autodict | van Hauser | |
2020-06-26 | original fix for calibration error | Andrea Fioraldi | |
2020-06-25 | shmem release fix | van Hauser | |
2020-06-25 | initialized variable | Dominik Maier | |
2020-06-25 | Merge pull request #425 from dgmelski/fix-recalibration | Andrea Fioraldi | |
Fix saturated maps & stability cliff in recalibration | |||
2020-06-25 | add seek power schedule, remove update stats in calibration, fix help output | van Hauser | |
2020-06-24 | Fix saturated maps & stability cliff in recalibration | David 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-24 | create .synced/NAMES.last to document last sync attempts | van Hauser | |
2020-06-22 | allow /tmp | van Hauser | |
2020-06-21 | fix unicorn mode for CFLAGS | van Hauser | |
2020-06-13 | code format | van Hauser | |
2020-06-13 | fix shmem | van Hauser | |
2020-06-12 | switch to faster and better hash + random | van Hauser | |
2020-06-04 | fix cmplog for shmem persistent mode | van Hauser | |
2020-06-03 | switch shmem_len to the map | van Hauser | |
2020-06-03 | OpenBSD: add missing limits.h header for PATH_MAX | hexcoder- | |
2020-06-03 | code format | van Hauser | |
2020-06-02 | got rid of questionable phrasing | Dominik Maier | |
2020-05-31 | starting shmap support for unicorn | Dominik Maier | |
2020-05-25 | persistent mode: shared memory test case transfer | van Hauser | |
2020-05-20 | better sync - lesser and better imports | van Hauser | |