Antelcat / ida_copilot

ChatGPT Agent analyses your IDA pseudocode
MIT License
99 stars 6 forks source link
agent assistant autogpt chatgpt gpt ida ida-plugin ida-pro idapython large-language-models llm openai reverse-engineering

Copilot for IDA Pro

English | δΈ­ζ–‡

πŸ‘‹ Welcome to the ChatGPT plugin for IDA Pro, where the cutting-edge capabilities of OpenAI's GPT models meet the powerful disassembly and debugging features of IDA Pro. This plugin leverages LangChain and the latest Agent-based approach to automate the analysis of decompiled code in IDA, making reverse engineering easier and more interactive than ever.

Preview

Features

Getting Started

Prerequisites

Installation

  1. Clone the repository or download the source code zip package.
  2. Install required dependencies using pip install -r requirements.txt.
  3. Copy ida_copilot folder and ida_copilot.py file to the plugins directory of IDA Pro, similar to C:\Program Files\IDA Pro 7.5\plugins.
  4. Set up your OpenAI API key in the environment variable OPENAI_API_KEY.

Usage

How It Works

The core of this plugin operates on the innovative concept of an "Agent" framework, with ChatGPT serving as the Brain of this system. Imagine ChatGPT as an astute collaborator that discerns what needs to be done next within the IDA environment. This AI-driven agent continually makes decisions on the next course of action based on the current context and its understanding of the code.

Through an array of Python APIs provided by the plugin, ChatGPT seamlessly interacts with IDA Pro. It harnesses these interfaces to analyze functions, rename variables, generate exploits, and even hold an interactive session with you, just like a human expert would. This continuous loop of analysis, decision-making, and interaction is what makes this plugin not just a tool, but a smart companion for your reverse-engineering challenges.

Development

This plugin is under active development, with new features being added regularly. If you wish to contribute or have suggestions, please feel free to open an issue or a pull request on GitHub.

Features in Development

License

This project is licensed under the MIT License.

Acknowledgements

We hope this plugin empowers you to take your reverse engineering tasks to the next level with the power of AI!