![]() (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 Demo: PMA 41
| ||||
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 Demos: PMA 101, 105, 221
| |||
Thu 1-30 | Quiz: Ch 4 * Proj PMA 221 & 105 * Discussion 1 * | 4: A Crash Course in x86 Disassembly Demo: PMA 301, 102
| |||
Fri 1-31 | Last Day to Add Classes | ||||
Thu 2-6 | Quiz: Ch 8 Proj PMA 102 & 121 Discussion 2 | 8: Debugging Demos: PMA 121, 122 and 123
| |||
Thu 2-13 | Quiz: Ch 9
Proj PMA 122 & 123 Discussion 3 | 9: OllyDbg Demos: 126 and 401
| |||
Thu 2-20 | No Quiz |
| |||
Thu 2-27 | No Quiz
Proj PMA 401 Discussion 4 | 5: IDA Pro Demos: PMA 124, 126
| |||
Thu 3-6 | Quiz: Ch 5
Proj 124 and 126 Discussion 5 | 6: Recognizing C Code Constructs in Assembly Demos: PMA 301 (Jasmin) and 303 (IDA Pro)
| |||
Thu 3-13 | Quiz: Ch 6 and 7
Proj PMA 301 Discussion 6 | 7: Analyzing Malicious Windows Programs Demo: PMA 304 (C constructs)
| |||
Thu 3-20 | No Quiz
No Proj due |
OllyDbg Demos: PMA 402 & 404
| |||
Thu 3-27 | No Quiz
Proj PMA 303 & 304 |
DOT NET Demos: PMA 132, ED 330, ED 331
| |||
Thu 4-3 | Holiday--No Class | ||||
Thu 4-10 | No Quiz
Proj PMA 402 Discussion 7 | 10: Kernel Debugging with WinDbg WinDbg Demo: PMA 430
| |||
Thu 4-17 | Quiz: Ch 10
Discussion 8 | Debugging Demos: PMA 431, PMA 432 and Bootkit Demo: PMA 420
| |||
Thu 4-24 | Quiz: Ch 11
Proj PMA 430 & 431 Discussion 9 | 11: Malware Behavior Rust Demos: R 10 and R 20 ATT&CK Matrix demo: OT 130
| |||
Thu 5-1 | No Quiz
Proj PMA 432 due | 12: Covert Malware Launching Demo: H 540
| |||
Thu 5-8 | No Quiz All Extra Credit Due | Last Class: No New Material
| |||
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 |