Skip to content
/ Fuzzing Public

Fuzzing tutorial with easy-to-learn labs πŸš€

License

Notifications You must be signed in to change notification settings

yuawn/Fuzzing

Folders and files

NameName
Last commit message
Last commit date

Latest commit

0eadba4 Β· Sep 4, 2022

History

15 Commits
Aug 29, 2022
Jul 28, 2022
Jul 27, 2022
Jul 27, 2022
Jul 28, 2022
Jul 28, 2022
Aug 29, 2022
Jul 27, 2022
Jul 27, 2022
Jul 27, 2022
Jul 27, 2022
Jul 27, 2022
Jul 27, 2022

Repository files navigation

Fuzzing

Fuzzing tutorial with easy to learn labs.

Lessons

Lesson keyword Lab
Lesson 00 - Fuzzing with AFL++ afl-cc, afl-clang-lto, fuzzing βœ…
Lesson 01 - Use sanitizer to catch silent bugs AddressSanitizer(ASAN) βœ…
Lesson 02 - Improve code coverage using dictionary dictionary, branch constraint, split-comparison βœ…
Lesson 03 - Parallel fuzzing: combine the advantages of each fuzzer parallel fuzzing, seed pool syncing βœ…
Lesson 04 - Increase fuzzing performance by persistent mode fuzzing harness, persistent mode βœ…
Lesson 05 - Write a LLVM Pass to do binary instrumentation LLVM Pass, binary instrumentation βœ…
Lesson 06 - Integrate custom LLVM Pass into AFL++ custom LLVM Pass in AFL++, integration example βœ…
Lesson 07 - Playing symbolic execution on a maze with KLEE symbolic execution, KLEE βœ…

Setup

./setup.sh
make

Environment

Name Version
Ubuntu 20.04, 22.04
LLVM (clang, lld) 14.0.6
AFL++ 4.01c
KLEE v2.3