LibAFL Versions Save

Advanced Fuzzing Library - Slot your Fuzzer together in Rust! Scales across cores and machines. For Windows, Android, MacOS, Linux, no_std, ...

0.12.0

3 weeks ago

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

Fixes

New Contributors

Full Changelog: https://github.com/AFLplusplus/LibAFL/compare/0.11.2...0.12.0

0.11.2

4 months ago

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

New Contributors

Full Changelog: https://github.com/AFLplusplus/LibAFL/compare/0.11.1...0.11.2

0.11.1

8 months ago

What's Changed

New Contributors

Full Changelog: https://github.com/AFLplusplus/LibAFL/compare/0.11.0...0.11.1

0.11.0

8 months ago

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

New Contributors

Full Changelog: https://github.com/AFLplusplus/LibAFL/compare/0.10.1...0.11.0

0.10.1

11 months ago

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: https://github.com/AFLplusplus/LibAFL/compare/0.10.0...0.10.1

0.10.0

1 year ago

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

New Contributors

Full Changelog: https://github.com/AFLplusplus/LibAFL/compare/0.9.0...0.10.0

0.9.0

1 year ago

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

New Contributors

Minimum supported Rust version: 1.65.0

Full Changelog: https://github.com/AFLplusplus/LibAFL/compare/0.8.2...0.9.0

0.8.2

1 year ago

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

Fixes

New Contributors

Full Changelog: https://github.com/AFLplusplus/LibAFL/compare/0.8.1...0.8.2

0.8.1

1 year ago

Highlights

Further Changes

Fixes

New Contributors

Full Changelog: https://github.com/AFLplusplus/LibAFL/compare/0.8.0...0.8.1

0.8.0

1 year ago

Highlights

Further Changes

New Contributors

Full Changelog: https://github.com/AFLplusplus/LibAFL/compare/0.7.1...0.8.0