Jump to content
Tuts 4 You

IDAPython: User Scripting for a Complex Application

Teddy Rogers

About This File

Developers of today's increasingly complex software packages have to find the delicate balance between the required feature set and implementation time. One way to deal with the issue is to provide end users with means to extend and customize the software to their own needs. Application scripting is the easiest way to involve the users in customisation, with a low entry barrier.

The goal of this final year project was to integrate the Python programming language as a user scripting language into the Interactive Disassembler Pro, also known as IDA Pro, the de-facto standard disassembly tool of the computer security industry. The project is called IDAPython, and the software was implemented as plug-in to IDA Pro.

The IDAPython project used Python as a scripting language and the Simplified Wrapper Interface Generator (SWIG) for interfacing the interpreter to the host application. This report details the design, implementation and issues related to interfacing Python to a complex Application Programming Interface through SWIG, targeted for three different software platforms.

Over the years IDAPython has become a powerful tool, popular among security researchers around the world. IDAPython is available in binary and source code form for free.

User Feedback

Recommended Comments

There are no comments to display.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Create New...