• Classroom
Course Description

Malware Reverse Engineering builds on the knowledge and skills from the Assembly for Reverse Engineers course and teaches students how to perform more advanced analysis of real-world malware samples. The primary techniques taught are disassembly and debugging. The course also covers topics such as data decoding and binary obfuscation in order to bypass protections and perform effective analysis on hardened samples; dealing with destructive malware; and defeating anti-debugging and other anti-analysis techniques.

Learning Objectives

  1. Use IDA Pro, OllyDbg, x64dbg, and other tools to analyze and debug malware, and report on its capabilities
  2. Describe in detail the structure and functions of the Portable Executable (PE) header, and analyze PE headers to aid in malware characterization
  3. Apply techniques for identifying, analyzing, and bypassing data obfuscation
  4. Understand the structure and use of Dynamic Linked Libraries (DLLs) and apply reverse engineering skills to DLL analysis
  5. Identify and overcome a range of anti-debugging and anti-analysis techniques used in modern malware
  6. Identify developer code in a compiled binary

Framework Connections

The materials within this course focus on the Knowledge Skills and Abilities (KSAs) identified within the Specialty Areas listed below. Click to view Specialty Area details within the interactive National Cybersecurity Workforce Framework.