ScheduleΒΆ

The schedule will change as the course progresses, in part based on student interests. If you are particularly interested in some topic not covered here, send mail to the course staff (mailto:staff). Please visit our scoreboard at the submission web site and importantly, ask any questions (and things to discuss) with colleagues and staffs via Ed Discussion.

Monday Tuesday Wednesday Thursday Friday
May 13
First day of class (No class)
May 14
May 15
May 16
May 17
LEC: Warm-up: x86, Tools [slides]
TUT: Tut01: GDB/x86 [video]
Preparation: Read asm
Assigned: Lab01: Bomb Lab1
May 20
May 21
May 22
May 23
DUE: Lab 01
May 24
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
May 27
Memorial Day
May 28
May 29
May 30
DUE: Lab 02
May 31
LEC: Writing exploits [slides]
TUT: Tut03: Writing Your First Exploit [video]
Preparation: Read Phrack #49-14
Assigned: Lab03: Stack Overflow
Jun 03
Jun 04
Jun 05
Jun 06
Jun 07
LEC: Exploiting stack overflows [slides]
TUT: Tut03: Writing Exploits with pwntools [video]
Preparation: Read pwntools
Jun 10
Jun 11
Jun 12
Jun 13
DUE: Lab 03
Jun 14
LEC: Stack Protections [slides]
TUT: Tut04: Bypassing Stack Canaries [video]
Preparation: Read Bypassing StackShield
Assigned: Lab04: Bypassing Stack Protection
Jun 17
Jun 18
Jun 19
Juneteenth
Jun 20
DUE: Lab 04
Jun 21
LEC: DEP and ASLR [slides]
TUT: Tut05: Format String Vulnerability [video]
Preparation: Read ASLR Smack & Laugh Reference
Assigned: Lab05: Bypassing DEP/ASLR
Jun 24
Jun 25
Jun 26
Jun 27
DUE: Lab 05
Jun 28
LEC: Return-oriented Programming (ROP) [slides]
TUT: Tut06: Return-oriented Programming (ROP) [video]
Preparation: Read ROP
Assigned: Lab06: Return-oriented Programming
Jul 01
Jul 02
Jul 03
Jul 04
Independence Day
Jul 05
LEC: Advanced ROP [slides]
TUT: Tut06: Advanced ROP [video]
Jul 08
Jul 09
Jul 10
Jul 11
DUE: Lab 06
Jul 12
LEC: Remote Exploitation [slides]
TUT: Tut07: Socket Programming in Python [video]
Assigned: Lab07: Remote Attacks
Jul 15
Jul 16
Jul 17
Jul 18
Jul 19
LEC: ROP against Remote Service
TUT: Tut07: ROP Against Remote Service [video1], [video2]
Jul 22
Jul 23
Jul 24
Jul 25
Final exam week
(No final!)
DUE: Lab 07
Jul 26
Final exam week
(No final!)
Jul 29
Final exam week
(No final!)
Jul 30
Final exam week
(No final!)
Jul 31
Final exam week
(No final!)
Aug 01
Final exam week
(No final!)
Aug 02