Skip to content

Releases: AFLplusplus/LibAFL

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

0.9.0

31 Jan 10:18
cc53da8
Compare
Choose a tag to compare

Highlights

  • Userspace snapshot-fuzzing using libafl_qemu
  • QEMU system mode fuzzing with fast snapshots
  • Tuneable Stage, Scheduler, ScheduledMutator to change behavior on the fly
  • Differential observers
  • SyncFromBrokerStage to sync from a broker with a different Input type
  • Introduce stable CorpusId to remove/update entries in Corpus
  • Forkserver support to AFL++ adaptive map size and CmpLog
  • Tinyinst binary-only instrumentation support
  • New logo LibAFL logo

What's Changed

##Fixes

Read more

0.8.2

12 Oct 22:23
089bc49
Compare
Choose a tag to compare

Highlights

  • NYX bridge with LibAFL with libafl_nyx by @syheliel
  • JSON logging monitor by @eknoes
  • Testcase and corpus minimizers by @VTCAKAVSMoACE
  • TimeoutInprocessForkExecutor by @tokatoka
  • Builds on various *nix operating systems by @devnexen

What's Changed

  • New Pass Manager Arguments in #724
  • Core affinity implementation for freebsd by @devnexen in #736
  • NYX Executor (GSoC '22) by @syheliel in #693
  • OSX force_load option in #743
  • Add continous JSON Logging monitor by @eknoes in #738
  • Netopenbsd build fix by @devnexen in #746
  • follow-up on netbsd build fix, simplification. by @devnexen in #750
  • Add test case minimising stage by @VTCAKAVSMoACE in #735
  • Implement a corpus minimiser by @VTCAKAVSMoACE in #739
  • Skippable stage, generator wrapper for Grimoire in #748
  • MapFeedback: Adding support for with_name() by @TeumessianFox in #752
  • dragonflybsd build fix for core affinity. by @devnexen in #753
  • CI for FreeBSD in #754
  • core affinity for FreeBSD pinning task to the wanted cpu by @devnexen in #756
  • Do not zero-init struct in QEMU in #758
  • adjust NyxExecutor trait bound to HasTargetBytes from HasBytesVec by @tcheinen in #760
  • libafl_frida ASan hook adding apple's memset_pattern* api. by @devnexen in #761
  • frida follow up on previous change for apple. by @devnexen in #763
  • Add track_stability option to CalibrationStage in #781
  • Dump registers on freebsd amd64 by @devnexen in #779
  • Builds on Illumos, by @devnexen in #775
  • reduces warnings when only version output is asked. by @devnexen in #778
  • Extend gramatron recursive mutator to recurse 5 times in #783
  • Dump registers on NetBSD amd64 by @devnexen in #786
  • Add support for ARMBE8 by @WorksButNotTested in #768
  • Dump reg for openbsd by @devnexen in #787
  • Windows gdiplus by @expend20 in #789 & #792
  • Remove clang download from windows CI by @expend20 in #791
  • write_crash netbsd implementation by @devnexen in #788
  • bolts::cpu::read_time_counter on arm64 by @devnexen in #790
  • Add ability to use virtual dispatch to stagesTuple by @radl97 in #801
  • Adding CPSR register for arm qemu emulation by @TeumessianFox in #800
  • Enable additional rustc errors in test only in #809
  • Adding fork feature passing from libafl_qemu to libafl crate by @TeumessianFox in #806
  • Hide prelude behind feature flag in #782
  • TimeoutInprocessForkExecutor in #797
  • Fixes typo and grammar in spawn_instances.md doc by @Emauz in #811
  • Minor changes for linux without fork feature by @TeumessianFox in #814
  • Hook IsProcessorFeaturePresent to crash with STATUS_STACK_BUFFER_OVERRUN exception by @expend20 in #804
  • Added Hacking TMNF blogpost to Resources in #819
  • Moving to named parameters in format strings in #827

Fixes

New Contributors

Full Changelog: 0.8.1...0.8.2

0.8.1

18 Aug 11:29
eac7307
Compare
Choose a tag to compare

Highlights

Further Changes

Fixes

New Contributors

Full Changelog: 0.8.0...0.8.1

0.8.0

18 Jul 13:32
999eaad
Compare
Choose a tag to compare

Highlights

  • Graphical TUI Monitor based on tui-rs (#480)
  • Differential Fuzzing Support: Differential executor, diff feedback, stdio observers (#521)
  • Grimoire structured fuzzing support (#487)
  • LLVM AutoTokens (#470)
  • Much simpler API for feedback states (#627)
  • Switched all example fuzzers from Makefiles to cargo-make (#537)
  • libafl::Error can generate Backtraces (#617)
  • Refactored libafl Python (#632)
  • [libafl_frida] Enabled ASan for Apple (#478)
  • [libafl_qemu] snapshot fuzzing (#484)
  • [libafl_qemu] custom GDB commands for LibAFL (#671)

Further Changes

New Contributors

Full Changelog: 0.7.1...0.8.0

0.7.1

13 Jan 15:02
aebd85f
Compare
Choose a tag to compare

Highlights

  • a new libafl_qemu API for binary-only fuzzing
  • heaps of fixes for libafl_frida and better Windows support
  • MiMalloc allocator for speed and stability in examples
  • Less (!) generics
  • Message-passing fixes for aarch64

What's Changed

New Contributors

Full Changelog: 0.7.0...0.7.1

0.7.0

09 Dec 09:02
Compare
Choose a tag to compare

What's Changed

Read more

0.6.0

20 Aug 07:50
Compare
Choose a tag to compare
  • libafl_qemu with CmpLog, syscalls hooks and more
  • Refactor MOpt
  • CachedOnDiskCorpus to have an in-memory cache while saving testcases on disk
  • libafl_sugar with builder patterns to create common fuzzers
  • Concolic Tracing (libafl_concolic @julihoh GSOC 2021)
  • InProcessForkExecutor
  • ForkserverExecutor shared mem testcase
  • TimeoutExecutor for win32
  • AFLFast power schedules (@tokatoka GSOC 2021)
  • Fix shared memory on macOS

0.5.0

05 Jul 12:50
Compare
Choose a tag to compare
  • LLVM passes support in libafl_cc
  • Support to routines arguments in CmpLog
  • We don't enforce serde on Observer anymore
  • MOpt stage and mutator (@tokatoka GSOC 2021)
  • Fix link issue when using the Libfuzzer layer and libafl_cc
  • Fix some macOS build issues

0.4.0

23 Jun 06:46
37f641f
Compare
Choose a tag to compare
  • CmpLog instructions instrumentation for SanCov and Frida
  • Naive Input-to-state mutator using the CmpLog metadata
  • Generalize InProcessExecutor to a generic Input trait
  • MultiStats stats display
  • TimeoutForkserverExecutor
  • Shadow Executor and Stage
  • Single threaded restartable EventManager
  • Configurations in EventManager
  • Remove HasExecHooks
  • Decouple broker from LlmpEventManager
  • New fuzzers: Generic libfuzzer, Fuzzbench