Live Online Training
Presented by Dhiraj Mishra and Zubin Devnani
The 2 day course took place online between 9am and 5pm (UK time) on the 18—19 June 2022.
The price is £1,320 inc VAT (£1,100 ex VAT).
Overview
Fuzzing is a technique of identifying software vulnerabilities by automated corpus generation. It has produced immense results and attracted a lot of visibility from security researchers and professionals in the industry, today fuzzing can be utilised in various ways which can be incorporated into your secure SDLC to discover vulnerabilities in advance and fix them.
Finding vulnerabilities in software requires in-depth knowledge of different technology stacks. Modern day softwares have a huge codebase and may contain vulnerabilities. Manually verifying such vulnerabilities is a tedious task and may not be possible in all cases. This training is designed in such a way that it introduces the concept of fuzzing and vulnerability discovery in softwares covering multiple platforms such as Linux & Windows and triage analysis for those vulnerabilities.
During this training, attendees would be emulating techniques which would provide a comprehensive understanding of “Crash, Detect & Triage” of fuzzed binaries or software. In “Deep dive into fuzzing” Dhiraj and Zubin will be covering a detailed overview of fuzzing and how it can be beneficial to professionals in uncovering security vulnerabilities with a hands-on approach through a focus on labs.
Key Takeaways
- Effective ways of fuzzing
- Understanding the different classes of vulnerabilities
- Key fundamentals of fuzzing and how it works
- Creating your own grammar for fuzzing
- Implementing persistence for complex programs
- Utilizing QEMU for binary only fuzzing
- Introduction to ARM and fuzzing ARM binaries
- Getting started with fuzzing windows binaries
- Tons of exercises focusing on real world softwares
- CTC – Capture the crash on a custom application
Course Content
Day 1
- Understanding fuzzing fundamentals
- AFL Internals
- Setting up the environment
- Selecting fuzzing targets
- Spinning up the fuzzer effectively
- Corpus generation
- Address/Memory Sanitisers
- Hooking custom mutators
- “Not so pro tips” while fuzzing
- Parallel fuzzing
- Improving code coverage with grammar
- Plotting difference in code coverage
- Enhancing your fuzzing approach
- Symbolic execution fuzzing
Day 2
- Setting up persistent mode
- Introduction to QEMU
- AFL internals for QEMU
- Targeting blackbox binaries
- Introduction to ARM
- Cross-platform architecture fuzzing
- Setting up QEMU persistent
- Introduction to network fuzzing
- WinAFL Internals
- Analysing your target with debuggers
- Improving code coverage
- Fuzzing browser engines and SSL libraries
- Overview of different fuzzing frameworks
- Integrating slack with fuzzing stats
- Capture the crash
Student Requirements
- Linux & Windows fundamentals
- Understanding of C/C++ and common datatypes
Student should bring
Attendees are required to have a system with root/admin privilege with minimum 8GB RAM and 100 GB disk space with VirtualBox or VMware installed.
Students will be provided with
- Training Manual
- A dedicated server with custom OS (Windows & Linux) for one month
- Lab setup (OVA of Ubuntu and Windows) loaded with all the course exercise material including solutions to all of the exercises
- A private dedicated channel where trainers will be available to answer your queries after the training
Who should take the course?
The training is aimed for individuals & professionals who wish to learn the fundamentals of fuzzing.
Audience skill level
Beginner/Intermediate
Trainer Bio
Dhiraj Mishra
Dhiraj Mishra is an active speaker who has discovered multiple zero-days in modern web browsers and an open-source contributor. He is a trainer at Blackhat and presented in conferences such as Ekoparty, Hacktivity, PHDays & HITB. In his free time, he blogs at www.inputzero.io and tweets on @RandomDhiraj
Zubin Devnani
Zubin Devnani is a red teamer by trade, who has identified multiple vulnerabilities in commonly used software. He is a trainer at Blackhat and has delivered multiple workshops, including PHDays and Hacktivity. Utilises his fuzzing skills in his day to day trade to identify new ways of breaking into enterprises! Blogging at devtty0.io and tweets on @p1ngfl0yd