Reverse Engineering Malware Training Course with Detailed Hands-on Labs and Exercises (Online, Onsite and Classroom Live)
Learn how to perform static malware analysis with this Reverse Engineering Malware Training
Reverse Engineering Malware Training; Reverse engineering is a vitally important skill for today's expert security professional. Everything from reverse engineering malware to discovering vulnerabilities in binaries are required in order to properly secure an organization from today's ever evolving threats.
In this 5 day hands-on Reverse Engineering Malware Training course, you will gain the necessary binary analysis skills to discover the true nature of any Windows binary. With Reverse Engineering Malware Training, you will also learn how to recognize the high level language constructs (such as branching statements, looping functions and network socket code) critical to performing a thorough and professional reverse engineering analysis of a binary. After learning these important introductory skills, you will advance to the analysis of:
- Hostile Code & Malware, including: Worms, Viruses, Trojans, Rootkits and Bots
- Vulnerabilities in Binaries, including: Format string vulnerabilities, buffer overflow conditions, and the identification of flawed cryptographic schemes
- Binary obfuscation schemes, used by: Hackers, Trojan writers and copy protection algorithms
Additionally with Reverse Engineering Malware Training, you will learn how to recognize the features modern optimizing compilers, including the gcc 4.x family of compilers and the ubiquitous Visual Studio .NET. ENO Institute will train you on the standard reverse engineering programs IDA Pro, Ollydbg, and Softice. You will also learn how to use various hex editors, binary analysis programs, and code coverage analyzers.
Duration: 5 days
Reverse Engineering Malware Training - Customize It!
- We can adapt this Reverse Engineering Malware Training course to your group’s background and work requirements at little to no added cost.
- If you are familiar with some aspects of this Reverse Engineering Malware Training course, we can omit or shorten their discussion.
- We can adjust the emphasis placed on the various topics or build the Reverse Engineering Malware Training course around the mix of technologies of interest to you (including technologies other than those included in this outline).
- If your background is nontechnical, we can exclude the more technical topics, include the topics that may be of special interest to you (e.g., as a manager or policy-maker), and present the Reverse Engineering Malware Training course in manner understandable to lay audiences.
Reverse Engineering Malware Training - Audience / Target Group:
The target audience for this Reverse Engineering Malware course is defined here:
- Incident responders
- Forensic investigators
- Threat operation analysts
- Malware analysts
- Security researchers
- Professionals looking to gain a technical understanding of malware
- Anyone looking to improve their malware analysis and reverse engineering skills
Reverse Engineering Malware Training - Course Prerequisites:
The knowledge and skills that a learner must have before attending this Reverse Engineering Malware course are:
- Firm understanding of the Windows Operating System
- Firm understanding of computer architecture concepts
- Grasp of the TCP/IP protocols
Reverse Engineering Malware Training - Objectives:
After completing this Reverse Engineering Malware course, attendees will be able to:
- Gain the in-demand career skills of a reverse engineer. Very few information security professionals, incident response analysts and vulnerability researchers have the ability to reverse binaries efficiently. You will undoubtedly be at the top of your professional field.
- Learn the methodologies, tools, and manual reversing techniques used real world situations in our reversing lab.
- Move beyond automated "input and output" testing of binaries, commonly used by fuzzers and other analysis tools.
- More than interesting theories and lecture, get your hands dirty in our dedicated reversing lab in this security training course.
Reverse Engineering Malware Training - Course Content:
Many incident response situations and computer forensics investigations cannot be completed accurately or thoroughly without understanding the runtime nature of a binary. Hackers increasingly use customized trojans that are not detected by antivirus which can only be analyzed and traced back to the original attacker via reverse engineering.
Additionally, many binary programs contain vulnerabilities, such as buffer overflows and the use of very weak cryptographic algorithms. The only way to discover these critical vulnerabilities for closed-source programs is to reverse engineer them. Reverse engineering is also required in order to understand complex binary obfuscation schemes used by copy protection vendors, as well as obfuscation put in place by commercial software vendors.
Day 1: Introduction to malware analysis and reverse engineering
Day one focuses on the fundamental knowledge required for malware analysis and reverse engineering. This day is designed to build critical skills required to proceed further into deeper discussions on reversing. You will also train on special purpose reversing debuggers and disassemblers. Lab exercises will focus on functionality of various reversing tools and basic static and dynamic analysis process.
- Basic static and dynamic analysis
- Reverse engineering concepts and legality
- Machine code
- Assembly language
- System- and code-level reversing
- Assembly basics (registers, operands, instructions)
- Fundamentals of reverse engineering tools (IDA Pro, Radare2)
Day 2: Static and dynamic analysis
Day two encompasses a deep discussion with hands-on content for reversing Windows binaries. Key concepts include identifying code paths, control functions and developing a general understanding of the code to be analyzed. Debugging concepts are introduced and practiced in hands-on lab exercises.
- Recognizing C Code constructs in assembly
- Windows API
- Windows Registry
- Network APIs
- Processes, threads and services
- Debugging process (stepping, breakpoints, modifying execution)
- Kernel debugging
- Debugging tools
Day 3: Analyzing malware functionality and behavior
Day three includes detailed coverage on reverse engineering malware. Focus is on live malware reversing using examples of viruses, Trojans and rootkits collected from the wild.
- Understanding common malware types and functionality
- Process injection and replacement
- DLL injection
- Direct, hook and APC injection and other malware launching technique
- Registry persistence
- Trojanized system binaries
- DLL load order hijacking
- Malware network behavior analysis
- Kernel mode rootkits (SSDT hooking, interrupts)
- User mode rootkits
Day 4: Anti-reversing techniques
Day four works with various anti-reversing techniques that software developers and malware writers put in place to make reverse engineering more difficult.
- Basic anti-reversing strategies
- Detecting debuggers
- Detecting VM presence
- Analyzing packed executables
- Popular packers (UPX, PECompact, ASPack, etc.)
- Simple obfuscation techniques (XOR swap, junk code, etc.)
- Obscuring through data flow and control flow
- Constant unfolding
- Deobfuscation tools
- Base64 and other encoding schemes
- Common ciphers and encoding schemes
- Reversing ransomware
Day 5: Advanced reversing topics & CREA exam
Day five covers advanced reversing topics as well as the CREA exam. The day ends with you taking the CREA exam.
- Recognizing C++ binaries
- Identifying constructors and destructors
- 64-bit architecture
- 64-bit analysis
- CREA exam overview
- CREA exam