Fuzzing and Finding Vulnerabilities With Winafl/Afl
Fuzzing and Finding Vulnerabilities With Winafl/Afl
Many people are interested in finding vulnerabilities but don't know where to start. This workshop is
aimed at solving this problem. At first, we will cover different types of vulnerabilities like
Buffer overflow, heap overflow, integer overflow, Use After Free. We will than discuss what is
fuzzing and how it is used to find various vulnerabilities, we will cover different types of fuzzers on
windows and Linux operating systems. we will also cover how to write simple harness program
which we can fuzz to find windows-based vulnerabilities as well Linux based vulnerabilities. we will
also cover some real-life example which we have reported to the various vendors which resulted in
various CVEs.
Attendees will need to have a Linux VM to follow the exercises and hands on mentioned during the
training. You can download kali linux from here: https://www.kali.org/news/kali-linux-2020-2-
release/
Configuration instructions:
above command will clone tcpdump, libpcap and libtiff which we will be using for hands on
exercises and will look like this:
3. You can copy “AFLCrashes” folder inside “Fuzzing” folder. These are the crashes from the
“imgreadafl.c” compiled binary. You can use this to debug the crashes during the workshop
and later on for practice. This will make sure that each attendee is debugging same crash
during the workshop.
Attendees need to have a Windows VM[preferably Windows 7] to follow the exercises and hands on
mentioned during the training.
Configuration instruction:
c.
3. Download DynamoRIO from following link,unzip and copyit to “C:\Fuzzing” folder.
a. https://github.com/DynamoRIO/dynamorio/releases/download/release_7.1.0/Dyna
moRIO-Windows-7.1.0-1.zip
4. Download and install visual studio 2015 runtime installer from here:
a. https://www.microsoft.com/en-in/download/details.aspx?id=48145
5. Copy “imgread.c” and “imgread_persistent.c” inside “Fuzzing” folder on both linux and
Windows VMs. We will be fuzzing these files during the hands on exercise during the
workshop. In case of any issues with the compilation, you can use compiled binaries which
are also present in “Compiled Binaries” folder.