Romain Malmain c944a70056
Linux kernel fuzzing example (#2496)
* linux kernel (x509_cert) and process fuzzing example

* rework filters

* update to latest qemu

* working for process and kernel fuzzing

* new i2s mutator for binary only fuzzers

* refactoring modules with new filtering interface

* add state as parameter of harness

* hide unused global in usermode

* Script for stub bindings generation

* do not try to check whether it is worth generating the bindings, always
  generate when the env variable is on.

* add taplo to fmt_all.sh

* Moved fuzzers (again) in a target-centric way.

* fix rust 2024 warnings.

* new libafl_qemu harness structure.

* rename qemu_systemmode into qemu_baremetal

* fix qemu baremetal makefile

* fix formatter

---------

Co-authored-by: Toka <tokazerkje@outlook.com>
2024-09-26 14:29:33 +02:00
..
2024-07-19 23:00:37 +02:00
2023-04-26 20:22:57 +02:00

LibAFL Utils

Welcome to the LibAFL Utils folder. Here, you find some helful utilities that may be helpful for successfull fuzzing campaigns.

DeExit: ldpreload exit lib

In the deexit folder, you'll find a ldpreloadable library, that changes calls to exit to abort()s. When a target exits, it quits, and LibAFL will not be able to catch this or recover. Abort, on the other hand, raises an error LibAFL's inprocess executor will be able to catch, thanks to its signal handlers.

Gramatron: gramatron grammars and preprocessing utils

See https://github.com/HexHive/Gramatron

libafl_benches

This folder contains benchmarks for various things in LibAFL, like hash speeds and RNGs. Run with cargo bench