For the first 10-15 minutes of most classes, student groups will present attacks that are relevant to that lecture (for example, when discussing user authentication, the group may present techniques for cracking CAPTCHAs).
Note All attacks must be performed in an ethical, safe manner; please see the discussion of legality and ethics in the syllabus.
For the presentation:
Date | Attack | Attacker | Description |
---|---|---|---|
04/06 | TLS information leakage | Tom | Demonstrate the BEAST, CRIME, or Lucky 13 attacks against TLS. |
Certificate mis-validation | Auguste | Demonstrate two examples of incorrect validation of a certificate with a modern browser of your choosing, such as not checking for revocations various attacks listed here. | |
04/08 | Traffic deanonymization | Manasi | Demonstrate a traffic deanonymization attack on Tor, like the one described here. |
Data deanonymization | Phoebe | Apply a deanonymization technique like the one here to the Netflix challenge dataset and demonstrate what information you can extract. | |
04/13 | On-path censorship and evasion | Ben | Set up a (virtual) network with an "on-path" censor who can observe and inject (but not block) packets, and use this censor to respond with lemon DNS queries like here, or tear down connections like here. Demonstrate an evasion technique. |
Language detection on encrypted VoIP | Saeed and Yiyun | Determine what language is being spoken via an encrypted VoIP call (e.g., Skype, Zoom, Google Meet) by measuring packet sizes, like in this paper. | |
04/15 | Cracking passwords | Yufan | Obtain a publicly available dataset of password hashes and implement rainbow tables to crack the passwords. |
Breaking CAPTCHAs | Deepti and Shreya | Implement a tool that automatically solves CAPTCHAs, such as the attack on text-based ones described here and/or the one on audio-based ones described here. Demonstrate its use on an Alexa top-1000 site. | |
04/20 | Control flow attacks | George and Katherine | Demonstrate a modern control flow attack against modern defenses such as DEP, ASLR, and Canaries. |
Kernel-level rootkit | Asim | Launch a kernel rootkit that hides from detection. | |
04/22 | Attacking vulnerable websites | Wangjue | Build a dummy website of your choice and demonstrate XSS, CSRF, and SQL injection attacks against it. |
04/27 | Tricking users | Abolee and Anna | Build a malicious website of your choice that tricks users by (1) launching a clickjacking attack, (2) performing a picture-in-picture attack, and (3) performs an SSL stripping attack (MitM transparently proxies HTTP requests and rewrites HTTPS links to point to look-alike HTTP links). |
Speculative execution attacks |
Geng and Kamil | Launch a speculative execution attack like Meltdown, Spectre, or Foreshadow | |
04/29 | Compiler Trojan horse | Matthew | Modify LLVM to create a malicious compiler as described here. |
Off-path TCP attack | Tim | Demonstrate an off-path TCP inference attack and use it to inject data and to reset the connection. Example side-channels include WiFi's exponential backoff and the global rate limit. | |
05/04 | Opt-ACK Attack | Brandon | Demonstrate the optimistic acknowledgment attack on a small cluster of (possibly simulated, e.g., via ns3) machines. Perform this across a wide-area network and discuss the rates you can achieve. |
NAT Slipstreaming | Kyle | Launch a NAT slipstreaming attack, as described here. | |
05/06 | Project presentations | ||
05/11 | Project presentations |