All About Ghidra
Michael Wittner
What is Ghidra?
Software Reverse Engineering Tool
Open Source
Made by NSA
Used to understand how compiled programs work
Disassembler - Turn bits into assembly code.
Decompiler - Turn assembly code into C-like code
Why did it become popular?
Simpler Interface
Open Source
Other popular products cost hundreds/thousands
Excellent decompiler
Better than the competition
NSA Software
Reputable source
How is it Used in Security?
Security Research
Statically analyze how software/malware behave
Determine the effectiveness of security implementations
Compiler modifications
Developer modifications
Vulnerability research
Discover exploits in a program
Useful Features
Scripts
Written in Java or Python
Automate need to Reverse Engineer
Useful Features
Function Graph
Demonstrates control flow of the programs
Multiple Search Utilities
Built in strings finder
Function finder
etc
Why use a Competitor?
Binary Ninja
Better integration into software (not just scripts)
APIs in C/C++, Rust, and Python
Innovative
IDA/Radare2
Better integration with Debuggers
Prerequesites Before Starting
Learn assembly for your desired platform
Learn C, Memory Management, basics on Operating System and Compilers
Learn how to use a debugger
Necessary for dynamic analysis
A great compliment to Ghidra
Questions?