IDA Debugger: Overview

Adding Dynamic Analysis to IDA

In addition to being a disassembler, IDA is also a powerful and versatile debugger. It supports multiple debugging targets and can handle remote applications, via a "remote debugging server".

Overview

Debugging files on the three platforms IDA natively runs on (i.e., Windows, Linux, Mac OS X) is straightforward, and thanks to the power of remote debugging servers, it is possible to enable debugging of any executable, from any platform!

Look at how easy we've made it:

There! How's that for simplicity: from anywhere, you can debug anything!

You can be sitting at a Mac OS X machine, and get to debug Windows programs on another machine - or even in a virtual machine (that's actually how we enable kernel debugging. See details below!)

This, of course, is just an overview. Below, you will find a detailed table describing exactly what is supported, as well as some additional notes.

Cross-Platform Debugging Is Powerful!

IDA's Cross-Platform debugging features these characteristics:

Detailed Debugging Capabilities

Here are more details on how to debug specific platforms, from other platforms:

IDA runs on:
Windows
IDA runs on:
Linux
IDA runs on:
Mac OS X
Additional
Notes
Target Platform:
Windows 32/64-bit
Local/Remote Remote Remote On 64-bit Windows platforms, remote only.
Target Platform:
Linux 32/64-bit
Remote Local/Remote Remote On 64-bit Linux platforms, remote only.
Supported platforms: x86/x64/ARM32 Linux/ARM Android
Target Platform:
OS X x86/x64
Remote Remote Local/Remote On 64-bit Mac OS X platforms, remote only.
Target Platform:
Windows CE
Remote / / MS Windows CE 4.x and 5.x on ARM are supported. Higher versions may work but we have not tested them.
Target Platform:
EPOC
Remote / /
Target Platform:
iOS (iPhone and iPad)
Remote Remote Remote Supports the latest version of iOS only
Target Platform:
Bochs
Bochs Emulator Bochs Emulator Bochs Emulator
Target Platform:
GDB Server
GDB Server GDB Server GDB Server Debugger based on GDB Server. Particularly useful for windows or linux kernel debugging via VMWare, or even QEMU-based debugging.
Currently (IDA 7.0) supported processors: x86/x64, ARM/AArch64, PowerPC, MIPS.
Target Platform:
WinDBG 32/64-bit
Remote / / Both user-mode and kernel-mode debugging are available. 64-bit debugging is supported too. See the help page
Target Platform:
Android (Dalvik)
Remote Remote Remote Both DEX bytecode and source level debugging are available. Please note that our Linux debugger can handle native code as well.

Notes

Tutorials

We have written many tutorials to help get you started using the debuggers: