Below is the calendar for this semester course. This is the preliminary schedule, which will be altered as the semester progresses. It is the responsibility of the students to frequently check this web-page for schedule, readings, and assignment changes. As the professor, I will attempt to announce any change to the class, but this web-page should be viewed as authoritative. If you have any questions, please contact me (contact information is available at the course homepage).

Date Topic Assignments
Due
Readings for Discussion
(do readings before class)
01/19/21 Introduction
01/21/21 Formal Verification - Part 1
01/26/21 Formal Verification - Part 2 Project group information due.
01/28/21 Crypto Protocol Verification
02/02/21 Program Analysis Project propsal due.
KLEE: Unassisted and Automatic Generation of High-Coverage Tests for Complex Systems Programs. link
A Few Billion Lines of Code Later Using Static Analysis to Find Bugs in the Real World. link
CUTE: A Concolic Unit Testing Engine for C. link
02/04/21 Testing and Fuzzing
Project Part 1, Checkpoint 1
Discuss attack implementation.
Fuzzing: Challenges and Reflections. link
NEUZZ: Efficient Fuzzing with Neural Program Smoothing. link
The Art, Science, and Engineering of Fuzzing: A Survey. link
02/09/21 Wellness Day! Let me take a break too :)
02/11/21 TCP Security (Part 1)
Paper review 1 due.
Review format
Automated Attack Discovery in TCP Congestion Control Using a Model-guided Approach (NDSS'18). link
02/16/21 Network Printer Security Paper review 2 due
Project Part 1, Checkpoint 2
Progress of attack implmentation
SoK: Exploiting Network Printers (IEEE S&P 2018). link
02/18/21 Adversarial ML (Part 1)
Practical Black Box Attacks Against Machine Learning. link
02/23/21 Part 1 demo and Presentation
02/25/21 Part 1 demo and Presentation
Project Part 1, Checkpoint 3
Attack Demo and Presentation
03/02/21 Smart Contract Security (part 1)
Evil Under the Sun: Understanding and Discovering Attacks on Ethereum Decentralized Applications. link
03/04/21 Side Channel Attacks and Defenses
Project Part 2, Checkpoint 1
Part 2 proposal due
BINSEC/REL: Efficient Relational Symbolic Execution for Constant-Time at Binary-Level. link
03/09/21 Cellular Security (Part 1)
IMP4GT: IMPersonation Attacks in 4G NeTworks link
03/11/21 Wellness Day! Let me take a break too :)
03/16/21 Formally Verified OS
Project Part 2, Checkpoint 2
"Abstract" and "Introduction" due Implementation progress of part 2
Formal Verification of an OS Kernel. link
03/18/21 Adversarial ML (Part 2)
Adversarial Examples in Constrained Domains. link
03/23/21 Intrusion Detection
Kitsune: An Ensemble of Autoencoders for Online Network Intrusion Detection. link
03/25/21 Fuzzing
Project Part 2, Checkpoint 3
"Related Work" section due Implementation progress of part 2
Matryoshka: fuzzing deeply nested branches (CCS'19). link
03/30/21 Smart Contract Security (part 2)
Securify: Practical Security Analysis of Smart Contracts (CCS'18). link
04/01/21 DNS Security
Poison Over Troubled Forwarders: A Cache Poisoning Attack Targeting DNS Forwarding Devices (Usenix Security'20). link
04/06/21 Network Security
Project Part 2, Checkpoint 4
Preliminary evaluation results due
DeepLog: Anomaly Detection and Diagnosis from System Logs through Deep Learning. link
04/08/21 Adversarial ML (part 3)
Project Part 2, Checkpoint 4
Preliminary evaluation results due
Intriguing Properties of Adversarial ML Attacks in the Problem Space. link
04/13/21 Smart Contract Security (Part 3)
Learning to Fuzz from Symbolic Execution with Application to Smart Contracts (CCS'19). link
04/15/21 Taint Analysis
Neutaint: Efficient Dynamic Taint Analysis with Neural Networks. link
04/20/21 TCP Security (Part 2)
Project Part 2, Checkpoint 5
Complete evaluation results
Write up due for Design details and implementation
Principled Unearthing of TCP Side Channel Vulnerabilities (CCS'19). link
04/22/21 Paper presentation
Weird machines, exploitability, and provable unexploitability. link
04/27/21 Final project presentation Final paper due
04/29/21 Final project presentation Presentation due
.