
Practical Reverse Engineering with Ghidra, IDA, NASM, ARM, X86, Low Level Coding β A-Z Hands-On Malware Defense & Attack
What you will learn
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!
The theory behind disassembly and its role in reverse engineering.
The four stages of binary analysis: Preprocessing, Compilation, Assembly, and Linking.
The compilation process breakdown and the purpose of each phase.
Working with symbolic information in stripped and not stripped binaries.
How binary executables load and execute.
Installation and basics of Ghidra, a tool for reverse engineering.
Installing the Java Development Kit (JDK) for Ghidra.
Navigating and utilizing Ghidra for project analysis.
Real-world malware analysis using Ghidra.
Practical reverse engineering skills through hands-on malware analysis.
Writing a 64-bit assembly program to display “Hello, world!” using a makefile.
Installing and setting up the SASM assembler for assembly programming.
Understanding the superiority of NASM (Netwide Assembler) and comparing it with other assemblers.
Creating a basic “Hello, world!” program in assembly without using a makefile.
Exploring the theory of disassembly and disassemblers in reverse engineering.
Analyzing the fundamentals of disassembly and its importance in reverse engineering.
Delving into various data types and their representation in assembly language.
Understanding CPU architectures, binary files, and their relationship.
Converting decimal numbers to binary using basic mathematical operations in assembly.
Initiating debugging with gdb (GNU Debugger) and configuring debugging flavors.
Debugging techniques for locating and inspecting variables in memory addresses.
Expanding knowledge of gdb functionalities for advanced debugging scenarios.
Writing a second 64-bit assembly program, creating the source code, and generating a makefile.
Analyzing program output using gdb and building a makefile for the assembly code.
Exploring binary analysis and comprehending the four stages of compilation.
Learning about preprocessing, compilation, assembly, and linking phases of program compilation.
Distinguishing between symbols, stripped, and non-stripped binaries.
Utilizing READELF to view symbolic information in binaries and object files.
Revealing the contents of an object file and attempting to analyze binary executables.
Understanding how binary files load and execute in theory.
Exploring the Executable and Linkable Format (ELF) used in Linux executables, focusing on the executable header.
Learning about ELF fields and ELF program header fields.
Understanding the fundamentals of Windows PE (Portable Executable) format used in Windows executables.
Mastering bitwise logical operations: OR, XOR, NOT, and AND.
Applying OR logic to manipulate data and perform bitwise operations.
Implementing NOT logic to invert bits in assembly programming.
Exploring XOR logic and its applications in data manipulation.
Understanding AND logic and how it’s used for masking and bit filtering.
Utilizing the Data Display Debugger (DDD) to analyze assembly programs.
Developing assembly programs to analyze using DDD and understanding the debugging process.
Analyzing RAX register values using DDD and gdb.
Mastering control flow with jump and loop instructions in assembly.
Learning about common errors in assembly programming and their solutions.
Using conditional statements and jumps to control program flow.
Implementing jump instructions based on equality conditions.
Understanding jump instructions for inequality conditions.
Employing jump instructions for comparisons involving greater values.
Implementing jump instructions for greater-than-or-equal-to conditions.
Using jump instructions for comparisons involving lesser values.
Implementing jump instructions for less-than-or-equal-to conditions.
Developing an assembly project that utilizes jump and loop instructions effectively.
Creating a calculator project using assembly language to perform arithmetic operations.
Defining variables and memory allocation in assembly programming.
Implementing addition and subtraction operations in assembly language.
Adding final touches and decorations to assembly projects.
Explaining the practical usage of registers in assembly programming.
Completing the assembly projects with a focus on optimization and efficiency.
Utilizing memory manipulation techniques to interact with data structures.
Exploring a more advanced project called “EXABYTE” involving memory manipulation.
Testing and analyzing projects using tools like Readelf and GDB for verification and debugging.
Add-On Information:
- Master the Art of Binary Deconstruction: This bootcamp is your fast track to understanding the inner workings of software, dissecting executables from the ground up.
- Unleash the Power of Industry-Standard Tools: Gain hands-on expertise with Ghidra and IDA Pro, the premier reverse engineering suites, to navigate complex codebases.
- Conquer Low-Level Architectures: Dive deep into the x86_64 instruction set and ARM architectures, learning how software interacts directly with the hardware.
- Build Your Assembly Prowess: From writing your first “Hello, world!” in NASM to crafting sophisticated calculators and memory manipulation tools, you’ll master assembly programming.
- Demystify the Compilation Pipeline: Understand the transformation of source code into executable binaries, from preprocessor directives to linker magic.
- Unravel the Secrets of Binary Formats: Gain a comprehensive understanding of Linux ELF and Windows PE structures, essential for analyzing any executable.
- Become a Debugging Ninja: Master GDB and DDD for advanced debugging, spotting vulnerabilities, and understanding program execution flow at the deepest level.
- Practical Malware Defense Strategies: Apply your newfound skills to real-world malware analysis, learning techniques to identify, understand, and mitigate threats.
- Forge Your Reverse Engineering Workflow: Develop a systematic approach to binary analysis, enabling you to tackle any software, regardless of its origin.
- Explore Bitwise Manipulation: Master fundamental bitwise operations (AND, OR, XOR, NOT) and their crucial role in low-level coding and data obfuscation.
- Enhance Your Security Skillset: Equip yourself with the knowledge and practical abilities to excel in cybersecurity roles focused on vulnerability research, exploit development, and malware analysis.
- PRO: Comprehensive coverage of essential RE tools and concepts for rapid skill acquisition.
- PRO: Strong emphasis on practical, hands-on exercises, preparing you for real-world challenges.
- PRO: Builds a solid foundation for advanced topics like exploit development and secure coding.
- CON: The demanding pace may require significant dedication outside of scheduled learning hours.
English
language