In this course, I will first select a popular Rust library and identify the most interesting methods to fuzz. Then, I’ll explains how to use cargo-fuzz (libfuzzer) to generate fuzzing targets and how to customize them. Finally, I’ll show how to run the fuzzer and explain some particularity of cargo-fuzz.
I’m showing some good examples of Rust fuzzing harnesses that can be a good source of inspiration for you if you want to write better Rust fuzzing targets. I’m quickly copying part of this project and start fuzzing one Rust crate (dns_parser) using honggfuzz-rs.