This schedule is an estimate. It may be updated based on the actual pacing of the course material.
| Date | Topic | Assignment |
| Week 1 | ||
| Mon 12 Jan |
References:
| |
| Wed 14 Jan |
| |
| Fri 16 Jan |
References:
| RE1 released |
| Week 2 | ||
| Mon 19 Jan |
(no class)
| |
| Wed 21 Jan |
| Quiz week02 (quiz for week 2) released, due 2026-01-26 11:45 |
| Fri 23 Jan |
x86-64 encoding / Reverse engineering tools[ | screencapture (browser or download mp4 webm audio ) ]
| RE1 due by 11:59pm RE2 released |
| Week 3 | ||
| Mon 26 Jan |
| Quiz week02 (quiz for week 2) due 11:45 (released 2026-01-21) |
| Wed 28 Jan |
| Quiz week03 (quiz for week 3) released, due 2026-02-02 11:45 |
| Fri 30 Jan |
| RE2 due by 11:59pm TRICKY released |
| Week 4 | ||
| Mon 02 Feb |
| Quiz week03 (quiz for week 3) due 11:45 (released 2026-01-28) |
| Wed 04 Feb |
Heuristic/behavioral detection / Anti-signature/analysis techniques[ | screencapture (browser or download mp4 webm audio ) ]
| Quiz week04 (quiz for week 4) released, due 2026-02-09 11:45 |
| Fri 06 Feb |
| TRICKY due by 11:59pm LEX released |
| Week 5 | ||
| Mon 09 Feb |
| Quiz week04 (quiz for week 4) due 11:45 (released 2026-02-04) |
| Wed 11 Feb |
Anti-debugging / Command injection / Taint tracking[ | screencapture (browser or download mp4 webm audio ) ]
| Quiz week05 (quiz for week 5) released, due 2026-02-16 11:45 |
| Fri 13 Feb |
| LEX due by 11:59pm OBFUSCATE released |
| Week 6 | ||
| Mon 16 Feb |
Stack smashing 1: Jump to stack / Shellcode[ | screencapture (browser or download mp4 webm audio ) ]
| Quiz week05 (quiz for week 5) due 11:45 (released 2026-02-11) |
| Wed 18 Feb |
Stack smashing 2: Shellcode restrictions / Stack Canaries[ | screencapture (browser or download mp4 webm audio ) ]
| Quiz week06 (quiz for week 6) released, due 2026-02-23 11:45 |
| Fri 20 Feb |
(Reiss out of town)
| OBFUSCATE due by 11:59pm OVER released |
| Week 7 | ||
| Mon 23 Feb |
| Quiz week06 (quiz for week 6) due 11:45 (released 2026-02-18) |
| Wed 25 Feb |
information disclosure / guard pages / write XOR execute[ | screencapture (browser or download mp4 webm audio ) ]
| Quiz week07 (quiz for week 7) released, due 2026-03-09 11:45 |
| Fri 27 Feb |
| OVER due by 11:59pm SUBTERFUGE (tentative writeup) released |
| Week 9 | ||
| Mon 02 Mar |
(no class)
| |
| Wed 04 Mar |
(no class)
| |
| Fri 06 Mar |
(no class)
| |
| Week 8 | ||
| Mon 09 Mar |
Return oritented programming 1[ ]
| Quiz week07 (quiz for week 7) due 11:45 (released 2026-02-25) |
| Wed 11 Mar |
return-oriented programming 2[ ]
| Quiz week09 (quiz for week 09) released, due 2026-03-16 11:45 |
| Fri 13 Mar |
return-oriented programming 3[ ]
| SUBTERFUGE (tentative writeup) due by 11:59pm ROP (tentative writeup) released |
| Week 10 | ||
| Mon 16 Mar |
heap structure exploits / UAF intro[ ]
| Quiz week09 (quiz for week 09) due 11:45 (released 2026-03-11) |
| Wed 18 Mar |
memory-safe languages 1[ ](Reiss out of town)
| Quiz week10 (quiz for week 10) released, due 2026-03-23 11:45 |
| Fri 20 Mar |
memory-safe languages 2[ ](Reiss out of town)
| ROP (tentative writeup) due by 11:59pm RUST (tentative writeup) released |
| Week 11 | ||
| Mon 23 Mar |
memory-safe languages 3[ ]( Reiss out of town)
| Quiz week10 (quiz for week 10) due 11:45 (released 2026-03-18) |
| Wed 25 Mar |
heap structure exploits / use-after-free[ ]
| Quiz week11 (quiz for week 11) released, due 2026-03-30 11:45 |
| Fri 27 Mar |
use-after-free / integer overflow[ ]
| RUST (tentative writeup) due by 11:59pm UAF (tentative writeup) released |
| Week 12 | ||
| Mon 30 Mar |
coverage-guided (fuzz-)testing[ ]
| Quiz week11 (quiz for week 11) due 11:45 (released 2026-03-25) |
| Wed 01 Apr |
symbolic/concolic execution 1[ ]
| Quiz week12 (quiz for week 12) released, due 2026-04-06 11:45 |
| Fri 03 Apr |
static analysis / sandboxing 0[ ]
| UAF (tentative writeup) due by 11:59pm FUZZ (tentative writeup) released |
| Week 13 | ||
| Mon 06 Apr |
sandboxing 1[ ]
| Quiz week12 (quiz for week 12) due 11:45 (released 2026-04-01) |
| Wed 08 Apr |
sandboxing 2[ ]
| Quiz week13 (quiz for week 13) released, due 2026-04-13 11:45 |
| Fri 10 Apr |
sandboxing 3[ ]
| FUZZ (tentative writeup) due by 11:59pm SANDBOX (tentative writeup) released |
| Week 14 | ||
| Mon 13 Apr |
fast? bounds checking 1[ ]
| Quiz week13 (quiz for week 13) due 11:45 (released 2026-04-08) |
| Wed 15 Apr |
fast? bounds checking 2[ ]
| Quiz week14 (quiz for week 14) released, due 2026-04-20 11:45 |
| Fri 17 Apr |
control-flow integrity 1[ ] | SANDBOX (tentative writeup) due by 11:59pm |
| Week 15 | ||
| Mon 20 Apr |
control flow integrity 2[ ] | Quiz week14 (quiz for week 14) due 11:45 (released 2026-04-15) |
| Wed 22 Apr |
same-origin policy and XSS mitigation[ ] | Quiz week15 (quiz for week 15) released, due 2026-04-27 11:45 |
| Fri 24 Apr |
same-origin policy and XSS mitigation[ ] | |
| Week 16 | ||
| Mon 27 Apr |
Exam review | Quiz week15 (quiz for week 15) due 11:45 (released 2026-04-22) |
| Wed 29 Apr |
(no class)
| |
| Week 17 | ||
| Fri 08 May |
Final exam2PM-5PM. | CHALLENGE due by 1:30pm; no late submissions accepted (tentative writeup) |