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

1.8 KiB

Rewrite of afl-fuzz in Rust.

TODO

  • AFL_HANG_TMOUT
  • AFL_NO_AUTODICT
  • AFL_MAP_SIZE
  • AFL_KILL_SIGNAL
  • AFL_BENCH_JUST_ONE
  • AFL_DEBUG_CHILD
  • AFL_PERSISTENT
  • AFL_IGNORE_TIMEOUTS
  • AFL_EXIT_ON_SEED_ISSUES
  • AFL_BENCH_UNTIL_CRASH
  • AFL_TMPDIR
  • AFL_CRASH_EXITCODE
  • AFL_TARGET_ENV
  • AFL_IGNORE_SEED_PROBLEMS (renamed to AFL_IGNORE_SEED_ISSUES)
  • AFL_CRASH_EXITCODE
  • AFL_INPUT_LEN_MIN
  • AFL_INPUT_LEN_MAX
  • AFL_CYCLE_SCHEDULES
  • AFL_CMPLOG_ONLY_NEW
  • AFL_PRELOAD
  • AFL_SKIP_BIN_CHECK
  • AFL_NO_STARTUP_CALIBRATION (this is default in libafl, not sure if this needs to be changed?)
  • AFL_FUZZER_STATS_UPDATE_INTERVAL
  • AFL_DEFER_FORKSRV
  • AFL_NO_WARN_INSTABILITY (we don't warn anyways, we should maybe?)
  • AFL_IMPORT_FIRST (implicit)
  • AFL_SYNC_TIME
  • AFL_AUTORESUME
  • AFL_PERSISTENT_RECORD
  • AFL_FINAL_SYNC
  • AFL_CRASHING_SEEDS_AS_NEW_CRASH
  • AFL_IGNORE_UNKNOWN_ENVS
  • AFL_NO_UI
  • AFL_PIZZA_MODE :)
  • AFL_EXIT_WHEN_DONE
  • AFL_EXIT_ON_TIME
  • AFL_NO_AFFINITY
  • AFL_FORKSERVER_KILL_SIGNAL
  • AFL_EXPAND_HAVOC_NOW
  • AFL_NO_FORKSRV
  • AFL_FORKSRV_INIT_TMOUT
  • AFL_TRY_AFFINITY
  • AFL_FAST_CAL
  • AFL_NO_CRASH_README
  • AFL_KEEP_TIMEOUTS
  • AFL_TESTCACHE_SIZE
  • AFL_NO_ARITH
  • AFL_DISABLE_TRIM
  • AFL_MAX_DET_EXTRAS
  • AFL_IGNORE_PROBLEMS
  • AFL_IGNORE_PROBLEMS_COVERAGE
  • AFL_STATSD_TAGS_FLAVOR
  • AFL_STATSD
  • AFL_STATSD_PORT
  • AFL_STATSD_HOST
  • AFL_IMPORT
  • AFL_SHUFFLE_QUEUE
  • AFL_CUSTOM_QEMU_BIN
  • AFL_PATH
  • AFL_CUSTOM_MUTATOR_LIBRARY
  • AFL_CUSTOM_MUTATOR_ONLY
  • AFL_PYTHON_MODULE
  • AFL_DEBUG
  • AFL_I_DONT_CARE_ABOUT_MISSING_CRASHES
  • AFL_DUMB_FORKSRV
  • AFL_EARLY_FORKSERVER
  • AFL_NO_SNAPSHOT