We put a tentative syllabus here to give you an idea what future may bring. This syllabus is subject to change as the course progresses.
| # | Day | Date | Topic | Assignment | Speakers |
|---|---|---|---|---|---|
| 1 | Tue | Jan 16 | Introduction | Form reading group | |
| 2 | Tue | Jan 23 | Program instrumentation | Read Detours, Pin, skim LD_PRELOAD trick | |
| 3 | Tue | Jan 30 | Dynamic analysis | Read Valgrind memory checker, Baggy bounds checking | |
| 4 | Tue | Feb 6 | Static and symbolic analysis | Read Meta Compilation, EXE, skim Coverity, LLVM tutorial and LLVM | |
| 5 | Tue | Feb 13 | Model checking | Read Chess, DPOR | Xinhao Yuan |
| 6 | Tue | Feb 20 | Debugging, recovery | Read Delta Debugging, Rx | |
| 7 | Tue | Feb 27 | Concurrency | Read Hybrid race detection, Parrot | |
| 8 | Tue | Mar 6 | Verification | Read Verdi, IronFleet | Xinhao Yuan |
| 9 | Tue | Mar 13 | No class (Spring recess) | ||
| 10 | Tue | Mar 20 | Distributed systems | Read Magpie, Modist | |
| 11 | Tue | Mar 27 | Fuzz testing | Read Vuzzer, NEZHA | Theofilos Petsios |
| 12 | Tue | Apr 3 | Mobile | Read AppInsight, AppDoctor | |
| 13 | Tue | Apr 10 | Machine learning | Read Adversarial ML, Unlearning | |
| 14 | Tue | Apr 17 | ROP attacks and defenses | Read JIT ROP, Shuffler | David Williams-King |
| 15 | Tue | Apr 24 | Mini-research conference | Present and demo your final project |