Courses include:
- Reverse Engineering - Explore Reverse Engineering (RE) tools in a lab-based setting with advanced topics including binary instrumentation and concolic analysis, and more.
- Vulnerability Research - Discover tools and methods and public domain materials covering vulnerability discovery and categorization. Students will perform evaluations of systems and devices such as web services, databases, embedded security appliances. A simulated capture-the-flag exercise concludes this course and gives students the opportunity to focus on various exploitation categories of interest to them.
- Hardware RE - An introduction to hardware systems and embedded communications and how they factor into the RE process. Serves as a hardware overview with emphasis on how these devices communicate and how they can be analyzed.
- Embedded Hardware RE - Delve into advanced topics such as recovering firmware from a hardware device and subsequently performing RE on extracted firmware, then evaluate the platform for potential vulnerabilities and develop exploits against the target.
- Networking - Learn the importance of cryptography in a networked environment. Build a network-aware application and implement cryptographic protocols to enable secure communications.
- Kennel/Drivers -Learn to develop, build and modify a Linux Kennel through a series of drivers that allow the student to interact with (and interrogate) the system.
- Embedded Systems - Explore the details involving a system’s Boot modes/options, the process of bootstrapping and how systems moved from BIOS to U/EFI. It concludes with an overview of forensic analysis on memory and filesystems.
- Machine Learning - This brief course presents the concepts and resources necessary behind machine learning. It covers mathematical concepts consistent with this topic.
- Side Channel Analysis - Conduct a side channel attack against an Arduino board and cover the implications and purposes of this kind of hardware vulnerability.
- Lean Mean Software - Understanding how to build C programs for space constrained environments and other conditions.
- Mobile - Introduction to cellular systems, including Android and iOS.