Improved documentation for fuzzers/cargo_fuzz and dynamic_analysis (#2350)
* Improved documentation for fuzzers/cargo_fuzz and dynamic_analysis * revert line breaks in markdown files
This commit is contained in:
parent
bb579e624e
commit
d564656f1c
@ -1,3 +1,3 @@
|
|||||||
# cargo-fuzz
|
# cargo-fuzz
|
||||||
|
|
||||||
This is a minimalistic example how to use LibAFL with cargo-fuzz. It uses the `libafl_libfuzzer` comatability layer to be libFuzzer compatiable.
|
This is a minimalistic example how to use LibAFL with cargo-fuzz. It uses the `libafl_libfuzzer` compatibility layer in order to be libFuzzer compatible.
|
||||||
|
@ -1,11 +1,12 @@
|
|||||||
# Dynamic Analysis Fuzzer
|
# Dynamic Analysis Fuzzer
|
||||||
This fuzzer is to show how you can collect runtime analysis information during fuzzing using LibAFL. We use the Little-CMS project for the example.
|
|
||||||
|
This fuzzer is to show how you can collect runtime analysis information during fuzzing using LibAFL. We use the [Little-CMS](https://github.com/mm2/Little-CMS) project for the example.
|
||||||
First, this fuzzer requires `nlohmann-json3-dev` to work.
|
First, this fuzzer requires `nlohmann-json3-dev` to work.
|
||||||
|
|
||||||
To run the fuzzer,
|
To run the fuzzer:
|
||||||
0. Compile the fuzzer with `cargo build --release`
|
|
||||||
1. `mkdir analysis` and run `build.sh`. This will compile Little-CMS to extract the analysis information and generate a json file for each module.
|
1. Compile the fuzzer with `cargo build --release`
|
||||||
2. run `python3 concatenator.py analysis`. This will concatenate all the json into one single file. This json file maps a function id to its analysis information.
|
2. `mkdir analysis` and run `build.sh`. This will compile Little-CMS to extract the analysis information and generate a json file for each module.
|
||||||
3. Compile the fuzzer with `cargo make fuzzer`. This will instrument the fuzzer at every function entry point. Therefore, whenever we reach the entry of any function, we
|
3. run `python3 concatenator.py analysis`. This will concatenate all the json into one single file. This json file maps a function id to its analysis information.
|
||||||
can log its id and logs what functions we executed.
|
4. Compile the fuzzer with `cargo make fuzzer`. This will instrument the fuzzer at every function entry point. Therefore, whenever we reach the entry of any function, we can log its id and logs what functions we executed.
|
||||||
4. Run the fuzzer `RUST_LOG=info ./fuzzer --input ./corpus --output ./out`. You'll see a stream of analysis data
|
5. Run the fuzzer `RUST_LOG=info ./fuzzer --input ./corpus --output ./out`. You'll see a stream of analysis data
|
Loading…
x
Reference in New Issue
Block a user