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 17 | Introduction | Form reading group | |
2 | Tue | Jan 24 | Program instrumentation | Read Detours, Pin, skim LD_PRELOAD trick | |
3 | Tue | Jan 31 | Dynamic analysis | Read Valgrind memory checker, Baggy bounds checking | |
4 | Tue | Feb 7 | Model checking | Read Chess, DPOR | Xinhao Yuan |
5 | Tue | Feb 14 | Static and symbolic analysis | Read Meta Compilation, EXE, skim Coverity, LLVM tutorial and LLVM | |
6 | Tue | Feb 21 | Verification | Read Verdi, IronFleet | Xinhao Yuan |
7 | Tue | Feb 28 | Debugging, recovery | Read Delta Debugging, Rx | |
8 | Tue | Mar 7 | Concurrency | Read Hybrid race detection, Parrot | |
9 | Tue | Mar 14 | No class (Spring recess) | ||
10 | Tue | Mar 21 | Distributed systems | Read Magpie, Modist | |
11 | Tue | Mar 28 | Fuzz testing | Read NEZHA, angr | Theofilos Petsios |
12 | Tue | Apr 4 | Mobile | Read AppInsight, AppDoctor | |
13 | Tue | Apr 11 | Machine learning | Read Adversarial ML, Unlearning | |
14 | Tue | Apr 18 | ROP attacks and defenses | Read JIT ROP, Shuffler | David Williams-King |
15 | Tue | Apr 25 | Mini-research conference | Present and demo your final project |