Join us at SANS Secure March 2021
Secure Asia Pacific is a part of the Secure March 2021 event - our largest-ever regional online event with over 30 SANS Live Online Courses being presented on Asia Pacific-friendly time zones. You will be able to avail of all of our core courses as well as exciting new releases like SEC510: Multicloud Security Assessment and Defense, MGT516: Managing Security Vulnerabilities: Enterprise and Cloud and SEC588: Cloud Penetration Testing.
If you don't see the course you need at Secure Asia Pacific 2021 please check out the roster offered at our other Secure March events:
* Most classes at Secure Japan 2021 will be available in both English with Japanese language translation. Please contact us at AsiaPacific@sans.org for further information.
Associated Certification: GIAC Reverse Engineering Malware (GREM)
Learn to turn malware inside out! This popular reversing course explores malware analysis tools and techniques in depth. FOR610 training has helped forensic investigators, incident responders, security engineers, and IT administrators acquire the practical skills to examine malicious programs that target and infect Windows systems.
Understanding the capabilities of malware is critical to your ability to derive threat intelligence, respond to cybersecurity incidents, and fortify enterprise defenses. This course builds a strong foundation for reverse-engineering malicious software using a variety of system and network monitoring utilities, a disassembler, a debugger, and many other freely available tools.
The course begins by establishing the foundation for analyzing malware in a way that dramatically expands upon the findings of automated analysis tools. You will learn how to set up a flexible laboratory to examine the inner workings of malicious software, and how to use the lab to uncover characteristics of real-world malware samples. You will also learn how to redirect and intercept network traffic in the lab to explore the specimen's capabilities by interacting with the malicious program.
The course continues by discussing essential assembly language concepts relevant to reverse engineering. You will learn to examine malicious code with the help of a disassembler and a debugger in order to understand its key components and execution flow. In addition, you will learn to identify common malware characteristics by looking at suspicious Windows API patterns employed by malicious programs.
Next, you will dive into the world of malware that thrives in the web ecosystem, exploring methods for assessing suspicious websites and de-obfuscating malicious JavaScript to understand the nature of the attack. You will also learn how to analyze malicious Microsoft Office, RTF, and PDF files. Such documents act as a common infection vector as a part of mainstream and targeted attacks. You will also learn how to examine "file-less" malware and malicious PowerShell scripts.
Malware is often obfuscated to hinder analysis efforts, so the course will equip you with the skills to unpack executable files. You will learn how to dump such programs from memory with the help of a debugger and additional specialized tools, and how to rebuild the files' structure to bypass the packer's protection. You will also learn how to examine malware that exhibits rootkit functionality to conceal its presence on the system, employing code analysis and memory forensics approaches to examining these characteristics.
FOR610 malware analysis training also teaches how to handle malicious software that attempts to safeguard itself from analysis. You will learn how to recognize and bypass common self-defensive measures, including code injection, sandbox evasion, flow misdirection, and other measures.
The course culminates with a series of Capture-the-Flag challenges designed to reinforce the techniques learned in class and provide additional opportunities to learn practical, hands-on malware analysis skills in a fun setting.
Hands-on workshop exercises are a critical aspect of this course. They enable you to apply malware analysis techniques by examining malicious software in a controlled and systemic manner. When performing the exercises, you will study the supplied specimens' behavioral patterns and examine key portions of their code. To support these activities, you will receive pre-built Windows and Linux virtual machines that include tools for examining and interacting with malware.
In summary, FOR610 malware analysis training will teach you how to:
Why Choose Our Course
The malware analysis process taught in FOR610 helps incident responders and other security professionals assess the severity and repercussions of a situation that involves malicious software so that they can plan recovery steps. Forensics investigators also learn about the key characteristics of malware discovered during the examination, including how to establish Indicators of Compromise and obtain other threat intelligence details for analyzing, scoping, and containing the incident.
What threat does the malicious or suspicious program pose? What do its mechanics reveal about the adversary's goals and capabilities? How effective are the company's security controls against such infections? What security measures can strengthen the organization's infrastructure from future attacks of this nature? This course teaches the skills necessary to answer these and other questions critical to an organization's ability to handle malware threats and related incidents.
What You Will Receive
When attending FOR610, you will receive an electronic toolkit packed with helpful malware analysis tools. You will use them to perform exercises in class, and you can also use them later to interrogate suspicious files when you return to your job. The tools have been preinstalled and configured for your convenience into two virtual machines that you will receive in the course toolkit:
The toolkit also includes many real-world malware samples that you will examine during the course when performing hands-on lab exercises, as well as MP3 audio files of the complete course lectures.
You will also receive electronic training materials with detailed explanations and illustrations of the concepts, tools, and techniques covered in the course. The materials include an electroninc workbook that provides detailed, step-by-step instructions for all the hands-on lab exercises performed in the course to facilitate the learning experience.
Additional Resources
Authors of this course created the following cheat sheets to summarize some of the concepts and tools useful for malware analysis:
You can also get a sense for malware analysis approaches explored in this course by looking at the following resources:
This course is a part of SANS' comprehensive Digital Forensics and Incident Response (DFIR) curriculum. Learn more about our DFIR courses and free resources. Take your learning beyond the classroom. Explore our DFIR site network for additional resources related to the subject matter of this course.
Notice:
Please plan to arrive 30 minutes early on Day 1 for lab preparation and set-up.
Section 1 lays the groundwork for malware analysis by presenting the key tools and techniques useful for examining malicious programs. You will learn how to save time by exploring Windows malware in several phases. Static properties analysis examines meta data and other file attributes to perform triage and determine the next course of action. Behavioral analysis focuses on the program's interactions with its environment, such as the registry, file system, and network. Code analysis focuses on the specimen's inner workings and makes use of debugging tools such as x64bg. You will learn how to set up and use a flexible laboratory to perform such an analysis in a controlled manner, becoming familiar with the supplied Windows and Linux (REMnux) virtual machines. You will then learn how to begin examininng malware in your lab-with guidance and explanations from the instructor to reinforce the concepts discussed throughout the day.
The tools introduced in this section include PeStudio, Process Hacker, Process Monitor, x64dbg, API Monitor, and others.
CPE/CMU Credits: 6
Section 2 focuses on examining malicious Windows executables at the assembly level. You will discover approaches for studying the building blocks of a specimen by looking at it through a disassembler. The section begins with an overview of key code-reversing concepts and presents a primer on essential x86 Intel assembly concepts, such as instructions, function calls, variables and jumps. You will also learn how to examine common assembly constructs such as functions, loops, and conditional statements. The material will then build on this foundation and expand your understanding to make you feel comfortable examining assembly instructions frequently seen in malware. Throughout the discussion, you will learn to recognize common characteristics at a code level, including HTTP command and control, keylogging, and command execution.
This section discusses the concepts outlined above while also walking students through the key capabilities of Ghidra for performing static code analysis.
CPE/CMU Credits: 6
Section 3 focuses on examining malicious web pages and documents, which adversaries can use to directly perform malicious actions on the infected system and launch attacks that lead to the installation of malicious executable files. The section begins by discussing how to examine suspicious websites that might host client-side exploits. Next, you will learn how to deobfuscate malicious scripts with the help of script debuggers and interpreters, examine malicious Microsoft Office macros, and assess the threats associated with PDF and RTF files using several techniques.
The tools introduced in this section include Fiddler, SpiderMonkey, pdf-parser.py, scdbg, and others.
CPE/CMU Credits: 6
Section 4 builds on the approaches to behavioral and code analysis introduced earlier in the course, exploring techniques for uncovering additional aspects of the functionality of malicious programs. The section begins by discussing how to handle packed malware. We will examine ways to identify packers and strip away their protection with the help of a debugger and other utilities. We will also walk through the analysis of malware that employs multiple technologies to conceal its true nature, including the use of registry, obfuscated JavaScript and PowerShell scripts, and shellcode. Finally, we will learn how malware implements spyware and usermode rootkit functionality to perform code injection and API hooking, examining this functionality from both code and memory forensics perspectives.
The tools introduced in this section include CFF Explorer, Scylla, OllyDumpEx, Volatility, and others.
CPE/CMU Credits: 6
Section 5 takes a close look at the techniques that malware authors commonly use to protect malicious software from being examined. You will learn how to recognize and bypass anti-analysis measures designed to slow you down or misdirect you. In the process, you will gain more experience performing static and dynamic analysis of malware that is able to unpack or inject itself into other processes. You will also expand your understanding of how malware authors safeguard the data that they embed inside malicious executables. As with the other topics covered throughout the course, you will be able to experiment with such techniques during hands-on exercises.
This section brings together many of the tools covered earlier in the course, including Ghidra and x64dbg. It also introduces FLOSS, ScyllaHide, and others.
CPE/CMU Credits: 6
Section 6 assigns you to the role of a malware analyst working as a member of an incident response or forensics team. You will be presented with a variety of hands-on challenges involving real-world malware in the context of a fun tournament. These challenges further your ability to perform typical malware analysis tasks and offer additional learning opportunities. The challenges are designed to reinforce skills covered in the first five sections of the course, making use of the popular SANS NetWars educational platform. By applying the techniques learned earlier in the course, you will consolidate your knowledge and shore up skill areas where you might need additional practice. Students at live events who score the highest in the malware analysis challenge will be awarded a coveted SANS Lethal Forensicator coin, bestowing on them the title of "REM Master."
CPE/CMU Credits: 6
Here are just a few of the comments shared with us by FOR610 attendees:
Important! Bring your own system configured according to these instructions!
A properly configured system is required to fully participate in this course. If you do not carefully read and follow these instructions, you will likely leave the class unsatisfied because you will not be able to participate in hands-on exercises that are essential to this course. Therefore, we strongly urge you to arrive with a system meeting all the requirements specified for the course.
This is common sense, but we will say it anyway: Back up your system before class. Better yet, do not have any sensitive data stored on the system. SANS can't responsible for your system or data.
MANDATORY FOR610 SYSTEM HARDWARE REQUIREMENTS:
MANDATORY FOR610 HOST CONFIGURATION AND SOFTWARE REQUIREMENTS:
INSTALL VMWARE "PRO" SOFTWARE:
Your course media will now be delivered via download. The media files for class can be large, some in the 40 - 50 GB range. You need to allow plenty of time for the download to complete. Internet connections and speed vary greatly and are dependent on many different factors. Therefore, it is not possible to give an estimate of the length of time it will take to download your materials. Please start your course media downloads as you get the link. You will need your course media immediately on the first day of class. Waiting until the night before the class starts to begin your download has a high probability of failure.
SANS has begun providing printed materials in PDF form. Additionally, certain classes are using an electronic workbook in addition to the PDFs. The number of classes using eWorkbooks will grow quickly. In this new environment, we have found that a second monitor and/or a tablet device can be useful by keeping the class materials visible while the instructor is presenting or while you are working on lab exercises.
If you have additional questions about the laptop specifications, please contact laptop_prep@sans.org.
FOR610 acts as a practical on-ramp into the world of malware analysis. It is useful both for individuals looking to enter this exciting field, as well as for those who seek to formalize and expand their skills in this area. Attendees who have found this course especially useful often have responsibilities in the areas of incident response, forensic investigation, information security, threat intelligence, and threat hunting. Course participants have included:
The course begins by covering malware analysis at an introductory level, then quickly progresses to discussing tools and techniques of intermediate complexity. Neither programming experience nor knowledge of assembly is required to benefit from the course. However, you should have a general idea about core programming concepts such as variables, loops, and functions, so you can quickly grasp the relevant concepts in this area. The course spends some time discussing essential aspects of the assembly language, allowing malware analysts to navigate through malicious executables using a disassembler and a debugger.
FOR610 attendees should:
"Reverse Engineering Malware teaches a systematic approach to analyzing malicious code utilizing the latest and greatest tools and techniques. It's not earth-shattering news that the prevalence of malicious code will continue to increase for the foreseeable future. The knowledge and skills this course provides will enable those responsible for responding to and preventing incidents to better understand and respond to emerging malware threats." - Justin Kallhoff, Infogressive (Read More)
"The SANS Institute is currently the leader in the commercial IR and computer forensic training market. They have a large number of quality courses." - Incident Response & Computer Forensics, Third Edition, by Jason Luttgens, Matthew Pepe, and Kevin Mandia
"When I saw Lenny Zeltser was teaching the SANS FOR610 course on reverse-engineering malware in Prague this year, I dashed to my boss's office to beg him for approval to attend. The topic is not only very relevant to our work here at i-Force/Cyberforce but was going to be taught by one of the topic's spiritual leaders, so to speak. I haven't come across another analyst that doesn't use REMnux, the Linux distribution created and maintained by Mr. Zeltser.... So I jumped at the chance to be present. It's like having the opportunity of being trained in using the Force by Yoda himself..." - Jan Verhulst, Cyberforce (Read More)
"I'm thrilled I got the chance to take the course. I walked away with a lot of new skills and am able to provide a lot of value to my organization as a result. I now feel completely comfortable performing code analysis of malicious binaries." - Chris Sanders, Security Analyst, PhD (Read More)
"I'm amazed how much information a skilled analyst can derive from the malicious files that find their way onto infected systems. Knowing how to reverse-engineer malware allows you to determine the severity of the intrusion, the context of the attack, the intent of the adversary, the containment steps, and numerous other details that help the organization handle the incident. The FOR610 course is the on-ramp for professionals who wish to acquire such malware analysis, building upon the expertise they already have, to learn how to examine malicious software using a variety of practical techniques."
- Lenny Zeltser
"To combat adversaries effectively, you must understand the tools they are using against you. This course teaches the critical skills necessary to systematically reverse engineer code and understand its functionality, dependencies, and limitations. Attackers often go to great lengths to produce unique, robust malware to achieve their objectives. Organizations must have an equally skilled malware analysis capability to dissect that code and learn from it to mitigate future attacks."
- Anuj Soni