Course Schedule
1 Day IN-PERSON, with potential for and ONLINE, Sponsored Dojo
This Dojo is now the combined ‘Intro To Fuzzing with Mayhem’ and ‘Advanced Fuzzing: Reproducing Zero Days with Mayhem’ (updated May 12, 2022).
Aside: ForAllSecure's David Brumley about Modern Software Development.
Course Abstract
In this course we will introduce you to fuzzing with Mayhem, ForAllSecure’s Dynamic Application Security Testing (DAST) tool. You will learn the techniques that underpin fuzzing, and how to incorporate those techniques into your organization with Mayhem. These techniques will allow you to:
Find and prove vulnerabilities with zero false positives. Developers love the actual proof-of-concept that demonstrates the problem, just like a human hacker would provide. Managers love that every report is actionable. And program managers love the savings from avoiding false positives, which can account for 25%+ of your security budget.
Automatically and continuously improve the test suite, which eliminates unknowns caused by un-tested or under-tested code. Organizations report up to 70% of their developer time is building test scenarios. Behavior-based fuzzing expands code coverage for the price of a CPU hour rather than a human work hour.
You will learn with hands-on examples using Mayhem. However, the course is also generally applicable to anyone who wants to learn how to fuzz, including using open source tools like AFL, libfuzzer, and honggfuzz.
Reproducing Zero-Days with Mayhem
From cell phones to DoD weapons systems, today, software is in most of the products that we use everyday. Hence, finding zero-days, vulnerabilities in software that no one but a hacker knows about, is a lucrative prospect. For a moment in time, when a hacker finds a new zero-day vulnerability, they potentially have the ability to attack potentially thousands of victims. Without a Dynamic Application Security Testing (DAST) tool in your development pipeline that can automate the discovery of new vulnerabilities, your application could have the next high profile zero day vulnerability. In this course, we’ll show you how to reproduce high-profile vulnerabilities using ForAllSecure’s Mayhem.
Course Pre-requisites
Familiarity with LInux and C.
About the Instructor: Nathan Jackson
Nathan Jackson is a Solutions Architect at ForAllSecure. He has spent the last nine years supporting United States Air Force customers working for defense contractors. He has experience with image processing, computer vision, geospatial applications, DevOps, and program analysis. In a previous role, Nathan discovered his passion for program analysis and software security while working on the open source PANDA project. His current company, ForAllSecure, won the DARPA Cyber Grand Challenge with their product, Mayhem. ForAllSecure’s mission is to make the world safer by automatically testing all software for exploitable bugs.
Assisted By: Alexander Brewer
Alexander Brewer is a technical solutions engineer with ForAllSecure. With over 6 years of experience in cybersecurity, he has delivered countless trainings and talks on a variety of different security topics. He holds a degree in Computer Science and Music from Boston University and is a Certified Secure Software Lifecycle Professional (CSSLP).
Hardware and Software Requirements
A laptop