L'Interactive DisAssembler, più comunemente conosciuto con il nome IDA, è un disassembler largamente usato per il reverse engineering. Supporta numerosi formati di file eseguibili per diversi processori e sistemi operativi.

Sebbene IDA effettui una grande quantità di reverse engineering in automatico, ottenendo informazioni sui riferimenti incrociati (cross-references o XREFs) tra le varie sezioni, sui parametri delle chiamate API, e altro, è comunque caratterizzato soprattutto dall'interattività. Un tipico utente di IDA inizierà con un listato generato automaticamente per poi rinominare, commentare, o aggiungere in altri modi informazioni al disassemblato, finché diventa chiaro cosa fa, rendendo IDA un ottimo strumento per il reverse engineering.

Inizialmente IDA veniva distribuito liberamente dal suo autore, il russo Ilfak Guilfanov: fu in seguito trasformato in un prodotto commerciale dalla DataRescue, una compagnia belga, che fino a poco tempo fa manteneva e supportava una versione notevolmente migliorata detta IDA Pro. Ora la compagnia che supporta e mantiene questo software sembra essere la hex-rays. Le versioni di IDA Pro a partire dalla 4.50 contengono anche un debugger integrato.

Sistemi/Processori/Compilatori Supportati Sistemi Operativi x86 Windows GUI x86 Windows console x86 Linux console Formati Dei File Eseguibili PE (Windows) ELF (Linux, most *BSD) Mach-O (Mac OS X) Netware .exe OS/2 .exe Geos .exe raw binary, such as a ROM image Processori Intel 80x86 family ARM, including thumb code Motorola 68xxx/h8 Zilog Z80 MOS Technology 6502 Intel i860 DEC Alpha Analog Devices ADSP218x Angstrem KR1878 Atmel AVR series DEC series PDP11 Fujitsu F2MC16L/F2MC16LX Fujitsu FR 32-bit Family Hitachi SH3/SH3B/SH4/SH4B Hitachi H8: h8300/h8300a/h8s300/h8500 Intel 196 series: 80196/80196NP Intel 51 series: 8051/80251b/80251s/80930b/80930s Intel i960 series Intel ia64 series Java virtual machine MIPS: mipsb/mipsl/mipsr/mipsrl/r5900b/r5900l Microchip PIC: PIC12Cxx/PIC16Cxx/PIC18Cxx Microsoft Visual Studio .NET: cli/net Mitsubishi 7700 Family: m7700/m7750 Mitsubishi m32/m32rx Mitsubishi m740 Mitsubishi m7900 Motorola DSP 5600x Family: dsp561xx/dsp5663xx/dsp566xx/dsp56k Motorola ColdFire Motorola HCS12 NEC 78K0/78K0S PA-RISC PowerPC SGS-Thomson ST20/ST20c4/ST7 SPARC Family Samsung SAM8 Siemens C166 series TMS320Cxxx series Compilatori/Librerie (per la funzione di riconoscimento automatico della libreria) Borland C++ 5.x for DOS/Windows Borland C++ 3.1 Borland C Builder v4 for DOS/Windows GNU C++ for Cygwin MS C (16 bit) for DOS/Windows MS Visual Studio .NET MS Visual C++ v6 Watcom C++ (16/32 bit) for DOS/OS2 ARM C v1.2 GNU C++ for Unix/common

Collegamenti esterni

Categoria:Software di sistema