
John McIntosh - Everyday Ghidra: Practical Windows Reverse Engineering - DCTLV2025
Name of Training: Everyday Ghidra: Practical Windows Reverse Engineering
Trainer(s): John McIntosh
Dates: August 11-12, 2025
Time: 08:00 am to 05:00 pm PT
Venue: Las Vegas Convention Center
Cost: $2600
Course Description:
Reverse engineering is the process of uncovering the principles, architecture, and internal structure of a piece of software or hardware. It can be used for various purposes, such as improving compatibility, enhancing security, understanding program behaviour, and even vulnerability research. However, reverse engineering can also be challenging, especially when dealing with complex and modern Windows binaries.
That’s why you need Ghidra, a powerful and open-source software reverse engineering framework developed by the National Security Agency (NSA). Ghidra can help you perform in-depth analysis of Windows binaries, using its rich set of features and tools. Whether you want to reverse engineer malware, understand software internals, or find vulnerabilities, Ghidra can handle it and this course will guide your steps.
In this course, you will learn how to use Ghidra effectively to reverse engineer Windows binaries. While Ghidra is at the heart of our curriculum, we go far beyond a simple user manual. This course is designed to help you master Windows reverse engineering techniques by using Ghidra as your primary tool. You will start with the basics of Ghidra, such as creating projects, importing and analyzing binaries, and using Ghidra’s native tools. You will then learn how to customize Ghidra to suit your needs, such as building custom data types and configuring optimal analysis. From there, you will complete progressive labs that will teach you to apply both static and dynamic analysis techniques to dive deep into Windows application behavior using Ghidra’s Windows-specific features and scripts.
Practical Exercises:
-
Reverse Engineering Windows Malware - Learn to statically analyze a Windows malware sample and identify its malicious behavior.
-
Dynamically Debugging a Windows RPC Server - Gain insight to into Windows RPC and learn how to dynamically inspect a Windows servers with Ghidra’s Debugger
-
Patch Diffing and Root Cause Analysis of a Windows CVE - Learn how to use Ghidra’s Patch Diffing to compare two versions of a Windows binary and identify the changes made to fix a vulnerability and find its root cause.
Course Outline:
DAY 1 : Introduction to Reverse Engineering
-
Introduction to Reverse Engineering
-
Getting Started with Ghidra
-
Windows Security Concepts
-
Ghidorah: Taming the 3-headed dragon
-
Code Browser
-
Debugger
-
Version Tracking
-
Reverse Engineering Windows Binaries - Static
-
A Practical RE Workflow
-
Binary Acquisition
-
Analysis Improvements
-
Setting Reverse Engineering Goals
-
Reversing Windows Malware
DAY 2 : Reverse Engineering Windows Binaries - Dynamic and Patch Diffing
-
Reverse Engineering Windows Binaries - Dynamic
-
Ghidra Debugger Overview
-
Debugging Windows Applications
-
Pretending All Binaries Come with Source
-
Debugging a Windows RPC Service
-
Reversing Petitpotam ( NTLM Authentication Bypass )
-
Patch Diffing and Root Cause Analysis of Windows CVE
-
Patch Diffing in Ghidra
-
Finding a CVE
-
Patch Diffing Windows Binaries
-
Hunting for the vulnerability
-
Finding the root cause
Difficulty Level:
Intermediate
Suggested Prerequisites:
-
Knowledge of Windows Security Concepts
-
Fundamental Understanding and experience with assembly
-
Experience Debugging software applications
What Students Should Bring:
-
Hardware Requirements
-
i7+ Laptop with 16GB+ RAM
-
60 GB disk space
-
Ability to run Intel based VM similar to https://developer.microsoft.com/en-us/windows/downloads/virtual-machines/
-
Software Requirements
-
VMware (now free to download)
Trainer(s) Bio:
John McIntosh ([@clearbluejar](https://twitter.com/clearbluejar)) is a security researcher and lead instructor @clearseclabs, a company that offers hands-on training and consulting for reverse engineering and offensive security. He is passionate about learning and sharing knowledge on topics such as binary analysis, patch diffing, and vulnerability discovery. He has created several open-source security tools and courses, which are available on his GitHub page. He regularly blogs about his research projects and experiments on his [website] (https://clearbluejar.github.io), where you can find detailed write-ups on reversing recent CVEs and building RE tooling with Ghidra. With over a decade of offensive security experience, speaking and teaching at security conferences worldwide, he is always eager to learn new things and collaborate with other security enthusiasts.
Related RE content from the instructor:
-
https://clearbluejar.github.io/posts/from-ntobjectmanager-to-petitpotam/
-
https://www.clearseclabs.com/everyday-ghidra-practical-windows-reverse-engineering.html
Registration Terms and Conditions:
Trainings are refundable before July 8, 2025, the processing fee is $250.
Trainings are non-refundable after July 8, 2025.
Training tickets may be transferred. Please email us at training@defcon.org for specifics.
Failure to attend the Training without prior written notification, will be considered a No-Show. No refund will be given.
By purchasing this ticket you agree to abide by the DCT Code of Conduct and the registration terms and conditions listed above.