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