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 Piazza.

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