Skip to content

Releases: AFLplusplus/LibAFL

0.14.0

13 Nov 22:11
d339a58
Compare
Choose a tag to compare

Highlights

  • libafl-fuzz (afl-fuzz clone in LibAFL) almost fully-featured (GSoC of @R9295)
  • libafl-pt New crate to use IntelPt for coverage tracing (GSoC of @Marcondiro)
  • LibAFL_FRIDA: Added scripting support and update to FRIDA 16.5.6
  • LibAFL_QEMU: RISC-V support, example for kernel fuzzing and update to QEMU 9.1.1
  • Python grammar support for Nautilus
  • Havoc mutation support for custom structured inputs (and subparts thereof)
  • Binary-only utils libafl_jumper, drcov-merge, add DrCovReader class
  • Memfd backend for ShMem
  • Restructured fuzzers examle directory for easy browsing

What's Changed

Read more

0.13.2

31 Jul 19:58
7ee5962
Compare
Choose a tag to compare

Highlights

  • GsoC: Added libafl-fuzz, afl-fuzz in LibAFL
  • Forkserver: New AFL++ CmpLog map support with much better results (needs latest afl-cc 4.22a or later)
  • Crashes can now be stored in the normal corpus for InProcessExecutors
  • libafl_bolts: Added find_new_files_rec to find new files after a given timestamp and SliceReader
  • libafl_qemu: Renamed QemuHelpers to QemuModules, hooks refactoring
  • Restructured the ./fuzzers folder

What's Changed

Fixes

New Contributors

Full Changelog: 0.13.1...0.13.2

0.13.1

12 Jul 07:21
bb579e6
Compare
Choose a tag to compare

Highlights

  • Introduced stable_anymap, a stable (between recompilations) serialization format for the fuzzer state
  • Important stage restart fix where the fuzzer may have gotten stuck after a crash
  • Added @rmalmain as official contributor focussing on libafl_qemu

What's Changed

New Contributors

Full Changelog: 0.13.0...0.13.1

0.13.0

14 Jun 17:51
5a2652b
Compare
Choose a tag to compare

Highlights

  • DDFuzz integration in libafl_cc
  • libafl_nyx update to latest NYX
  • GenStage, a stage for generational fuzzing
  • Stable type_eq
  • Non-AGPL version of Nautilus grammar fuzzer

What's Changed

Read more

0.12.0

12 Apr 17:55
cbb323f
Compare
Choose a tag to compare

Highlights

  • API for multithreaded initial seed corpus loading
  • Initial seed corpus entries are kept for splicing
  • Stages and Mutators can now be provided as a dynamic Vec
  • Stages resume after crashes and timeout
  • Multipart Input support
  • LibAFL_Bolts: performant get_or_insert_with API for AnyMap/Metadata
  • LibAFL_Targets: Exposing pcguard's PC-Table
  • LibAFL_Libfuzzer: MacOS support
  • libAFL_QEMU: Injection fuzzing and massive rework overall
  • LibAFL_Frida: Binary-only Cmplog support for x64
  • LibAFL_Tinyinst: Linux instrumentation support

API changes

  • Replaced TimeoutExecutor with a timeout in each executor
  • Removed python bindings for most parts of the lib (LibAFL_sugar and LibAFL_QEMU remain)
  • LLMP Client timeout removed, clients manually unregister on exit now
  • Turning on and off tracking of novelties and indexes is now enforced with the CanTrack trait to be less error-prone
  • Instead of providing the current testcase and current stage id everywhere, this information is now available in the State

What's Changed

Read more

0.11.2

21 Dec 11:43
a98805b
Compare
Choose a tag to compare

Highlights

  • Unicode-preserving mutators
  • Reworked Tui (GSoC project by @ToSeven)
  • Scalability introspector
  • Larger libafl_frida rework, replaced capstone with yaxpeax in many places
  • Extended libafl_qemu features, added CmpLog and more

What's Changed

FIxes

Read more

0.11.1

31 Aug 13:08
0003342
Compare
Choose a tag to compare

What's Changed

New Contributors

Full Changelog: 0.11.0...0.11.1

0.11.0

28 Aug 14:27
7dd7c1a
Compare
Choose a tag to compare

Highlights

  • libafl_qemu update to QEMU 8
  • Hexagon support in libafl_qemu
  • libafl::bolts moved to its own crate, libafl_bolts: use bolts for other projects
  • libafl_libfuzzer runtime with full libfuzzer compatibility: replace any libfuzzer with LibAFL
  • noaslr and gdb_qemu utilities
  • Updated FRIDA

What's Changed

Fixes

Read more

0.10.1

24 May 11:59
89876f2
Compare
Choose a tag to compare

Highlights

  • libafl_cc pass to dump the whole program CFG
  • Centralized event manager with main-secondary architecture
  • MiniBSoD support for more BSDs
  • General fuzzing improvements

What's Changed

Fixes

New Contributors

Full Changelog: 0.10.0...0.10.1

0.10.0

18 Apr 14:15
fc23782
Compare
Choose a tag to compare

Highlights

  • AFL++'s Redqueen implementation
  • New Scheduler method to run on evaluation
  • EcoFuzz implementation
  • Integration with CASR for deduplication
  • Input loading from disk API moved to Corpus (this allows Corpora to be backed by network or databases)
  • Batch mode timeout algorithm with lower syscall overhead (Linux only)
  • Logic stages to enable and disable stages conditionally
  • Full AFL++ forkserver support
  • New WASM fuzzing example

What's Changed

Fixes

  • Fix readme position in qemu sys by...
Read more