Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/fkie-cad/butterfly

LibAFL components for stateful fuzzing
https://github.com/fkie-cad/butterfly

fuzzing libafl security stateful

Last synced: 2 months ago
JSON representation

LibAFL components for stateful fuzzing

Awesome Lists containing this project

README

        









butterfly






 


 



## Description
This crate brings stateful fuzzing capabilities to LibAFL via
1. __Packet-based Inputs__: Inputs that are vectors of packets and can be loaded from pcap files
2. __Packet-based Mutations__: Mutators that can be applied to selected packets only (havoc and protocol-aware mutations like packet insertion, deletion and reordering)
3. __State-Graph Inference__: Observe which states your target goes through as it processes the individual packets and identify when it enters a new state or makes a new state transition

## Installation
`butterfly` uses rust 2021 edition, so execute
```sh
rustup toolchain install nightly
```

and in your `Cargo.toml` insert
```toml
[dependencies]
butterfly = { version = "0.2.2", package = "butterfly-fuzz" }
```

## How to use
Start with [the wiki](https://github.com/fkie-cad/butterfly/wiki) and [the docs](https://docs.rs/butterfly-fuzz).
Also, [some examples](./examples) may be helpful.

For questions, feature requests or bug reports please [create an issue](https://github.com/fkie-cad/butterfly/issues/new).