CNIT 127: Exploit Development
Moved to SCIE 37
Spring 2020 Sam BowneSchedule · Lecture Notes · Projects · GradingHow to Join this Course |
CCSF Buildings Closed My classes will continue via Zoom. To attend my classes, click on this link when class starts: The password is student
|
Catalog DescriptionLearn how to find vulnerabilities and exploit them to gain control of target systems, including Linux, Windows, Mac, and Cisco. This class covers how to write tools, not just how to use them; essential skills for advanced penetration testers and software security professionals. Textbook"The Shellcoder's Handbook: Discovering and Exploiting Security Holes ", by Chris Anley, John Heasman, Felix Lindner, Gerardo Richarte; ASIN: B004P5O38Q Buy from Amazon QuizzesThe quizzes are multiple-choice, online, and open-book. However, you may not ask other people to help you during the quizzes. You will need to study the textbook chapter before the lecture covering it, and take the quiz before that class. Each quiz is due 30 min. before class. Each quiz has 5 questions, you have ten minutes to take it, and you can make two attempts If you take the quiz twice, the second score is the one that counts, not necessarily the higher score. Live StreamingYou can attend class remotely at https://zoom.us/j/4108472927 For class-related questions, please emailcnit.127sam@gmail.com |
Schedule | ||||
---|---|---|---|---|
Date | Due | Topic | ||
Sat 1-18 | Ch 1: Before you Begin
| |||
Sat 1-25 | Ch 1 Quiz* Ch 2 Quiz* Proj 200 due * |
Ch 2: Stack overflows on Linux
| ||
Sat 2-1 | Ch 3 Quiz Proj 101 & 102 due |
Ch 3: Shellcode
| ||
Sat 2-8 | Ch 4 Quiz Proj 103 & 104 due |
Ch 4: Introduction to format string bugs
| ||
Sat 2-15 | Holiday: No Class | |||
Sat 2-22 | No Quiz No Proj due Class cancelled Go to B-Sides instead! |
| ||
Sat 2-29 | Ch 5 Quiz Proj 201 & 202 due |
Ch 5: Introduction to heap overflows
| ||
Sat 3-7 |
No Quiz due Proj 203 & 204 due |
| ||
Sat 3-14 |
No Quiz N Proj Due |
Ch 6: The Wild World of Windows & Proj ED 308 Demonstration
| ||
Sat 3-21 | No Class | |||
Sat 3-28 | Holiday: No Class | |||
Sat 4-4 |
Ch 6 Quiz Proj 205 & 206 due |
Lecture 7: Intro to 64-Bit Assembler (Not in book)
| ||
Sat 4-11 |
Ch 8a Quiz Proj 207 & 220 due |
Ch 8: Windows overflows (Part 1)
| ||
Sat 4-18 |
Ch 8b Quiz Proj 300 & 308 due |
Ch 8: Windows overflows (Part 2)
| ||
| ||||
Sat 4-25 |
Ch 14 Quiz Proj 301 & 302 due |
Class Meets at 12:00 PM PT Ch 14: Protection Mechanisms
| ||
| ||||
Sat 5-2 |
Ch 16+17 Quiz Proj 310 & 318 due |
Ch 16: Fault Injection Ch 17: The Art of Fuzzing
| ||
| ||||
Sat 5-9 |
No Quiz Proj 319 due |
Last Class: ARM Assembly
| ||
| ||||
Wed 5-13 - Wed 5-20 |
Final Exam available online throughout the week. You can only take it once. | |||
All Quizzes due 30 min. before class * Not counted as late until 2-1 |
LecturesGrading PolicySyllabus
Introduction to Exploitation: Linux on x86
Ch 1: Before you begin ·
KEY ·
PDF
WindowsCh 6: The Wild World of Windows · KEYLecture 7: Intro to 64-Bit Assembler (Not in book) · KEY We'll skip Ch 7: Windows shellcode
Ch 8: Windows overflows (Part 1) ·
KEY We'll skip chapters 9 through 13
Ch 14: Protection Mechanisms ·
KEY Vulnerability DiscoveryWe'll skip chapter 15
Ch 16: Fault Injection and 17: The Art of Fuzzing ·
KEY |