Malware Analysis

What to expect

This is a three day course that runs from 8:00a-5:00p. We will all sit together in one classroom, but the course is designed with three tracks for different skill levels. Regardless of the track you choose, you will have experienced instructors supporting you all along the way.
Technical Content advanced

Audience

  • Security Operations Center Staff
  • Reverse Engineers
  • Incident Responders
  • Software Engineers
  • System Administrators

Applicability

This course is designed to benefit students of any level. Whether you’re new to the field and want a high level overview of malware analysis, or you’re an experienced analyst in search of some quality time with a fun sample, we’ve got you covered.

Objectives

  • Understand the structure of a PE header
  • Know how binary executables are loaded into memory and executed
  • Know how to use static analysis tools on executables
  • Know how to use dynamic analysis tools on executables
  • Trace program flow in an executable
  • Locate key sections of programs and label information to better understand purpose
  • Modify executables in-memory to alter behavior
  • Create indicators of compromise based on key code blocks

Typical Agenda

Novice Track

For those with no background in programming and/or little to no knowledge of windows internals.

You will spend the first day participating in instructor directed lectures and labs covering the safe handling of malware, basic static and dynamic analysis, the basics of x86 assembly, and Windows Internals. The second day you will be turned loose to reinforce and build upon what you learned by completing self-paced lessons, labs, and puzzles. These lessons will include topics such as writing malware signatures, identifying malware behavior, using a debugger, and analyzing malicious documents.

Main Track

For those who have some foundational knowledge of programming and windows internals.

You will spend both days participating in instructor directed lectures and labs. The first day will cover the safe handling of malware, basic static and dynamic analysis, x86 assembly, and windows internals. We’ll then kick off the second day with lectures and labs covering debugging with Ida and identifying more complicated malware behaviors such as process injection and dll side-loading. We will end the day with a series of short labs and lectures on malicious documents, in which we will discuss the pdf file format, malicious JavaScript, malicious VBA, and malicious PowerShell.

Advanced Track

For malware analysts or those who have already taken a course on malware analysis. Those who choose this track should have a strong knowledge of windows internals and be comfortable working with binaries in a debugger.

You will stick with the “Main” group for a brief lecture on the safe handling of malware, and then you’ll be turned loose with two labs to analyze. The first will be a lightly obfuscated sample from a basic, but prolific, APT family. The second will be heavily obfuscated malware from a highly skilled APT family.

Setup

Configuration Guide

We recommend you begin configuring your VM early, allowing time for things to go wrong. We strongly recommend that you use VMWare Workstation Pro (Windows and Linux) or VMWare Fusion (OS X). You can try it out for 30 days for free, though you’ll likely want a license if you’re going to be analyzing malware regularly. VMWare Workstation Player will not suffice for our purposes, as we need the ability to create snapshots and Workstation Player does not provide this ability. The instructors will not be prepared to troubleshoot issues outside of the recommended platform.