CSC 471 Modern Malware Analysis

2022-Spring Course Website

Instructor: Si Chen

Course Logo

About Maleware and Malware Analysis

Malware is a catch-all term for various malicious software, including viruses, adware, spyware, browser hijacking software, and fake security software.
Once installed on your computer, these programs can seriously affect your privacy and your computer's security. For example, malware is known for relaying personal information to advertisers and other third parties without user consent. Some programs are also known for containing worms and viruses that cause a great deal of damage. As a result, the ability to detect, analyze, understand, control, and eradicate malware is an increasingly important issue of economic and national security.

Course Description

This course will introduce students to modern malware analysis techniques through lectures and hands-on interactive analysis of real-world samples, including explore various recent attacks. These examples and studies will help the students develop a foundation and a well-rounded view of cybersecurity research. Participants in the course will also read and discuss research papers, as well as conduct independent project in a topic related to cyber risk and malware analysis.
After taking this course students will be equipped with the skills to analyze advanced contemporary malware using both static and dynamic analysis.

Expected Background

No prerequisite for graduate students, although sufficient security background is expected. For undergraduate students, please make sure you completed CSC 231.
My expected demographic for Malware Analysis was students with zero reverse engineering experience. That said, to be able to take this course you will probably need at least the following skills.
  • Basic programming concepts
  • Knowledge with the C programming language, including pointers, arrays, loops, function calls, etc.
  • Familiar with Unix/Linux including the command-line shell and gdb
  • Familiar with Intel x86 assembly language and architecture
  • Familiar with web programming concepts (HTML, HTTP, TCP, network communications)

Textbook

No Textbook

Reference book:

  1. Monnappa K A, Learning Malware Analysis: Explore the concepts, tools, and techniques to analyze and investigate Windows malware , ISBN 978-1788392501
  2. Michael Sikorski, Andrew Honig, Practical Malware Analysis: The Hands-On Guide to Dissecting Malicious Software, 1st Edition, ISBN 978-1593272906

Course Content

# Date Topic Slides Supporting Materials
Class 1 Jan 25, 2022 Introduction ch01.pdf
  • Windows XP Environment Disclaimer
  • VirtualBox
  • [Video]
  • Class 2 Jan 27, 2022 Basic Concepts, DLL Injection (1) ch02.pdf
  • hack_dll.zip [backup link]
  • hack_dll_src.zip [backup link]
  • [Video]
  • Class 3 Feb 1, 2022 DLL Injection (2), Static Analysis, PE Format (1)[Video] ch03.pdf
  • How to connect to BadgerCTF
  • hack_dll.zip [backup link]
  • flare-floss
  • notepad_xp.zip
  • LittleEndian.exe
  • LittleEndian.cpp
  • Lab 1
    (10 points)
    Jan 27, 2022 Lab1: OllyDbg and DLL Injection
    lab1.pdf
  • Windows XP Environment Disclaimer
  • VirtualBox
  • hack_dll.zip [backup link]
  • How to write a lab report
  • Tutorials and Supporting Materials