Introduction to Fuzzing Rust code

1. Fuzzing Rust library using cargo-fuzz / libfuzzer

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.

2. Fuzzing Rust code using honggfuzz

In this second course, I will use the famous honggfuzz fuzzer to find bugs inside the ical rust crate library. I will first identify some interesting methods to fuzz and then write some fuzzing targets. Finally, I’ll run the fuzzer and analyze one of the bug triggered.

3. How to write (better) Rust fuzz targets?

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.

4. Fuzzing Rust library using cargo-libafl (LibAFL-based fuzzer)

In this video, we are testing cargo-libafl, the new LibAFL-based fuzzer for Rust fuzzing. This new cargo utility is a replacement for (and a fork of) cargo-fuzz to use a LibAFL-based fuzzer instead of libfuzzer. Let’s see how it performs compare to libfuzzer.

You will get access of the complete tutorial with source code, cheatsheet and video right here.

I hope you will appreciate and you can discover more about my courses here.

Thank You,

Patrick Ventuzelo / @Pat_Ventuzelo

FREE Courses & Training

Enter your email and we'll send you a bundle of awesome resources. 100% free - 100% awesome.

Any questions about our services and trainings ?

Get in touch today with any questions that you might have.