(Required) |
CNIT 126: Practical Malware AnalysisSpring 2025 Sam Bowne
Schedule · Lecture Notes · Projects · Links · Home Page
|
(Optional) |
Catalog DescriptionLearn how to analyze malware, including computer viruses, trojans, and rootkits, using disassemblers, debuggers, static and dynamic analysis, using IDA Pro, OllyDbg and other tools.Advisory: CS 110A or equivalent familiarity with programming Upon successful completion of this course, the student will be able to:
Textbook"Practical Malware Analysis: The Hands-On Guide to Dissecting Malicious Software", by Michael Sikorski and Andrew Honig; ISBN-10: 1593272901 Buy from AmazonQuizzesThe 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 higher score counts. Discussion BoardEach CCSF student must contribute to the Discussion Board in Canvas. There are dates listed in the schedule with Discussion assignment due. For class-related questions, please send messages inside Canvas or emailcnit.126sam@gmail.com |
Schedule (may be revised) | ||||
---|---|---|---|---|
Note: Chapter Numbers are one too high in the E-Book Chapter 0 is mislabelled as Chapter 1, etc. | ||||
Date | Quiz | Topic | ||
Thu 1-16 | 0: Malware Analysis Primer & 1: Basic Static Techniques | |||
Thu 1-23 | Quiz: Ch 0-1 * Quiz: Ch 2-3 * Proj PMA 41 & 101 * | 2: Malware Analysis in Virtual Machines & 3: Basic Dynamic Analysis | ||
Thu 1-30 | Quiz: Ch 4 * Proj PMA 221 & 105 * Discussion 1 * | 4: A Crash Course in x86 Disassembly Demo: PMA 301, Assembly, 102, 121 & 340 | ||
Fri 1-31 | Last Day to Add Classes | |||
Thu 2-6 | Quiz: Ch 8 Proj PMA 102 & 121 Discussion 2 | 8: Debugging Demos: PMA 122 and 123 | ||
Thu 2-13 | Quiz: Ch 9
Proj PMA 122 & 123 Discussion 3 | 9: OllyDbg | ||
Thu 2-20 | No Quiz | Demos: PMA 124 and 126 and 401 | ||
Thu 2-27 | Quiz: Ch 5
Proj PMA 124 and 126 Discussion 4 | 5: IDA Pro Demos: PMA 403 and 301 | ||
Thu 3-1 | No Quiz
Proj 301 Discussion 5 | Lockpicking in Science 37 | ||
Thu 3-14 | Quiz: Ch 6
Proj PMA Discussion 6 | 6: Recognizing C Code Constructs in Assembly Demos: PMA 303 & 304 | ||
Thu 3-21 | No Quiz
No Proj due | TBA | ||
Thu 3-28 | No Quiz
Proj PMA 303 & 304 | Assembler CTF Demos: PMA 401 & 402 | ||
Mon 4-3 | Holiday--No Class | |||
Thu 4-10 | Quiz: Ch 7
Proj PMA 401 & 402 Discussion 7 | 7: Analyzing Malicious Windows Programs Demo: PMA 410 | ||
Thu 4-17 | Quiz: Ch 10
Proj PMA 410 Discussion 8 | 10: Kernel Debugging with WinDbg Demo: PMA 430 | ||
Thu 4-24 | Quiz: Ch 11
Proj PMA 430 & 431 Discussion 9 | 11: Malware Behavior Demo: PMA 431 and 432 | ||
Thu 5-1 | No Quiz
No Proj due | TBA | ||
Thu 5-8 | No Quiz All Extra Credit Due | Last Class: Rust: Demos of Proj R 10 & R 20 | ||
Wed 5-14 through Wed 5-21 | Final Exam available online throughout the week. You can only take it once. | |||
All quizzes due 30 min. before class * No late penalty until 9-13 |