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:insuyun@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 28
LEC 1: Introduction 01-introduction.pdf
First day of class
Mar 1
Samiljeol, Independence Movement Day
Mar 2
LEC 2: Reverse Engineering 02-reverse_engineering.pdf
TUT 1: GDB/x86
Ref: Read x86, GDB1, GDB2
Assigned: Lab01: Bomblab
Mar 3 Mar 4
Mar 7
LEC 3: Linux Fundamentals 03-linux-fundamentals.pdf
Mar 8 Mar 9
20th Presidential election
Mar 10 Mar 11
Mar 14
LEC 4: Shellcode 04-shellcode.pdf
Mar 15 Mar 16
TUT 2: Shellcode
DUE: Lab01: Bomblab
Assigned: Lab02: Linux Fundamentals / Shellcode
Mar 17 Mar 18
Mar 21
LEC 5: Stack overflow 05-stack_overflow.pdf
Ref: Read Phrack #49-14
Mar 22 Mar 23
LEC 6: Frame pointer attack 06-frame_pointer_attack.pdf
Ref: Read Phrack #55-8
Mar 24 Mar 25
Mar 28
TUT 3: Tut03: Writing Your First Exploit
TUT 4: Tut03: Writing Exploits with pwntools
DUE: Lab02: Linux Basic / Shellcode
Assigned: Lab03: Stack overflow
Mar 29 Mar 30
LEC 7: Bypass stack protection 07-stack_protection.pdf
Ref: Read Bypass StackShield
Mar 31 Apr 1
Apr 4
LEC 8: Bypass stack protection #2 08-stack_protection_2.pdf
Apr 5 Apr 6
TUT 5: Tut04: Bypassing Stack Canaries
DUE: Lab03: Stack overflow
Assigned: Lab04: Bypassing Stack Protection
Apr 7 Apr 8
Apr 11
LEC 9: DEP/ASLR 09-dep_aslr.pdf
Ref: Read ASLR Bypass
Apr 12 Apr 13
LEC 10: Format string bug 10-format_string_bug.pdf
Ref: Read Format String Exploits
Apr 14 Apr 15
Apr 18
No midterm!
Apr 19
No midterm!
Apr 20
No midterm!
Apr 21
No midterm!
Apr 22
No midterm!
Apr 25
TUT 6: Tut05: Format String Vulnerability
DUE: Lab04: Bypassing Stack Protection
Assigned: Lab05: Bypassing DEP/ASLR
Apr 26 Apr 27
LEC 11: Return oriented programming 11-rop.pdf
Ref: Read ROP
Apr 28 Apr 29
May 2
LEC 12: Advanced return oriented programming 12-advrop.pdf
Ref: Read ROP Turing Complete
May 3 May 4
TUT 7: Tut06: Return-oriented Programming (ROP)
TUT 8: Tut06: Advanced ROP
DUE: Lab05: Bypassing DEP/ASLR
Assigned: Lab06: Return-oriented Programming
May 5
Children's day
May 6
May 9
LEC 13: Introduction to in-class CTF 13-ctf.pdf
May 10 May 11
LEC 14: Remote exploitation 14-remote.pdf
May 12 May 13
May 16
TUT 9: Tut07: ROP against Remote Service
DUE: Lab06: Return-oriented Programming
Assigned: Lab07: Remote Attacks
May 17 May 18
LEC 15: Miscellaneous Topics 15-misc.pdf
May 19
Buddha's day
May 20
May 23
LEC 16: Browser exploitation 16-browser_exp.pdf
May 24 May 25
TUT 10: Tut08: No tutorial
DUE: Lab07: Remote Attacks
Assigned: Lab08: Miscellaneous Topics
May 26 May 27
May 30
LEC 17: Heap exploitation 16-heap_exp.pdf
Ref: Read how2heap
May 31 Jun 1
8th Local election
Jun 2 Jun 3
Jun 6
Memorial Day
Jun 7 Jun 8
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 9 Jun 10
Jun 13
The last day of class
Jun 14
No final!
Jun 15
No final!
Jun 16
No final!
Jun 17
No final!