Reverse Engineering

Real-world reverse engineering applied to closed-source user and kernel targets, covering beginner and advanced topics including custom deobfuscation routine development in Rust.

Reverse Engineering | Signal Labs | Advanced Offensive Cybersecurity Training | Self-Paced Trainings | Live Trainings | Virtual Trainings | Custom Private Trainings for Business

Learn to reverse engineer arbitrary software, including for malware analysis & vulnerability research.

Who should take this course?

Make the most of static reverse engineering tools to understand different Windows & x86/x64 targets (malware, vulnerability research targets, obfuscated code, arbitrary software).

Malware analysts, vulnerability researchers, or anyone with a need to disassemble/decompile Windows code to understand their inner workings or apply patches.

Suitable for beginners & intermediates with minimal Windows reverse engineering experience (with certain advanced exercises included, e.g. obfuscated code analysis)

Course Syllabus

  • Common Mnemonics

  • Windows ABI

  • Decompiling Assembly by Hand

  • PE32/PE32+ Format

  • C/C++ => Assembly (Incl. C++ concepts e.g. vtables, classes, etc)

  • Reversing Rust

  • Creating a Custom PE32/32+ Loader in Rust

  • Malware Reversing 1

  • Vulnerability Research Reversing 1

  • User-land Theory

  • Kernel-land Theory

  • Analyzing a Service

  • Writing a Kernel Driver

  • Reversing a Kernel Driver

  • Kernel Malware Reversing

  • Vulnerable Kernel Driver Reversing

  • Obfuscation Theory

  • Analyzing an Obfuscated APT Sample from Scratch

  • Scripting to Automate Code Deobfuscation in Binary Ninja

  • Writing a Custom Unpacker in Rust

  • Utilizing Emulation

  • Messing with ABIs in Rust

  • Scripting to Automate Vulnerability Research

  • Batch Analysis & Large Scale Reversing

  • Analysis via Symbolic Execution

  • Additional Targets (MacOS, Linux, Embedded)

In addition to the more expected Reverse Engineering content you also learn the underlying environment binaries operate on (x86-64, Boot process (UEFI|BIOS), PE32/32+ formats, Page Table concepts & Kernel/Hypervisor) alongside actual exercises in writing your own Kernel drivers and working with Rust.

Course Benefits

Beginner & Advanced Content with Live Demonstrations

Community Environment to Engage in Discussions with Peers & Instructor

Live Q&A Sessions & Ongoing Support After the Course

Frequently Updated Content with the Latest Techniques & Tools

Custom Code Developed by Signal Labs for Students

(Optional) Assessments & Completion Certificates

What makes Signal Labs self-paced courses different?

A firsthand look at our innovative self-paced course content.

Self-Paced Training

$2,949.00 USD

  • 12-month access to the course.
  • Multiple hands-on exercises for each section.
  • Leverage plugins and external tools to assist with analysis.
  • Analysis of real APT malware samples.
  • Reversing of both user-land and kernel-land targets.
  • Chance to win a Binary Ninja license.
  • Dedicated area for 1:1 discussions with instructors.
  • (Optional) Assessments & completion certificates.
  • Note: Training platform access supports Windows and MacOS machines only.

*For larger business teams, reach out for custom packages.

Christopher Vella | Signal Labs | Advanced Offensive Cybersecurity Training | Self-Paced Trainings | Live Trainings | Virtual Trainings | Custom Private Trainings for Business

Instructor

Christopher Vella has extensive experience with reverse engineering (incl. Hypervisor analysis, code deobfuscation, malware unpacking), Windows internals & vulnerability research and has found vulnerabilities in a range of high-profile software assisted via reverse engineering, (e.g: This blog post on finding a VMware vCenter 0day).

Strong Signals

Stay Connected

We'll let you know when our next live training is scheduled.

Stay Connected

We'll let you know when our next live training is scheduled.

Stay Connected

We'll let you know when our next live training is scheduled.

Stay Connected

We'll let you know when our next live training is scheduled.