{ "info": { "author": "lucasg", "author_email": "lucas.georges@outlook.com", "bugtrack_url": null, "classifiers": [], "description": "Idarop : a ROP database plugin for IDA\n=========\n\n`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`](https://github.com/iphelix/ida-sploiter). However `idasploiter` is built to work at runtime (lifting IDA debugger API), whereas `idarop` is aimed for a more static approach. \n\nWhile there is an incredible variety of ROP assisting tools ([just grep ROP in that list](http://www.capstone-engine.org/showcase.html)), 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.) :\n\n

\n\"Listing\n

\n\nUsing 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).\n\n

\n\"Filtering\n

\n\nNB : This plugin only works on `x86` binaries.\n\n## Dependencies\n\n`idarop` rely on [`ida-netnode`](https://github.com/williballenthin/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. \n\n## Usage\n\n`idarop` provides two shortucts :\n\n* `Maj+R` to list found ROP gadgets \n* `Ctrl+Maj+R` to do a new gadgets search (wipes previous results)\n\n

\n\"Searching\n

\n\n( The search configuration and UI is copied and adapted from `idasploiter`)\n\n## Install\n\n`idarop` is on Pypi, so you can pip from it.\n\nOn Windows:\n\n* `C:\\Python27\\Scripts\\pip2.7.exe install idarop --install-option=\"--ida\"`\n* `C:\\Python27\\Scripts\\pip2.7.exe install idarop --install-option=\"--ida=\"6.9\"\"`\n\nIda is installed in the Program Files folder, so you need to run this command with Administrator rights.\n\n\nAlternatively, you can clone the repo and type \"`C:\\Python27\\python.exe setup.py install --ida`\". `idarop` use a \"clever\" [`__ida_setup__.py`](https://github.com/lucasg/idasetup) script to override the traditionnal `distools` `install` command to install the plugin in the correct IDA plugins directory.\n\n## Credits\n\nSince this project is largely a ersatz of it, it would be criminal of me not to thanks [Peter Kacherginsky](https://thesprawl.org/) for its work on `idasploiter`.", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/lucasg/idarop", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "idarop", "package_url": "https://pypi.org/project/idarop/", "platform": "", "project_url": "https://pypi.org/project/idarop/", "project_urls": { "Homepage": "https://github.com/lucasg/idarop" }, "release_url": "https://pypi.org/project/idarop/0.4.2/", "requires_dist": null, "requires_python": "", "summary": "ROP search and visualization plugin for IDA", "version": "0.4.2" }, "last_serial": 3933629, "releases": { "0.3": [ { "comment_text": "", "digests": { "md5": "afcb7278401b5f3f87340d4931b6f7af", "sha256": "8974b1fd667f141ea15cd873e96ca3e13735a2580820842d49e8f54b511725a1" }, "downloads": -1, "filename": "idarop-0.3.tar.gz", "has_sig": false, "md5_digest": "afcb7278401b5f3f87340d4931b6f7af", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15477, "upload_time": "2017-10-28T13:23:24", "url": "https://files.pythonhosted.org/packages/40/40/aa9a1290fcb8a89fad9b05a353c75a08eb559564b0e390f34ff21d76498d/idarop-0.3.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "30281f11cb8002813fa9c91494951765", "sha256": "fa4a776532ea8dd39ca37686734e4373134addf8cdb67bb117a953ab949be27e" }, "downloads": -1, "filename": "idarop-0.3.1.tar.gz", "has_sig": false, "md5_digest": "30281f11cb8002813fa9c91494951765", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18978, "upload_time": "2017-10-28T15:10:02", "url": "https://files.pythonhosted.org/packages/4a/9d/e20274ee1c8da66938278975e332019720e633918b3688b465d3e4831587/idarop-0.3.1.tar.gz" } ], "0.4": [ { "comment_text": "", "digests": { "md5": "39efbf4ad8a30b5e2dd2b4f94aaa4d38", "sha256": "1d575125504aceeaae92aa796c537a0e744eca77183ad4443aa52f2d99c2fdcc" }, "downloads": -1, "filename": "idarop-0.4.tar.gz", "has_sig": false, "md5_digest": "39efbf4ad8a30b5e2dd2b4f94aaa4d38", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20017, "upload_time": "2018-05-31T19:57:34", "url": "https://files.pythonhosted.org/packages/e3/5a/2d7ec533da44b30536a897cb8772f371d5ca6497c083b732e63dc94555f7/idarop-0.4.tar.gz" } ], "0.4.1": [ { "comment_text": "", "digests": { "md5": "804c03ffb0a3ead491d844955c899514", "sha256": "6b3b2bd010dad6d49298a5f28ae91e4d88b6ff7a32d60ecf76a72c5c8356f0f3" }, "downloads": -1, "filename": "idarop-0.4.1.tar.gz", "has_sig": false, "md5_digest": "804c03ffb0a3ead491d844955c899514", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21445, "upload_time": "2018-05-31T20:03:19", "url": "https://files.pythonhosted.org/packages/9f/de/5c140a16263b2454170b1dd376cf0e685ab3e98686c2d1688335e9af4d34/idarop-0.4.1.tar.gz" } ], "0.4.2": [ { "comment_text": "", "digests": { "md5": "1185d78512a085b51b064e34a6f456fa", "sha256": "dc195433543e45618e0afd8ba1d3103979e48e47da70fcd5ef39d365ddd60dc3" }, "downloads": -1, "filename": "idarop-0.4.2.tar.gz", "has_sig": false, "md5_digest": "1185d78512a085b51b064e34a6f456fa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21635, "upload_time": "2018-06-05T19:53:08", "url": "https://files.pythonhosted.org/packages/9a/ee/0841762a309665763d55be6ec81b7db7e570c8b7119642e07f023d0449d4/idarop-0.4.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "1185d78512a085b51b064e34a6f456fa", "sha256": "dc195433543e45618e0afd8ba1d3103979e48e47da70fcd5ef39d365ddd60dc3" }, "downloads": -1, "filename": "idarop-0.4.2.tar.gz", "has_sig": false, "md5_digest": "1185d78512a085b51b064e34a6f456fa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21635, "upload_time": "2018-06-05T19:53:08", "url": "https://files.pythonhosted.org/packages/9a/ee/0841762a309665763d55be6ec81b7db7e570c8b7119642e07f023d0449d4/idarop-0.4.2.tar.gz" } ] }