ScheduleΒΆ
The schedule might change as the course progresses.
Monday | Tuesday | Wednesday | Thursday | Friday |
Aug 19
First day of class (No class) |
Aug 20
|
Aug 21
|
Aug 22
|
Aug 23
LEC: Warm-up: x86, Tools [slides] TUT: Tut01: GDB/x86 [video] Preparation: Read asm Assigned: Lab01: Bomb Lab1 |
Aug 26
|
Aug 27
|
Aug 28
|
Aug 29
DUE: Lab 01 |
Aug 30
LEC: Warm-up: x86_64, Shellcode, Tools [slides] TUT: Tut02: Pwndbg, Ghidra, Shellcode [video1], [video2], [video3] Preparation: Read x86_64 Assigned: Lab02: Bomb Lab2 / Shellcode |
Sep 02
Labor Day |
Sep 03
|
Sep 04
|
Sep 05
DUE: Lab 02 |
Sep 06
LEC: Stack Overflow [slides] TUT: Tut03: Writing Your First Exploit [video] Preparation: Read Phrack #49-14 Assigned: Lab03: Stack Overflow |
Sep 09
|
Sep 10
|
Sep 11
|
Sep 12
|
Sep 13
LEC: Writing Exploits with Pwntools [slides] TUT: Tut03: Writing Exploits with pwntools [video] Preparation: Read pwntools |
Sep 16
|
Sep 17
|
Sep 18
|
Sep 19
DUE: Lab 03 |
Sep 20
LEC: Stack Protections [slides] TUT: Tut04: Bypassing Stack Canaries [video] Preparation: Read Bypassing StackShield Assigned: Lab04: Bypassing Stack Protection |
Sep 23
|
Sep 24
|
Sep 25
|
Sep 26
DUE: Lab 04 |
Sep 27
LEC: DEP and ASLR [slides] TUT: Tut05: Format String Vulnerability [video] Preparation: Read ASLR Smack & Laugh Reference Assigned: Lab05: Bypassing DEP/ASLR |
Sep 30
|
Oct 01
|
Oct 02
|
Oct 03
DUE: Lab 05 |
Oct 04
LEC: Return-oriented Programming (ROP) [slides] TUT: Tut06: Return-oriented Programming (ROP) [video] Preparation: Read ROP Assigned: Lab06: Return-oriented Programming |
Oct 07
|
Oct 08
|
Oct 09
|
Oct 10
|
Oct 11
LEC: Advanced ROP [slides] TUT: Tut06: Advanced ROP [video] |
Oct 14
Fall break |
Oct 15
Fall break |
Oct 16
|
Oct 17
DUE: Lab 06 |
Oct 18
LEC: Remote Exploitation, ROP against Remote Service [slides] TUT: Tut07: Socket Programming in Python [video] Assigned: Lab07: Remote Attacks |
Oct 21
|
Oct 22
|
Oct 23
|
Oct 24
|
Oct 25
LEC: Fuzzing/Symbolic Execution [slides] TUT: Tut07: ROP Against Remote Service [video1], [video2] |
Oct 28
|
Oct 29
|
Oct 30
|
Oct 31
DUE: Lab 07 |
Nov 01
LEC: Integer Overflows, Race Conditions [slides] TUT: Tut08: Logic Errors [video] Assigned: Lab08: Miscellaneous Topics |
Nov 04
|
Nov 05
|
Nov 06
|
Nov 07
DUE: Lab 08 |
Nov 08
LEC: Designing Heap Allocator [slides] [note] [whiteboard] TUT: Tut09: Understanding Heap Bugs [video1], [video2] Assigned: Lab09: Exploiting Heap Bugs |
Nov 11
|
Nov 12
|
Nov 13
|
Nov 14
|
Nov 15
LEC: Exploiting Heap Allocator [slides] TUT: Tut09: Exploiting Heap Allocators [video] |
Nov 18
|
Nov 19
|
Nov 20
|
Nov 21
DUE: Lab 09 |
Nov 22
TUT: Tut10: Fuzzing TUT: Tut10: Symbolic Execution TUT: Tut10: Hybrid Fuzzing Preparation: NSA Codebreaker Challenges'23 Assigned: Lab10: TKCTF (for 24h) |
Nov 25
|
Nov 26
|
Nov 27
|
Nov 28
Thanksgiving |
Nov 29
Thanksgiving |
Dec 02
|
Dec 03
|
Dec 04
|
Dec 05
Final exam week (No final!) |
Dec 06
Final exam week (No final!) |
Dec 09
Final exam week (No final!) |
Dec 10
Final exam week (No final!) |
Dec 11
Final exam week (No final!) |
Dec 12
Final exam week (No final!) |
Dec 13
|