22 releases

Uses new Rust 2024

0.15.2 Mar 29, 2025
0.15.0 Jan 20, 2025
0.14.1 Dec 2, 2024
0.14.0 Nov 13, 2024
0.6.1 Aug 23, 2021

#233 in Emulators

Download history 1/week @ 2024-12-18 1/week @ 2025-01-01 95/week @ 2025-01-15 19/week @ 2025-01-22 3/week @ 2025-01-29 172/week @ 2025-02-05 16/week @ 2025-02-12 15/week @ 2025-02-19 13/week @ 2025-02-26 9/week @ 2025-03-05 6/week @ 2025-03-12 127/week @ 2025-03-26 20/week @ 2025-04-02

155 downloads per month
Used in libafl_sugar

MIT/Apache

4.5MB
105K SLoC

Welcome to LibAFL QEMU

Warning: The documentation is built by default for x86_64 in usermode. To access the documentation of other architectures or systemmode, the documentation must be rebuilt with the right features.


LibAFL QEMU

LibAFL QEMU is a fuzzing-oriented emulation library that wraps QEMU with a rich API in Rust.

It comes in two variants, usermode to fuzz Linux ELFs userspace binaries and systemmode, to fuzz arbitrary operating systems with QEMU TCG.

Cite

If you use LibAFL QEMU for your academic work, consider citing the follwing paper:

@InProceedings{libaflqemu:bar24,
  title        = {{LibAFL QEMU: A Library for Fuzzing-oriented Emulation}},
  author       = {Romain Malmain and Andrea Fioraldi and Aurélien Francillon},
  year         = {2024},
  series       = {BAR 24},
  month        = {March},
  booktitle    = {Workshop on Binary Analysis Research (colocated with NDSS Symposium)},
  location     = {San Diego (USA)},
  keywords     = {fuzzing, emulation},
}

Dependencies

~48–78MB
~2M SLoC