Introduction
IDA from Hex-Rays SA is a well-known dis-assembly software extensively used in the reverse engineering field. IDA provides an extensive API for C language plugin development. While efficient, C can be painful and time consuming as soon as you attempt to develop high level tasks.
This project attempts to provide :
- A framework that let you develop plugins using C#
- Visual Studio Express 2012 for Windows Desktop integration for ease of use
Plugins are mixed mode libraries (managed+unmanaged) relying on a .Net library wrapping the native API.
Using a wrapping layer, performances are expected to be poorer than those from the native API. Consequently this project shouldn't be considered a catch all replacement for the existing native API.
Project status and history
Current project status and revisions history can be found on this page.
Supported platforms
The software is developed with Visual Studio 2012 Professional Edition under Windows 7 Professional Edition x64 version and tested under IDA Pro 6.4 (64 bits edition). Consequently this platform is the only one currently supported. The software is expected to be later tested against the IDA standard 32 bits edition.
The Visual Studio Integration package supports VS2012 Express for Windows Desktop. Professional, Premium and Ultimate editions should work, however they haven't been tested yet.
Prerequisites
In order to use the software the following component must be installed :
The IDA SDK MUST be installed as a sub-directory of the IDA Pro installation directory. This sub-directory name must also begin with 'idasdk'. A version number may be suffixed to the name.
Building the software
WARNING : As of revision 22 IdaNetBuilder program will fail unless a Visual Studio 2010 Pro or higher is installed on your machine. The Express edition doesn't support building VSIX package.
The package itself is available from project files. However the IdaNetBuilder program is not yet fixed and should still fail.
There is currently no binary distribution for the software. You must build it by yourself. A standard user with no administrative rights should be able to build the software however such a user won't be able to deploy and thus run tests unless special steps are performed see build process details..
First of all you must pull the most recent version of the source code. Next :
Various detailed log files are created under the %LOCALAPPDATA%\idaplug\build\logs directory. This directory will be automatically created the first time you build the software. Summary details are displayed in the console window. For additional information see the build process details.
Resulting artefacts are stored in the %LOCALAPPDATA%\idaplug\bin directory.
Once build is successfully completed, you must manually install the VSIX package.
Writing a plugin
See the HelloWorld sample page for details about this topic.
See the write a plugin page for details about this topic.
Other infos