Reverse Engineering

Breaking Software Protection and Decrypting

Information Security Basics4.4(95)3h 25m15 lectures2 sections

What you'll learn

  • Understand the basics of reverse engineering and its applications
  • Learn about number systems and their uses
  • Understand the processor, addressing, and stacks
  • Get to know Assembly Language
  • Understand the types of software protection and their weak points
  • Learn about the RSA cipher and cryptography
  • Understand how key files are protected
  • Recognize the risks of weak passwords
  • Develop stronger protection for applications

About this course

This course gives an introduction to reverse engineering from an awareness and protection angle: understanding how software works from the inside and why it needs strong protection. You start with an introduction to reverse engineering, its applications and benefits, then get to know number systems, the processor, addressing, and stacks in the computer, and an introduction to Assembly Language. Next you learn about tools for analyzing programs and detecting types of protection, then understand how applications are protected and why key files matter, get to know the RSA cipher within cryptography, and see why weak passwords are a danger to protected files. The course ends by introducing the largest Arabic community in this field. It suits programmers, cybersecurity students, and anyone who wants to protect their software and understand its weak points. Some simple programming knowledge is recommended, but the course explains the basics you need first. After it, you will be able to build better protection for your applications and understand the risks that threaten them.

Expected outcomes

  • Understand how to break software protections and identify security vulnerabilities.
  • Acquire skills to use reverse engineering tools effectively.
  • Execute Brute Forcing attacks professionally.
  • Decrypt software and applications using advanced techniques.
  • Enhance your capabilities as a professional in reverse engineering.

Learner reviews

These reviews are from learners who bought the content and completed at least 50% of it — there are no reviews from anyone who hasn't gone through the material.
4.4
★★★★☆
95 reviews
5★
38
4★
56
3★
1
2★
0
1★
0

    Course content

    1

    Reverse Engineering - Breaking Software Protection and Decrypting

    14 lectures
    1. Introduction to Reverse Engineering (Applications and Advantages)Gives an overview of the reverse engineering course topics for Windows applications, such as understanding the processor, registers, assembly language, and debugging tools, for the educational purpose of understanding software protection mechanisms.7:23
    2. Number Systems and Their Uses in Application CrackingExplains the basics of binary, decimal, hexadecimal and octal numeral systems and how to convert between them, as foundational knowledge needed to understand how data is represented in programs when studying them.15:34
    3. The Processor, Addressing, and Stacks in ComputersExplains basic computer components such as the processor, registers, and memory addressing methods, as theoretical concepts needed to understand program structure before studying it.16:07
    4. Introduction to Assembly LanguageIntroduces assembly language as a low-level programming language, explains the steps of converting its code into an executable file, and covers basic logical instructions such as AND.14:12
    5. Overview of Reverse Engineering and Installing OllyDBG and Its PluginsExplains installing a debugging tool used for studying programs for educational purposes, and shows its basic interface including the menu bar, registers, memory and stack windows.20:42
    6. Complete Explanation of OllyDBG and PEID for Protection DetectionExplains more of the debugging tool's interface, and introduces a tool used to identify which programming language a program was built in and whether it is protected, for educational understanding of program structure.8:56
    7. Explaining Serial Fishing and a Practical Introduction to Reverse EngineeringIntroduces the general concept of locating verification messages inside programs as part of studying software protection mechanisms for educational purposes.14:51
    8. How to Patch Protected ApplicationsIntroduces the general concept of modifying a program's behavior after analyzing it, as part of studying software protection mechanisms for educational purposes.13:19
    9. Explaining Code Injection Inside the Victim ProgramIntroduces the general concept of code injection inside programs as an analytical tool used in studying software protection mechanisms for educational purposes.19:03
    10. Explaining RSA Code Inside CRYPTOGRAPHYExplains the basics of the RSA encryption algorithm from a theoretical and mathematical perspective, as one of the most well-known public-key cryptography algorithms used in computers and software.21:34
    11. Explaining Key File Protection and Reviewing Important FunctionsIntroduces the general concept of protecting software with an external key file, as one of the traditional protection types studied for educational purposes.16:30
    12. Guessing Passwords of Protected Files Using Brute ForcingIntroduces the general concept of systematically guessing passwords, as a method studied for educational purposes to understand how strong protection systems are.18:09
    13. Cracking .NET and Visual Basic ApplicationsIntroduces the general idea that analyzing programs built with languages like .NET and Visual Basic differs from others, for educational study of different protection mechanisms.11:23
    14. Introduction to the Largest Arab Gathering of Reverse Engineering ProfessionalsIntroduces an Arabic educational forum specialized in reverse engineering, outlining its various sections for tools, books, and educational topics, and notes that the forum's policy prohibits requests to crack personal software.7:41
    2

    Add-ons

    1 attachments
    1. Downloading Examples and Used Programs

    Instructor

    Eng. Kanaan Al-Hallaj

    Eng. Kanaan Al-Hallaj

    Instructor at the International Robotics Club, specializing in the development and programming of customer relationship management applications, has worked on various projects integrating robotics and artificial intelligence.
    292.3K views14 courses

    Related courses