Hex-Rays plugin contest: looking back at a 10-year journey

The Hex-Rays plugin Contest was an initiative by the experts behind IDA Pro, the state-of-the-art binary analysis tool. The contest, still taking place each year, encourages IDA users to create innovative and useful extensions for IDA and/or the Decompiler. 2019 marked its 10-year celebration.

Hex-Rays deeply appreciates all participants for spending time and making this contest an incredible journey. A small recap is presented below with our enormous gratitude to the limitless creativity of our precious IDA users.

The journey began…

Started back in 2009 when IDA was at version 5.5, the very first edition of Hex-Rays’ plugin contest already received a considerable amount of submissions. It scaled up over the years and attracted more and more attention from the whole reverse engineering community. The amount of submissions and contestants increased and so did our satisfaction, seeing how IDA could be powered and extended with such creative and interesting add-ons.

An inspiring contest for and by IDA users

10 years later, a lot has changed and evolved since that first prize was awarded, especially for IDA itself. The Hex-Rays team still carefully selects the best plugins for each contest. In 10 years, the numbers of submissions and contestants each year tripled and these 10 years were full of insights and improvements. We are glad that the contest has always enabled IDA users to take further out-of-the-box steps and to enhance IDA’s and the Decompiler’s functionalities and capabilities with their creativity. These innovative plugins can without a doubt serve the whole reverse engineering community.

contest statistics

A significant and continuous source of innovation

At this important milestone of the plugin contest, we gathered to select the most influential plugins and highlight their main contributions throughout the years. These plugins won praise first because they greatly extend the capabilities of IDA but also because they inspired us to further improve IDA. We are grateful to the authors and believe the contributions deserved to be remembered.

These are our picks but it was difficult to make up our minds and select just a few to place under the spotlight: it’s important to stress how many other fantastic plugins we have had the privilege of reviewing across the years.
The Hex-Rays Team

2009 – IDADWARF by Vincent Rasneur from DenyAll

IDADWARF imports DWARF debug information into IDA databases. After seeing the results of this plugin’s work, we knew that we simply had to offer this functionality out of box and the official DWARF support shipped in IDA 6.4 (2013).

IDADWARF 2009

2013 – hexrays_tools and 2016 – Command Palette & hexlight by Milan Bohacek

hexrays_tools partially motivated us to publish the microcode in IDA 7.1 (2018). Milan is one of our most active participants and helped us realize how useful even small usability improvements can be. Since then, several of the features from his plugin have been implemented directly in IDA and the Decompiler. Thank you, Milan!

hexrays_tools 2016

command-palette 2016

highlight 2016

2015 – Dynamic IDA Enrichment (DIE) by Yaniv Balmas

Even though DIE is not actively maintained anymore, requires Python 2.7 and an unmaintained version of Sark, it was one of the plugins that showed an interesting use of IDA’s debugger: extracting information from a running process. Over the years, several other similar plugins were submitted, such as funcap by Andrzej Dereszowski (2013) and dereferencing by Daniel Garcia Gutierrez (2019).

DIE 2016

2017 – Lighthouse by Markus Gaasedelen

This plugin is very simple to install and use. Written in PyQt, Lighthouse allows users to visualize execution traces and perform ‘sets’ operations on them. This can be helpful in dynamic analysis. Lighthouse highlights how important PyQt is and the amazing things that can be built on top of it. Today, PyQt is a first-class citizen of IDA and ships with it.

Lighthouse 2017

2018 – IDArling by Alexandre Adamski and Joffrey Guilbon

Together with a few other plugins trying to achieve the same goal, IDArling helped us realize that there is a very strong demand for teamwork/collaboration in IDA.


Postscript

These days, whilst waiting for the 2020 plugin contest results and standing at the threshold of its next decade, we would like to take this opportunity to thank all the contestants who participated and helped the contest reach this point. This contest remains a playground for and by IDA users, inspires them to demonstrate creativity, to dare to think beyond the limits and to give back to the community.

Here’s to the next 10 years of inspiration and innovation!