Reverse Engineering: IDA For Beginners


Learn to use IDA Pro Free to do Reverse Engineering on Linux and Windows

What you will learn

Reverse Engineering

Assembly Language

Remnux Linux IDA

Windows IDA

File, Strings and Hexeditor Analysis

Converting Data, Renaming Labels and Variables

Inserting Comments

Creating Data Structures

Decompiling Binary to C code

Debugging using IDA

Patching Files

Register and Memory Analysis

Python Scripting For Reversing Algorithms

Creating Keygens

Cracking Windows Crackmes

Reversing Jumps

Using NOPs to disable instructions

Extending Trial Period beyond 30 days

Intermodular Call Method

Dynamic Analysis to Confirm Algorithms

Linux and Windows API

Algorithm Analysis and Testing

Creating Keygens

Setting breakpoints and stepping through code

and more

Description

If you are a beginner to Reverse Engineering and want to learn how to use IDA Pro to reverse engineer and analyze Linux and Windows programs, then this is the course for you. In this course, you will a CTF (Capture The Flag) game -for Linux whilst learning reverse engineering. This makes learning fun and exciting.This will teach you all the basic skills for reversing on IDA, eg, how to rename labels, insert comments, convert data, create functions and analyze assembly code. We will use the Free version of IDA so that anyone can follow along without spending money to buy the Pro version. After that we will move to Windows and Reverse Engineer five Windows Crackme’s.

IDA Pro is one of the most widely used Disassembler for Reverse Engineering, Malware Analysis and Exploits analysis. In this course we will learn IDA by solving  Linux  and  windows CrackMe.  A CrackMe is a small program designed to test a programmer’s reverse engineering skills. This course is an introduction to Reverse Engineering for anyone who wants to get started in this field. It is suitable for software developers who want to learn how software works internally. This course will equip you with the knowledge and skill to use IDA in addition to whatever other tools you might already be familiar with. It is also suitable for absolute beginners with no knowledge of reversing, as I will take you from zero to basics.

I will start off with showing you how to install Oracle Virtual Box. Then, installing Remnux Linux in the Virtual Box followed by IDA for Linux. Then, we will reverse engineer Linux executable files. In a later section, we will move to installing IDA on Windows and continue learning how to reverse engineer windows files using IDA.

By the end of this course, you will have the basic skills to start reversing and analyzing Linux and Windows binaries using IDA.


Get Instant Notification of New Courses on our Telegram channel.

Note➛ Make sure your 𝐔𝐝𝐞𝐦𝐲 cart has only this course you're going to enroll it now, Remove all other courses from the 𝐔𝐝𝐞𝐦𝐲 cart before Enrolling!


What you will learn:

  • How to disassemble programs into assembly code
  • How to decompile programs to C code
  • Static Analysis
  • Dynamic Analysis using IDA’s Debugger
  • Patch files using IDA
  • Understand Linux and Windows API’s
  • Identify entry points and functions
  • Using NOPs and Reversing Jumps
  • Reverse Crackmes and Patch them
  • Learn to Assemble Instructions and Patch Bytes
  • Algorithm Analysis and Testing
  • Using Python to create solutions and keygens to crackmes
  • and more

Suitable for:

  • Anyone interested to learn to use IDA for Reverse Engineering Linux  and Windows executable files.
  • Students thinking of getting into Reverse Engineering or Malware Analysis as a Career Path

Prerequisite:

  • Assembly Language, C Programming and Python would be helpful
  • Windows PC
  • Basic Linux Commands
English
language

Content

Introduction

Introduction

Installing IDA for Linux

Installing Oracle Virtual Box and Remnux
Post-Install Configurations
Installing IDA Free
Solving missing libcanberra module

Assembly Language Basics

Assembly Language Basics

Basic File Analysis and IDA Usage

Using file, strings and xxd to analyze a file
Basic IDA Usage: Part 1
Basic IDA Usage: Part 2
Basic IDA Usage: Part 3

Debugging, Patching, Decompiling and Creating Structs Using IDA

Debugging and Patching Using IDA
Decompiling and Creating Structs
How to dock windows as side-by-side tiles in IDA

Basic Skills: Level 1

Solving Level 1

Basic Skills: Level 2

Solving Level 2 – Part 1 – Renaming Labels and Inserting Comments
Solving Level 2 – Part 2 – Python Scripting
Solving Level 2 – Part 3 – Understanding the Rotation Algorithm
What’s Next

Installing IDA for Windows

Installing IDA Free for Windows
Installing qwingraph add-on for IDA

How to debug and patch a crackme on Windows

How to debug and patch a windows crackme1 on Windows using IDA

Static Analysis of Windows Crackme2

Static Analysis of Windows Crackme2

Reversing Jumps and NOPs – Crackme3

Reversing Jumps and NOPs – Crackme3

Modifying Trial Expiry – Crackme4

Modifying Trial Expiry – Crackme4

Intermodular Calls, Algorithm Analysis and Python Keygen – crackme5

Static Analysis: Intermodular Calls
Dynamic Analysis: Algorithm Confirmation
Creating a Keygen Using Python

Resources For Further Study

Bonus Lecture