Welcome to the Reverse Engineering course Enciphers. This course is designed to help you gain the theoretical as well as the practical knowledge, required to perform reverse engineering of binaries, on the assembly level. The course of the training covers everything from the beginner level to the advance level.
The structure of the training categorises the whole content in three major sections:
- Reverse Engineering for Dummies
- Reverse Engineering For Developers
- Reverse Engineering For Hackers
These three sections talk on reverse engineering from different perspective, majorly covering the Intel x32, x64 and ARM architecture.
The beginners level starts from intro to system architecture, and then keeps getting deeper into the assembly, covering everything from basics to advance. The developers perspective is about issues which may arise due to lack of proper remediation or usage of safe functions. The final section is the attackers perspective, which includes several methods to identify and analyse interesting section of code. During the learning process, you will also get hands-on understanding that developers use for preventing reversals and how to bypass them.
Have a look at the curriculum below, to find specific details about all the videos/lectures.
Unique things about this course:
- Access to amazing course content
- Numerous hands-on challenges
- Access to dedicated chat platform
Let's start the journey of learning & debugging software binaries.
INTERESTED IN LEARNING REVERSE ENGINEERING?
This course on reverse engineering covers everything from scratch, and teaches the skills required to disassemble, decompile and debug the internals of application binaries.
- Course Overview & System Organization (14:19)
- Introduction to x86 Architecture (15:41)
- EIP & Debug Registers (17:31)
- Functions, Process & Threads (20:52)
- Memory Layout (18:55)
- Function Calling & Stack Frame (19:50)
- CPU Modes & Memory Models (15:26)
- AT&T vs Intel Syntax (13:02)
- Hello Enciphers (30:35)
- Data Types, Tokens, EQU & Times (13:57)
- Implementation of Data Types, Token, EQU & Times (17:33)
- Moving Data (7:39)
- Debugging Data Movement (26:57)
- Debugging Stack (18:45)
- Debugging Arithmetic Operation: Add/Sub (21:19)
- Debugging Arithmetic Operations MulDiv (24:33)
- Debugging Logical Instructions (19:07)
- Debugging Control Instructions (18:26)
- Procedure (20:48)
- CPU Info x64 (7:36)
- x86_64 Register (11:28)
- Stack Frame x64 (19:10)
- Fundamentals of ARM Lab Setup (32:22)
- Offset Form addressing mode (14:16)
- Load Store Immediate Offset Form (9:03)
- Functions in ARM (10:51)
- Debugging Function (17:13)
- Summary (2:17)
- Integer Overflow (20:33)
- Integer Overflow Patch (8:47)
- Integer Underflow (12:08)
- Integer Underflow Patch (5:30)
- Format Strings (11:25)
- Format String Exploitation and Patching (18:21)
- Buffer Overflow (12:11)
- Buffer Overflow Countermeasure (12:38)
- Heap Overflow (16:57)
- Race Condition (13:18)
- Race Condition Patch (4:03)
- Summary (1:31)
- Files String References Patching using IDA (28:03)
- Reversing Chain of 'cmp' instructions using IDA (7:07)
- Intro to radare2 (13:43)
- Windows Debugger (24:32)
- Setting up Memory Protection using VMprotect (3:35)
- Bypassing Memory Protections using x32DBG Cheat Engine (13:28)
- Reversing C# .NET Binary (16:49)
- Reverse Engineering trial .NET Binary (13:30)
- Reverse Engineering .NET application for bypassing registration check (11:50)
- Reverse Engineering with Ghidra Pt-1 (15:45)
- Reverse Engineering with Ghidra Pt-2 (23:32)
Enciphers is an information security consulting and training company, specialised in Web, Mobile & Cloud security. Having over a decade of experience in penetration testing & consulting, we love to teach what we do. Join the training and start an amazing journey of learning, through hands-on labs, advance course content & ultra-fast support.
For more information, please visit www.enciphers.com
Frequently Asked Questions
What's unique about this training?
For one, the in-depth knowledge on assembly, several hands on challenges. The course curriculum is divided into three section, namely, for dummies, for developers and for hackers. The most important part is idea that the training considers everyone a dummy (with respect to reverse engineering), and then takes them on a journey to become a reverse engineer, with knowledge of several aspects.
What if i face any technical issues or need any help in understanding some topics ?
We totally understand this, and for the same reason, all the training attendees will be given access to our chat platform. This chat platform will have other attendees as well as the trainer to discuss and help each other.
What type of learning experience I should expect?
It will be a hands-on, self-paced course where you can go step by step in detail and try to understand the different methodologies and techniques which are used to perform Reverse engineering from a very basic beginner’s level to advanced level.
Are there any prerequisites for this course?
The training participants should have a working computer system containing at least 8gb of RAM, I5 core processor (or newer), 100gb of storage and any one of the virtualisation software between VMware and Virtual box.
Are refunds available if I do not like the course?
We do not offer any refund as we want the attendees to spend time and effort not just on the video content but also on the hands on labs provided. As the course fee is not just for the video content only, access to lab apps and chat platform etc. too, we can't offer refunds once the access is provided. However, if you still want to discuss this, feel free to drop us an email.
When does the course start and finish?
The course starts now and ends when you want! It is a completely self-paced online course - you decide when you start and when you finish.