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:ee517@hacking.kaist.ac.kr).

Please visit our scoreboard at the submission web site. Importantly, ask any questions (and things to discuss) with colleagues and staffs via Piazza.

MondayTuesday WednesdayThursday Friday
Feb 27
LEC 1: Introduction
First day of class
Feb 28 Mar 1
Samiljeol, Independence Movement Day
Mar 2 Mar 3
Mar 6
LEC 2: Reverse Engineering
TUT 1: GDB/x86
Ref: Read x86, GDB1, GDB2
Assigned: Lab01: Bomblab
Mar 7 Mar 8
LEC 3: Linux Fundamentals
Mar 9 Mar 10
Mar 13
LEC 4: Shellcode
Mar 14 Mar 15
TUT 2: Shellcode
DUE: Lab01: Bomblab
Assigned: Lab02: Linux Fundamentals / Shellcode
Mar 16 Mar 17
Mar 20
LEC 5: Stack overflow
Ref: Read Phrack #49-14
Mar 21 Mar 22
LEC 6: Frame pointer attack
Ref: Read Phrack #55-8
Mar 23 Mar 24
Mar 27
TUT 3: Tut03: Writing Your First Exploit
TUT 4: Tut03: Writing Exploits with pwntools
DUE: Lab02: Linux Basic / Shellcode
Assigned: Lab03: Stack overflow
Mar 28 Mar 29
LEC 7: Bypass stack protection
Ref: Read Bypass StackShield
Mar 30 Mar 31
Apr 3
LEC 8: Bypass stack protection #2
Apr 4 Apr 5
TUT 5: Tut04: Bypassing Stack Canaries
DUE: Lab03: Stack overflow
Assigned: Lab04: Bypassing Stack Protection
Apr 6 Apr 7
Apr 10
LEC 9: DEP/ASLR
Ref: Read ASLR Bypass
Apr 11 Apr 12
LEC 10: Format string bug
Ref: Read Format String Exploits
Apr 13 Apr 14
Apr 17
No midterm!
Apr 18
No midterm!
Apr 19
No midterm!
Apr 20
No midterm!
Apr 21
No midterm!
Apr 24
TUT 6: Tut05: Format String Vulnerability
DUE: Lab04: Bypassing Stack Protection
Assigned: Lab05: Bypassing DEP/ASLR
Apr 25 Apr 26
LEC 11: Return oriented programming
Ref: Read ROP
Apr 27 Apr 28
May 1
LEC 12: Advanced return oriented programming
Ref: Read ROP Turing Complete
May 2 May 3
TUT 7: Tut06: Return-oriented Programming (ROP)
TUT 8: Tut06: Advanced ROP
DUE: Lab05: Bypassing DEP/ASLR
Assigned: Lab06: Return-oriented Programming
May 4 May 5
Children's day
May 8
LEC 13: Introduction to in-class CTF
May 9 May 10
LEC 14: Remote exploitation
May 11 May 12
May 15
TUT 9: Tut07: ROP against Remote Service
DUE: Lab06: Return-oriented Programming
Assigned: Lab07: Remote Attacks
May 16 May 17
LEC 15: Miscellaneous Topics
May 18 May 19
May 22
TUT 10: Tut08: No tutorial
DUE: Lab07: Remote Attacks
Assigned: Lab08: Miscellaneous Topics
May 23 May 24
LEC 16: Heap exploitation
Ref: Read how2heap
May 25 May 26
May 29
LEC 17: Heap exploitation #2
May 30 May 31
TUT 11: Tut09: Understanding Heap Bugs
TUT 12: Tut09: Exploiting Heap Allocators
DUE: Lab08: Miscellaneous Topics
DUE: CTF Challenge
Assigned: Lab09: Exploiting Heap Bugs
Jun 1
8th Local election
Jun 2
Jun 5
LEC 18: Browser exploitation
Jun 6
Memorial Day
Jun 7
Assigned: In-class CTF
Jun 8 Jun 9
Jun 12
No final!
Jun 13
No final!
Jun 14
No final!
Jun 15
No final!
Jun 16
No final!
The last day of class