This course focuses on security-relevant software analysis in real-world settings. As such, a significant component of this class will be reverse engineering techniques. We will apply the techniques we learn to analyze real-world vulnerabilities and create exploits. We will also look at defenses against vulnerabilities as found in both research and practice. Finally, we will investigate techniques for analyzing malicious software. The skills acquired in this class are applicable in both research and practice. Students will be expected to complete a course project.
Prerequisites(s): 18730 or equivalent introduction to computer security