Skip to content

Conversation

@choller
Copy link
Contributor

@choller choller commented Apr 28, 2023

This commit adds core code in the AFL++ runtime and compiler to measure source code coverage in Nyx mode.

This PR does not yet include:

  • Changes required to the Nyx preload code (in particular allocating the pcmap buffer)
  • Example code how to dump the pcmap, the module info and the coverage in the Nyx preload code
  • External tooling to post-process the resulting data

@vanhauser-thc
Copy link
Member

looks good, thank you!
I will document the new option build option in a few places where it is mising.

@vanhauser-thc vanhauser-thc merged commit e956f23 into AFLplusplus:dev Apr 28, 2023
vanhauser-thc added a commit that referenced this pull request May 15, 2023
* afl++ -> AFL++

* update readme

* more debug

* slightly different weighting algo (#1719)

* better seed selection

* slightly different weighting calculation

* remove unnecessary memset

* Add "Hangs saved" to afl-whatsup (#1717)

The hangs could show long or infinite loops. This is important.

Co-authored-by: van Hauser <[email protected]>

* nits

* afl-showmap: Start a only a single fork server (#1718)

A forkserver is started by afl_fsrv_get_mapsize() when dynamically
finding the map size.  When an input directory option is specified a
second fork server was also started.  This commit re-arranges the inits
for several forkserver struct members so that we can re-use the server
started by the get_mapsize() call when not in coresight/qemu/unicorn
modes and just start the server otherwise.

* Source Code Coverage support for Nyx (Part 1) (#1720)

* Additional source code reformatting in afl-compiler-rt

* Add source code coverage support to afl-compiler-rt (for use with Nyx)

* doc, code format

* llvm 17 changes

* more llvm 17

* add frida mode tutorial

* fix effector map

* docs

* Should memset EFF_ALEN(len) of eff_map (#1722)

* fix reallocs

* fix afl-system-config for macos

* afl-fuzz.c: Document -i - in --help (#1725)

afl-fuzz.c: Document `-i -` in `--help`, to write that `-i` can be passed '-' to resume the prior fuzzing job. Also reference AFL_AUTORESUME so users know they can set that parameter to sidestep the issue entirely.

* tritondse custom mutator attempt

* tritondse fixes

* update libnyx (#1727)

* GNUmakefile: Update LLVM instructions (#1728)

Update LLVM instructions, because versions higher than 14 are supported and to be explicit that LLD is also required

* disable macos in the ci, works fine for me

* fix makefile

* better tritondse support

* next steps for tritondse

* qemuafl: Persistent mode for PPC32 targets

* update qemu_mode

* afl-clang-lto incomptable with -flto=thin

* add @responsefile support for afl-cc

---------

Co-authored-by: fxlb <[email protected]>
Co-authored-by: Nick Potenski <[email protected]>
Co-authored-by: Christian Holler (:decoder) <[email protected]>
Co-authored-by: lazymio <[email protected]>
Co-authored-by: Moshe Kaplan <[email protected]>
Co-authored-by: Sergej Schumilo <[email protected]>
Co-authored-by: Dominik Maier <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants