Attack Presentations

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).

By 1pm, Tuesday Jan 31, email Dave with:

  • Your group (1-2 people).
  • Your top five preferred attacks.
  • Dates during which your team can't present, if any.

For the presentation:

  • Describe the relevant background for the attack.
  • Demonstrate the attack live, or else show enough data/information for it to be clear that the attack has been launched.
  • Describe how this attack could be defended against.
  • Describe the challenges you faced and insights you gleaned from the attack.

Note All attacks must be performed in an ethical, safe manner; please see the discussion of legality and ethics in the syllabus.


Date Attack Description
01/26
01/31
02/02
02/07 Control flow attack Demonstrate a modern control flow attack against modern defenses such as DEP, ASLR, and Canaries.
02/09 Kernel-level rootkit Launch a kernel rootkit that hides from detection.
02/14 Attacking vulnerable websites Build a dummy website of your choice and demonstrate XSS, CSRF, and SQL injection attacks against it.
02/16 Tricking users 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).
02/21
02/23
02/28 Cold-boot attack Launch a cold-boot attack like the ones described here.
03/02 Cross-VM side-channel attack Launch a cross-VM side-channel attack like the ones described here.
03/07 Compiler Trojan horse Modify LLVM to create a malicious compiler as described here.
03/09 Malicious peripheral I will provide you with a PIC32 microcontroller. Use this to interpose between a keyboard and a computer to capture keystrokes and filter out user passwords. When you provide a "secret knock", your malicious device should dump the data. Bonus: interpose between a computer and a printer to alter output of printed election results.
03/14 Project proposal presentations
03/16 Midterm
03/21 Spring Break
03/23
03/28 TLS information leakage Demonstrate the BEAST, CRIME, or Lucky 13 attacks against TLS.
03/30 Differential power analysis Perform DPA on a cryptographic routine to recover the secret key.
04/04 Breaking CAPTCHAs Implement a tool that automatically solves CAPTCHAs, such as the one described here. Demonstrate its use on an Alexa top-1000 site.
04/06 Cracking passwords Obtain a publicly available dataset of password hashes and implement rainbow tables to crack the passwords.
04/11 Kaminsky attack Demonstrate the Kaminsky DNS cache poisoning attack on a dummy DNS server you run.
04/13 Rogue wireless AP I will provide you with a OpenWRT access point. Modify its software to infect downloaded executables with malware.
04/18 Off-path TCP attack Demonstrate an off-path TCP inference attack and use it to inject data and to reset the connection.
04/20 Opt-Ack Attack Demonstrate the optimistic acknowledgment attack on a small cluster of machines. Perform this across a wide-area network and discuss the rates you can achieve.
04/25 Traffic deanonymization Demonstrate a traffic deanonymization attack on Tor, like the one described here.
04/27 Data deanonymization Apply a deanonymization technique like the one here to the Netflix challenge dataset and demonstrate what information you can extract.
05/02 Firmware-resident malware I will provide a digital camera; use the CHDK framework to install malicious code that does not allow the user to take pictures if you are in it (or if you are not in it, etc.). Other firmware attacks are also acceptable.
05/04
05/09
05/11

Web Accessibility