Interactive Disassembler
Dit artikel of deze sectie wordt actief bewerkt. Om bewerkingsconflicten en gegevensverlies te helpen voorkomen, wordt je vriendelijk verzocht dit artikel niet te bewerken zolang deze melding wordt getoond. Klik op geschiedenis voor de laatste ontwikkelingen. |
Interactive Disassembler, vaak kortweg IDA of IDA Pro genoemd, is een disassembler van software, dus een programma dat computerprogramma's vertaalt van de binaire machinetaal naar voor de programmeur leesbaardere assembleercode. Het programma is oorspronkelijk als shareware ontwikkeld door Ilfak Guilfanov, een Russische softwareontwikkelaar en beveiligingsexpert. Later werd het programma verkocht als commerciëel product door DataRescue, een Belgisch bedrijf, die er verbeteringen aan aanbracht en het onder de naam IDA Pro verkocht.
In 2007 startte Guilfanov Hex-Rays, waarmee hij de ontwikkeling van een extensie voor IDA, de Hex-Rays Decompiler, verzorgde. Sinds januari 2008 verzorgt Hex-Rays de ontwikkeling en support van IDA Pro zelf ook.
IDA Pro ondersteunt diverse formaten van uitvoerbare bestanden voor verschillende processoren en besturingssystemen, zoals Microsoft Windows, Mac OSX, en Linux. Verder zijn er verschillende commerciële plugins voor dit programma, zoals een plugin die assembeercode kan omzetten in C code, en een die programma's die zijn gecompileeerd met een C/C++ compiler kan disassembleren. De laatste volledige versie van IDA Pro is een commerciëel softwarepakket. Vroegere versies, die minder functionaliteit bezaten dan de huidige volledige versie, waren wel gratis.
Een kenmerk van IDA is, dat het veel interactiviteit mogelijk maakt. De gebruiker van het programma kan annotaties aanbrengen, aanpassingen maken aan de vertaalslagen, waarmee onvolkomenheden van automatische vertalingen van binaire code naar assembleercode handmatig verbeterd kunnen worden.
Scripts
De werking van IDA kan worden uitgebreid met zogenaamde "IDC scripts". Deze scripts bevatten instructies die door de gebruiker van het programma kunnen worden geschreven. Enkele voorbeeldscripts worden met IDA meegeleverd, waarmee het eenvoudiger wordt IDC scripts te schrijven. Er zijn websites die gespecialiseerd zijn in het schrijven van IDC scripts en die hulp hierbij kunnen bieden.
Verder zijn er ook plugins ontwikkeld voor IDA, waarmee ook andere gebruikelijke scripttalen gebruikt kunnen worden met deze software. IdaRUB ondersteunt Ruby en IDAPython biedt de mogelijkheid python scripts te gebruiken. Sinds versie 5.4 van Ida Pro wordt IDAPython standaard geïnstalleerd bij de installatie van IDA Pro.