Reverse-engineering is an essential skill for many cybersecurity disciplines - vulnerability assessment, malware analysis, and software interoperability.
This course is designed to introduce students to the fundamentals of reverse-engineering software.
These fundamentals are common to desktop, mobile, and embedded architectures.
Over five days, we introduce students to the x86 instruction set and CPU architecture, recognizing C code constructs in assembly code, reverse-engineering with IDA Pro, and binary vulnerability research.
Lectures will be supported by extensive supervised lab exercises which reinforce and cement knowledge.