Reverse Engineering
This is the process of generating a useful product by using the design and components of a pre existing product. In computer world Reverse Engineering is used to study the functionality of the software and compute the logic and code behind it The basic aim behind this is to make a copy of the software. I am going to use Reverse Engineering to crack softwares. I will be using OllyDbg for this purpose.
The next step would be to load the file we are going to reverse and run it. For downloading reveseMe.exe visit the link
Introduction to OllyDbg
Firstly I'll introduce Olly, and the different windows we see on while reversing an app.Olly is a third level Debugging(assembler level analysing) tool for Windows. For downloading Olly visit the link The picture below is the first screen we see when we open Olly.
Let us first try to understand what the different sections on the window are, let us go from left to right and then the bottom ones
- The leftmost section is the "virtual address" window. The next two in the order are the "opcode" section and "mnemonics" section, opcode stands for operation code, in simple language this is code for the instructions in assembly language.And mnemonics are the conversion of opcode readable to humans. Next up is the comment section Olly has made our work easier by including this section in the window.
- Now the rightmost section, it is the "Register window" here we have the 9 CPU registers and a few flags. At the top we have the 9 CPU registers . We see 8 Flags just below the registers, out of these 8 flags most of our work will be concerned with only of them, the three being "C", "Z", and "O".
- Now in the right bottom we have the Stack window, here we can notice the changes happening on the stack(as the instructions are executed). In the left bottom we have the "Dump window".
- The window in the middle or just above the Dump window is the Pane window, In this window we see whats is going to happen in the next instruction
Shortcuts
f8 : This button is used to run the application by executing each instruction in the respected order.
f9 : This is used to run the debugged application.
f12 : Pause button.
f7 : This performs the same function as that performed by f8 but we a
"CALL" statement is encountered this follows the
instruction inside the call.
For better understanding of the registers and flags follow the link Registers and Flags
Now we have a basic knowledge about OllyDbg. We will reverse the first application in the next part
For better understanding of the registers and flags follow the link Registers and Flags
Now we have a basic knowledge about OllyDbg. We will reverse the first application in the next part
Post a Comment