OWASP NZ Day 2020-Training-Introduction to Fuzzing
Introduction to Fuzzing
Half-Day Interactive Training -- OWASP New Zealand Day 2020
Fuzzing techniques enable the detection of vulnerabilities such as buffer overflows, integer overflows, format string vulnerabilities, and use-after-free. This workshop gives the audience a detailed overview of blind, input based fuzzing.
Dates: Thursday, 20 February 2020
Time: 8:45 a.m. to 12:30 p.m.
Course Fee: NZ $325.00 (plus EventBrite fees)
Registration Site: https://owaspnz2020-training.eventbrite.com
Attendees Should Bring:
Attendee are required to bring system with root/admin privilege with minimum 8GB RAM, with VirtualBox or VMware installed.
Instructor: Dhiraj Mishra
Instructor's Organization: Cognosec
Intro to Fuzzing - The fundamentals of fuzzing, understanding why fuzzing is needed and how to make the process of fuzzing efficient.
Smart Fuzzing - We will look at using american fuzzy lop (AFL), which demonstrates the process of compile-time instrumentation. We will understand the color code in AFL, process timing, stages, findings, yields, path geometry and stability. We will integrate address sanitizer (ASAN/MSAN), which helps in identifying address and memory corruption bugs, making the process smarter.
Triage Analysis - We look at PoCs generated by AFL during the fuzzing process, attaching it to the actual binaries to see how they handle the inputs.
In intro to fuzzing we will discuss and understand all parts to a successful fuzzing and why it’s needed, understanding various fuzzers and setting up the environment.
We will move ahead and start with AFL, understating the installation part. Also, we will quickly have a look on AFL key components which is, process timing, stages, findings, yields, path geometry and stability. We have created certain vulnerable binaries from which we will demonstrate overflows using AFL and analyzing the targets, crashes and hangs which gets generated by AFL, we will continue talking about blackbox fuzzing approach using AFL.
After that we will move ahead and start with smart fuzzing where we will integrate ASAN with AFL, but before that we will give a brief understanding about ASAN and MSAN and how it is used to detects the run-time bugs during the compilation of a binary.
In end we will give small exercises to students to gets hands-on, on what they have learned so far and clear their doubts. We will quickly wrap up our workshop by discussing about how they can leverage this knowledge against the bug bounty programs and then show casing multiple bugs which we found during our research.
Dhiraj Mishra - Dhiraj is an active researcher and speaker, who has discovered multiple zero-days in modern web browsers. He is also an active open source contributor. His work can be found on www.inputzero.io.