Tag: 1.0.0 Date: 2024-11-05 Build recipe rework Additions: - Manual page for afl-dyninst(1) - Positional arguments for input and output binaries of afl-dyninst(1) - Long command-line options for afl-dyninst(1) - Make target uninstall - Compliance with REUSE 3.0 Removals: - Support for Dyninst < 10 - afl-dyninst(1)'s command-line options -dfilo - afl-dyninst's unnecessary info logs Remote: https://github.com/vanhauser-thc/afl-dyninst Date: 2021-05-21 - performance level 1 is now standard and only -x needed for extra performance flags. There was no disadvantage in previous level 1 so its default now. - removed -l option because of bugs in the implementation, bugs in dyninst and behavior of dyninst that was not good for our purpose. Use -r instead - Only compile dyninst9 bug workaround when necessary - added -I option (only instrument specific functions) - updated the README for guidance to build with dyninst version 10 - added support for dyninst version 10 - added -x performance optimization option and a speed enhancement patch that is always active. before this afl-dyninst was meh, now it is OK. top speed is now ~110% on stock afl-dyninst and ~65% on stock afl-gcc - -e option now also understands function names, not only 0x1234 addresses - searches for multiple entrypoints now: main, init, start and _NAME variants - afl-dyninst now works fine with AARCH64 and PPC :) - more verbose output, -vv -vvv support => at this stage did talos-vulndev/afl-dyninst the last pull from this repo - fixed some typos - renamed afl-fuzz.sh to afl-fuzz-dyninst.sh and make install installs now the scripts - added -E switch to force a program exit at specific addresses - added -D switch which does not do basic block instrumentation - the -S switch can now be specified several times - checks the dyninst version and comments on the -f option - added -S switch to skip instrumenting a specific function - added make install target - updated README - Fix for programs that were unable to print to stdout after instrumentation - added -f switch to fix a bug in dyninst where sometimes the edi/rdi register is not saved which is used in the instrumentation function when a function is using edi/rdi for parameter passing - added -m switch to only instrument basic blocks of a minimum size - code beautifications, more detailed output, spelling fixes - added afl-dyninst.sh and afl-fuzz.sh helper scripts which presets the necessary environment variables Remote: https://github.com/talos-vulndev/afl-dyninst Date: 2018-03-17