Week 1
Introduction
Reading:
K. Thompson Reflections on Trusting Trust
C. Miller The Legitimate Vulnerability Market. Inside the Secretive World of 0-day Exploit Sales
S. Inguva et al. Source Code Review of the Hart InterCivic Voting System (Chapter 3 only)
Week 2
Project tutorial
No reading.
Week 3
Memory safety vulnerabilities 1
Reading:
Memory safety vulnerabilities 2
Reading:
Week 4
Code reuse attacks
No reading.
Return-Oriented Programming
Reading:
Week 5
ROP defenses
Reading:
L. Davi, A.-R. Sadeghi, and M. Winandy ROPdefender: A Detection Tool to Defend Against Return-Oriented Programming Attacks
V. Pappas kBouncer: Efficient and Transparent ROP Mitigation
Software Fault Isolation and Control-Flow Integrity
Reading:
S. McCamant and G. Morrisett Evaluating SFI for a CISC Architecture
M. Abadi, M. Budiu, U. Erlingsson, and J. Ligatti Control-Flow Integrity: Principles, Implementations, and Applications
Week 6
Data as code
Reading:
N. Alramli Why Python Pickle is Insecure
J. Mason, S. Small, F. Monrose, and G. MacManus English Shellcode
S. Checkoway, H. Shacham, and E. Rescorla Are Text-Only Data Formats Safe? Or, Use This LaTeX Class File to Pwn Your Computer
Exam review
No reading.
Week 7
No class
No reading.
Exam 1
No reading.
Week 8
Browsers and the Same-Origin Policy
Reading:
M. Zalewski Browser Security Handbook chapters 1 (basic concepts) and 2 (standard security features)
C. Jackson and A. Barth Beware of Finer-Grained Origins
Cross-origin Attacks: CSRF
Reading:
A. Barth, C. Jackson, and J. Mitchell Robust Defenses for Cross-Site Request Forgery
Week 9
Cross-origin Attacks: XSS
Reading:
D. Bates, A. Barth, and C. Jackson Regular Expressions Considered Harmful in Client-Side XSS Filters
Frames: Communication and Clickjacking
Reading:
A. Barth, C. Jackson, and J. Mitchell Securing Frame Communication in Browsers
P. Stone Next Generation Clickjacking: New Attacks Against Framed Web Pages
Week 10
Frames 2: Framebusting
Reading:
G. Rydstedt, E. Bursztein, D. Boneh, and C. Jackson Busting Frame Busting: a Study of Clickjacking Vulnerabilities on Popular Sites
HTTPS
Reading:
C. Jackson and A. Barth ForceHTTPS: Protecting High-Security Web Sites from Network Attacks
C. Soghoian and S. Stamm Certified Lies: Detecting and Defeating Government Interception Attacks Against SSL
Week 11
Embedded system security
No reading.
Guest lecture by Prof. Matthew Green
No reading.
Week 12
Class canceled
No reading.
Is it all worth it?
Reading:
E. Rescorla Is finding security holes a good idea?
E. Rescorla Security holes… Who cares? Optional
Week 13
Thanksgiving: No class
No reading.
Week 14
Review
No reading.
Exam 2
No reading.