About This Course
EXP-301 (Windows User Mode Exploit Development) is an intermediate course on modern exploit development techniques. Learners gain hands-on experience crafting custom exploits and bypassing security defenses designed to elevate their skills in ethical hacking and vulnerability discovery. It will also provide an introduction to reverse engineering binary applications to help locate vulnerabilities. Completion of this course will prove the learner’s expertise in advanced exploit development techniques, including reverse engineering, writing shellcode, and bypassing modern mitigations, making certified professionals invaluable for identifying and addressing vulnerabilities in software applications.
EXP-301 covers many critical skills within exploit development, including:
- Understanding the mechanics of stack buffer overflows and learn how to exploit them to gain control of vulnerable programs
- Utilizing IDA Pro with a debugger during reverse engineering and more advanced exploit development
- Applying dynamic analysis to understand program behavior
- Developing the skills to write your own custom shellcode, enabling you to perform specific actions on compromised systems
- Mastering advanced techniques for exploiting stack overflows while bypassing modern security mitigations such as Data Execution Prevention (DEP) and Address Space Layout Randomization (ASLR)
- Completing extensive reverse engineering to find a way to leverage a format string vulnerability and develop a read primitive
EXP-301 is structured into 13 modules, many with companion videos and hands-on labs to practice the skills presented in the module. After mastering the concepts and labs in the modules, learners are encouraged to complete the 3 Challenge Labs, developed specifically to test the learners’ understanding of the concepts of the course and prepare them for the OSED exam.
EXP-301 is designed for any learner who already has strong skills in penetration testing and programming, looking to master exploit development techniques. A strong understanding of C programming, assembly language, operating system internals (Windows), and debugging tools (such as WinDbg and Immunity Debugger) is highly recommended.
Course Information
What You Will Learn
Course Curriculum
Use WinDbg debugger to analyze crashes, investigate memory dumps, and find vulnerabilities in Windows applications
Exploit and gain control of vulnerable programs through stack buffer overflows
Master techniques to leverage Structured Exception Handler overflows for code execution
Reverse engineering software binaries and uncover vulnerabilities with a leading disassembler and debugger (IDA Pro)
Bypass space limitations in your exploit payloads by locating and executing shellcode with egghunter techniques
Perform specific actions on compromised systems by writing custom shellcode
Identify exploitable vulnerabilities by systematically analysing software binaries
Bypass modern security mitigations to exploit stack overflows using advanced techniques like Data Execution Prevention (DEP) and Address Space Layout Randomization (ASLR)
Exploit format string vulnerabilities and leverage them to read or write arbitrary memory locations
Construct custom Return-Oriented Programming chains to bypass defenses and build ROP payload decoders for stealthy exploitations
Get the Full Syllabus as a PDF
Curriculum, exam format & everything included — sent straight to your inbox.
All You Need to Know
EXP-301 is ideal for:
- Individuals with a solid foundation in penetration testing and programming
- Those who are seeking to master exploit development techniques
While there are no formal prerequisites, learners taking EXP-301 are encouraged to have the following skills:
- Familiarity with debuggers (ImmunityDBG, OllyDBG).
- Familiarity with basic exploitation concepts on 32-bit.
- Familiarity with writing Python3 code.
The following optional skills are recommended:
- Ability to read and understand C code at a basic level.
- Ability to read and understand 32-bit Assembly code at a basic level