Reverse Engineering for Vulnerability Researchers

Course material is customized to our clients. This offering, Reverse Engineering for Vulnerability Researchers, is available over four days. All course material is delivered on-site by our expert instructors.

We’ll take your reverse engineering skills to the next level. This four-day offering gives researchers the tools to automate bug-hunting tasks in binary applications, then write exploit payloads in C with Binary Ninja. Students will dive deep into Binary Ninja’s Python API, automate common analysis tasks, and extend Binary Ninja’s built-in functionality with plugins. Throughout the course, students are exposed to a variety of common exploitable bug classes, and challenged to develop models of those bug classes. At the end of the course, students will be developing these models and applying them to binaries to discover and exploit vulnerabilities in binary code without access to source. Exercises are provided as a friendly Capture the Flag format. Exercises include:

Requirements

Knowledge & Experience

Students must have experience with Python and C; students without this experience will not be successful. C++ experience is useful, but not required.

Students should also have at least a foundational knowledge of an assembly language, as well as reverse engineering concepts.

Equipment

Students should bring a laptop that meets the following requirements:

Sample Syllabus

Day 1

Day 2

Day 3

Day 4