Git Product home page Git Product logo

idarop's Introduction

Idarop : a ROP database plugin for IDA

Idarop is an IDA plugin which list and store all the ROP gadgets presents within the opened binary. The codebase is vastly copied from the unmaintained IDA plugin idaploiter. However idasploiter is built to work at runtime (lifting IDA debugger API), whereas idarop is aimed for a more static approach.

While there is an incredible variety of ROP assisting tools (just grep ROP in that list), most of them just output the found gadgets in the console which makes storing and searching through them a hassle. idarop aims to capitalize on the idb file format (and IDA) to store ROP gagdets along RE informations (assembly annotations, type infos, etc.) :

Listing ROP Gadgets in a specific list view in IDA

Using IDA to view gadgets allows the user to take advantage of the "advanced" list filtering IDA provides : in the following picture, only gadgets having a 0xff opcode and less than 4 bytes are shown (and the ones touching esp are highlighted).

Filtering ROP Gadgets using IDA Filters Tool

NB : This plugin only works on x86 binaries.

Dependencies

idarop rely on ida-netnode to store found gadgets address in the .idb database. If netnode not installed, the ROP search results will just be discarded at IDA's exit.

Usage

idarop provides two shortucts :

  • Maj+R to list found ROP gadgets
  • Ctrl+Maj+R to do a new gadgets search (wipes previous results)

Searching ROP gadgets within IDA

( The search configuration and UI is copied and adapted from idasploiter)

Install

idarop is on Pypi, so you can pip from it.

On Windows:

  • C:\Python27\Scripts\pip2.7.exe install idarop --install-option="--ida"
  • C:\Python27\Scripts\pip2.7.exe install idarop --install-option="--ida="6.9""

Ida is installed in the Program Files folder, so you need to run this command with Administrator rights.

Alternatively, you can clone the repo and type "C:\Python27\python.exe setup.py install --ida". idarop use a "clever" __ida_setup__.py script to override the traditionnal distools install command to install the plugin in the correct IDA plugins directory.

Credits

Since this project is largely a ersatz of it, it would be criminal of me not to thanks Peter Kacherginsky for its work on idasploiter.

idarop's People

Contributors

lucasg avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

idarop's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.