Computer Science 390R - ReverseEngin&VulnrbltyAnalysis
Spring
2024
01
3.00
Steven Rossi
TH 5:30PM 8:00PM
UMass Amherst
11953
Computer Science Bldg rm 142
srossi@umass.edu
Many software developers aren't aware of how to properly write secure code. This course covers practical skills in reverse engineering and binary exploitation, and examines the techniques used by hackers in recent major security incidents. The course objective is to provide students with a strong understanding of attack patterns, and to ensure students implement more secure coding practices in their own code. This course begins with an introduction to Intel-based assembly, reverse engineering, vulnerability analysis, and various forms of Linux-focused binary exploitation. The course then covers 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 counts as a CS Elective for the CS Major (BA or BS).
Open to junior and senior COMPSCI, INFORM, and CSENG students. COMPSCI 230 or ECE 322/373 w C ALTHOUGH OPEN TO INFORM MAJORS, THIS COURSE DOES NOT COUNT AS AN INFORM ELECTIVE. STUDENTS NEEDING SPECIAL PERMISSION MUST REQUEST OVERRIDES VIA THE ON-LINE FORM: http://www.cics.umass.edu/overrides.