Basics of dynamic analysis using OllyDbg and x64dbg
Now that we’ve explained processes, threads, and the execution of the PE files, it’s time to start debugging a running process and understanding its functionality by tracing over its code at runtime.
Debugging tools
There are multiple debugging tools we can use. Here, we will just give three examples that are quite similar to each other in terms of their UIs and functionality:
- OllyDbg: This is probably the most well-known debugger for the Windows platform. The following screenshot shows its UI, which has become a standard for most Windows debuggers:
Figure 3.17 – OllyDbg UI
- Immunity Debugger: This is a scriptable clone of OllyDbg that focuses on exploitation and bug hunting:
Figure 3.18 – Immunity Debugger UI
- X64dbg: This is a debugger for x86 and x64 executables with an interface that’s very similar to OllyDbg...