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.
| Monday | Tuesday | Wednesday | Thursday | Friday |
| Jan 19 MLK Day |
Jan 20 LEC 1: Intro & Preliminary Rev. Engineering #1 Preparation: Working with SSH Servers, Clients, and Keys Preparation: intel_asm at&t_asm Preparation: gdb1 gdb2 Resource: The Missing Semester of Your CS Education Assigned: Unit 1 First day of class |
Jan 21 | Jan 22 LEC 2: Preliminary Reverse Engineering #2 Preparation: intelCodeTable Preparation: How debugger works (part1) (part2) (part3) Resource: x86 instruction set reference Resource: AT&T vs. Intel Syntax 1 Resource: AT&T vs. Intel Syntax 2 Resource: Signed Binary Resource: Mark Watney's ASCII Resource: pwntools template ex.py |
Jan 23 |
| Jan 26 | Jan 27 LEC 3: Buffer overflow #1 |
Jan 28 | Jan 29 LEC 4: Buffer overflow #2 DUE: Unit 1 Assigned: Unit 2 |
Jan 30 |
| Feb 2 | Feb 3 LEC 5: Frame-pointer attack |
Feb 4 | Feb 5 LEC 6: Writing Shellcode #1 |
Feb 6 |
| Feb 9 | Feb 10 LEC 7: Writing Shellcode #2 DUE: Unit 2 Assigned: Unit3-Part1 |
Feb 11 | Feb 12 LEC 8: Writing Shellcode #3 |
Feb 13 |
| Feb 16 | Feb 17 LEC 9: Writing Shellcode #4 Assigned: Unit3-Part2 |
Feb 18 | Feb 19 LEC 10: ASCII and Alpha-numeric shellcode challenges DUE: Unit3-Part1 |
Feb 20 |
| Feb 23 | Feb 24 LEC 11: Intro to system defenses; Stack Cookie, DEP, and ASLR DUE: Unit3-Part2 Assigned: Unit4 |
Feb 25 | Feb 26 LEC 12: Some tips for ASLR, Stack Cookie, and DEP |
Feb 27 |
| Mar 2 | Mar 3 LEC 13: ASLR and bypasses + Some tips for ASLR, Stack Cookie, and DEP |
Mar 4 | Mar 5 LEC 14: Return-oriented Programming 1 DUE: Unit 4 Assigned: Unit 5 |
Mar 6 |
| Mar 9 | Mar 10 LEC 15: Return-oriented Programming 2 / Advanced Return-oriented Programming |
Mar 11 | Mar 12 LEC 16: Advanced Return-oriented Programming |
Mar 13 |
| Mar 16 Spring break |
Mar 17 Spring break |
Mar 18 Spring break |
Mar 19 Spring break |
Mar 20 Spring break |
| Mar 23 | Mar 24 LEC 17: Arbitrary read/write and Format Strings 1 DUE: Unit 5 Assigned: Unit 6 |
Mar 25 | Mar 26 LEC 18: Arbitrary read/write and Format Strings 2 |
Mar 27 |
| Mar 30 | Mar 31 LEC 19: Defenses Against AR and AW |
Apr 1 | Apr 2 LEC 20: (Advanced Topic) Python Runtime Internals DUE: Unit 6 Assigned: Unit 7 |
Apr 3 |
| Apr 6 | Apr 7 LEC 21: Advanced Topic 1 |
Apr 8 | Apr 9 LEC 22: Advanced Topic 2 |
Apr 10 |
| Apr 13 | Apr 14 LEC 23: Advanced Topic 3 DUE: Unit 7 Assigned: Unit 8 |
Apr 15 | Apr 16 LEC 24: Heap Intro |
Apr 17 |
| Apr 20 | Apr 21 LEC 25: More on Heap |
Apr 22 | Apr 23 LEC 26: Heap Exploits; Past problems review DUE: Unit 8 |
Apr 24 |
| Apr 27 | Apr 28 LEC 27: (optional) Past problems reviews |
Apr 29 | Apr 30 LEC 28: Last class, In-class CTF intro Assigned: In-class CTF |
May 1 |
| May 4 | May 5 | May 6 | May 7 | May 8 |