The collabREate Plugin for IDA Pro
collabREate is a plugin for IDA Pro that is designed to provide a collaborative reverse engineering
capability for multiple IDA users working on the same binary file. collabREate consists of a client plugin
that may be used with IDA versions 4.9 through 6.5, including IDA freeware 5.0, along with a
collabREate server component (Java/JDBC and postresql or mysql). Beginning with Ida version 6.0
collabREate is also available for the Linux and OS X versions of Ida.
When a collabREate plugin is activated, a connection is established between an IDA instance and a
collabREate server. The plugin processes IDA event notifications and pushes database change messages
to the collabREate. Each message is archived on the server and re-broadcast to any other IDA users that
choose to join the same collabREate project. Users may join a project at any time. Each time a user
connects to a project the server pushes all update messages that have been stored since the user
last received an update. In the case of an initial join to a project, the user will receive all
update messages that have ever been stored for the project. In this way, users are rapidly brought
up to date and into sync with all other users on the same project.
Basic capabilities supported by the collabREate server include:
- HMAC based user authentication.
- Project consistency checks. Users can only join projects that are consitant with the binary file
they have open in IDA. If previously associated with a project, users are automatically joined
to their previous project.
- Project forking. One user can fork a project in order to pursue a different line of analysis
without impacting the original project. Other connected users are notified of the fork operation and
offered the chance to follow the fork or remain with the original project.
- Project savepoints. Users may set savepoints at any time. A save point represents a known update
point within a project and allows users the opportunity to begin with a fresh binary and replay all
updates up to a given savepoint. Savepoints offer a limited form of revert capability through
replay rather than rollback.
- User creation and deletion via the use of the ServerManager application.
- Project deletion via the use of the ServerManager application.
Basic capabilities supported by the collabREate server manager:
- Add, list, and edit users
- List existing server connections
- List, delete, import, and export projects
View the project README file
Caution:
collabREate is a work in progress. We really appreciate the feedback we have received so far concerning
problems that people have encountered. We have attempted to make collabREate fail gracefully when it does
fail. Such failures may manifest itself in the form of "unknown command code" messages in the IDA message window.
In other case, you may notice that two databases joined to the same project may become out of sync. In all such
cases, any detail you can provide regarding the operation you were performing in IDA will be most helpful as
we attempt to troubleshoot the problem.
Current SVN Version Plugin and Server Source and pre-compiled plugin binaries (28 May 2014)
NOTE: The latest sources are available via SVN at sourceforge
Collabreate Plugin and Server Source and Binaries
Version 0.3.0.1 pre-built collabREate VMware Appliance (28 Sep 11)
A preconfigured, Fedora 15/postgresql/java/collabREate, virtual machine is available.
Plugin Binaries only (current build with latest SVN sources: 28 May 2014):
Choose your Platform and IDA version (NOTE: do not rename the plugin when you download it)
The PGP public key used to sign these binaries may be found HERE.