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 |
| Aug 24 | Aug 25 LEC 1: Course Intro & Preliminary Rev. Engineering #1 lec01.pptx Preparation: What really happened on Mars Rover Pathfinder? Preparation: Nearly 3 Years Later, SolarWinds CISO Shares 3 Lessons From the Infamous Attack Resource: class onboarding First day of the class |
Aug 26 | Aug 27 LEC 2: Code compilation and binary generation; system architecture basic; calling conventions and binary ABI lec01-x86-assembly.pptx lec01-tools.pptx Preparation: Smashing The Stack For Fun And Profit Resource: x86 Assembly Guide Resource: Intel Code Table Resource: Assembly-HOWTO Resource: Intel vs AT&T format Resource: Linux assemblers: A comparison of GAS and NASM Assigned: Unit 1 |
Aug 28 |
| Aug 31 | Sep 1 LEC 3: x86 assembly I; intro to debugging & reversing toolchains |
Sep 2 | Sep 3 LEC 4: x86 assembly II; calling conventions; data encoding |
Sep 4 |
| Sep 7 | Sep 8 LEC 5: Basic system and binary attacks; ELF format; loading and dynamic linking programs DUE: Unit 1 Assigned: Unit 2 |
Sep 9 | Sep 10 LEC 6: x86 shellcoding; how system call works; basic system defenses |
Sep 11 |
| Sep 14 | Sep 15 LEC 7: Program loading and process instantiation PPTX Preparation: Read Anatomy of a system call Part1, Part2 Assigned: Unit 2-2 |
Sep 16 | Sep 17 LEC 8: Code hijacking attacks I; stack overflow attack; shellcoding attack |
Sep 18 |
| Sep 21 | Sep 22 LEC 9: Code hijacking attacks II; system mitigations lec05-mitigation |
Sep 23 | Sep 24 LEC 10: Code encoding and binary disassmebly challenges DUE: Unit2 Assigned: Unit3 |
Sep 25 |
| Sep 28 | Sep 29 LEC 11: System security mitigation |
Sep 30 | Oct 1 LEC 12: ASLR defenses; ROP attacks and defenses |
Oct 2 |
| Oct 5 | Oct 6 LEC 13: ROP and Format String attacks lec07-fsv.pptx TUT 1: inscounts example tutorial Preparation: The Anatomy of an Executable, The ELF Object File Format by Dissection |
Oct 7 | Oct 8 LEC 14: Binary Instrumentation with PIN lec07-pintools.pptx DUE: Unit3 Resource: LiveOverflow: Global Offset Table (GOT) and Procedure Linkage Table (PLT) - bin 0x12 Assigned: Unit4 Unit4 descrpiption |
Oct 9 |
| Oct 12 Mid-term week |
Oct 13 Mid-term week |
Oct 14 Mid-term week |
Oct 15 Mid-term week |
Oct 16 Mid-term week |
| Oct 19 | Oct 20 LEC 15: Binary instrumentation and binary translators I lec08.pptx Resource: Read DynamoRio paper Resource: Online assembler/disassembler |
Oct 21 | Oct 22 LEC 16: Inline reference monitors lec09.pptx Preparation: Inline reference monitors Preparation: libdft DUE: Unit4 Part1 |
Oct 23 |
| Oct 26 | Oct 27 LEC 17: Inline reference monitors II |
Oct 28 | Oct 29 LEC 18: Virtualization basics and principles I |
Oct 30 |
| Nov 2 | Nov 3 LEC 19: Virtualization basics and principles II lec10-virtualization.pptx |
Nov 4 | Nov 5 LEC 20: Code emulation and light-weighted virtualization (e.g., containers) lec11-container.pptx DUE: Unit4 Part2 Assigned: Unit 5 |
Nov 6 |
| Nov 9 | Nov 10 LEC 21: Special topic I --- HDL decompilation and security analysis Preparation: PyLingual: Toward Perfect Decompilation of Evolving High-Level Languages |
Nov 11 | Nov 12 LEC 22: Static binary rewriting and decompilation I Preparation: Reassembly is Hard: A Reflection on Challenges and Strategies |
Nov 13 |
| Nov 16 | Nov 17 LEC 23: Static binary rewriting and decompilation II Preparation: Read Running the “Reflections on Trusting Trust” Compiler Preparation: Read Reflection on Trusting Trust by Ken Thompson, Turing Award lecture, 1984. |
Nov 18 | Nov 19 LEC 24: Speicial topic II -- Data-driven Analysis for Cybersecurity; Provenace-based ML Security |
Nov 20 |
| Nov 23 Thanks giving |
Nov 24 Thanks giving |
Nov 25 Thanks giving |
Nov 26 Thanks giving |
Nov 27 Thanks giving |
| Nov 30 | Dec 1 LEC 25: Symbolic execution and program fuzzing Preparation: angr: a platform for binary analysis |
Dec 2 | Dec 3 LEC 26: Hardware security issues and mitigations DUE: Unit 5 |
Dec 4 |
| Dec 7 | Dec 8 LEC 27: Final project discussion |
Dec 9 | Dec 10 LEC 28: Final exam preparation and review |
Dec 11 Final week |
| Dec 14 Final week |
Dec 15 Final week |
Dec 16 Final week |
Dec 17 Final week |
Dec 18 Final week |