COMPSCI CS 390R: Reverse Engineering and Vulnerability Analysis
Instructors: Brian Levine, Steven Rossi, and Gilbert Hoermann
Software is everywhere and many developers aren't aware of how to properly write secure code. We will cover practical skills in reverse engineering and binary exploitation, and delve into the techniques used by hackers for some of the largest security incidents of the century. With a strong understanding of attack patterns, students will be able to implement more secure coding practices into their own code.
This course will start by covering Intel-based assembly, reverse engineering, vulnerability analysis and various forms of Linux-focused binary exploitation. Throughout this course we will cover stack, heap and linux kernel based exploitation, and dive into common defensive mitigations such as ASLR, NX and Stack Cookies alongside techniques to bypass each of them. This course will be focused on low level software written in C, which is why an understanding of the topics covered in CS230 is required.
- Gain a deeper understanding of operating systems and memory management
- Learn how to reverse engineer closed source programs
- Analyze programs for potential security vulnerabilities and learn more secure coding practices
A more descriptive syllabus of the course can be found linked immediately below