The assignments will give you hands-on experience in implementing the concepts we learn in the class. Have fun!

Assignment 1

9/9 - 9/29

Checkpoint Due:9/17

This homework will cover the software security section. You will create actual working exploits (e.g., buffer overflows, breaking things even with ASLR enabled, non-exec stacks, format string vulnerabilities etc).

Lead TA: Isabel
Helper TAs: Jon, Oscar

Assignment 2

10/8 - 10/31

This homework will cover the cryptography section. You will have a mix of theoretical questions to reason about the security of cryptographic constructions as well as construct working attacks that could arise with improper use of primitives (e.g., combining with compression, message padding, poor key generation).

Lead TA: Rebecca
Helper TAs: Jon, Peizhi

Assignment 3

11/11 - 11/24

This homework will focus mostly on the web-based attacks that we learn in class. We have a dummy e-commerce application that you will try and break using a combination of web exploits (e.g., XSS, playing with cookies).

Lead TA: Ari
Helper TAs: Oscar, Peizhi