Asistente de ingeniería inversa impulsado por IA que conecta IDA Pro con modelos de lenguaje a través de MCP.
[!IMPORTANT] ¡Recomiendo usar el Servidor MCP Oficial de Hex-Rays IDA en su lugar!
Consulta la publicación del blog de anuncio para más información.
Servidor MCP simple para permitir el reversing por vibra en IDA Pro.
https://github.com/user-attachments/assets/6ebeaa92-a9db-43fa-b756-eececce2aca0
Los binarios y el prompt para el video están disponibles en el repositorio mcp-reversing-dataset.
idapyswitch para cambiar a la versión más reciente de Pythonida-pro-mcp --config para obtener la configuración JSON para tu cliente.Nota: Esto requiere tener idalib activado globalmente y uv instalado:```bash
uv run "C:\Program Files\IDA Professional 9.3\idalib\python\py-activate-idalib.py"
uv run "/Applications/IDA Professional 9.3.app/Contents/MacOS/idalib/python/py-activate-idalib.py"
uv run "/path/to/idapro-9.3/idalib/python/py-activate-idalib.py"
## Instalación (Claude Code)
Para instalar la última versión de IDA Pro MCP en Claude Code:```bash
claude plugin marketplace add mrexodia/claude-marketplace
claude plugin uninstall ida-pro-mcp@mrexodia
claude plugin install ida-pro-mcp@mrexodia
Para instalar la última versión de IDA Pro MCP en Codex:```bash codex plugin marketplace add mrexodia/codex-marketplace codex plugin remove ida-pro-mcp@mrexodia codex plugin add ida-pro-mcp@mrexodia
## Instalación (Kimi Code)
Para instalar el IDA Pro MCP más reciente en Kimi Code, ejecuta este comando de barra en el chat:```
/plugins install https://github.com/mrexodia/ida-pro-mcp/tree/main
/reload
Esto instala el servidor MCP idalib y la skill idapython. Los plugins se copian a
$KIMI_CODE_HOME/plugins/managed/, por lo que uv debe estar en tu PATH. La primera sesión después de
instalar es más lenta, porque uv resuelve las dependencias antes de que el servidor responda.
Nota: el plugin MCP ya no se recomienda y eventualmente quedará obsoleto. Usa idalib-mcp en su lugar.
Si quieres configurar el servidor MCP manualmente desde la GUI de IDA:```sh pip uninstall ida-pro-mcp pip install https://github.com/mrexodia/ida-pro-mcp/archive/refs/heads/main.zip
Configura los servidores MCP e instala el Plugin de IDA:```
ida-pro-mcp --install
Importante: Asegúrate de reiniciar completamente IDA y tu cliente MCP para que la instalación surta efecto. Algunos clientes (como Claude) se ejecutan en segundo plano y deben cerrarse desde el icono de la bandeja del sistema.
Los LLM son propensos a las alucinaciones y debes ser específico con tus prompts. Para la ingeniería inversa, la conversión entre enteros y bytes es especialmente problemática. A continuación se muestra un ejemplo mínimo de prompt; siéntete libre de iniciar una discusión o abrir un issue si obtienes buenos resultados con un prompt diferente:```md Your task is to analyze a crackme in IDA Pro. You can use the MCP tools to retrieve information. In general use the following strategy:
int_convert MCP tool if needed!¡Este prompt fue solo el primer experimento, comparte si encontraste formas de mejorar el resultado!
Otro prompt de [@can1357](https://github.com/can1357):```md
Your task is to create a complete and comprehensive reverse engineering analysis. Reference AGENTS.md to understand the project goals and ensure the analysis serves our purposes.
Use the following systematic methodology:
1. **Decompilation Analysis**
- Thoroughly inspect the decompiler output
- Add detailed comments documenting your findings
- Focus on understanding the actual functionality and purpose of each component (do not rely on old, incorrect comments)
2. **Improve Readability in the Database**
- Rename variables to sensible, descriptive names
- Correct variable and argument types where necessary (especially pointers and array types)
- Update function names to be descriptive of their actual purpose
3. **Deep Dive When Needed**
- If more details are necessary, examine the disassembly and add comments with findings
- Document any low-level behaviors that aren't clear from the decompilation alone
- Use sub-agents to perform detailed analysis
4. **Important Constraints**
- NEVER convert number bases yourself - use the int_convert MCP tool if needed
- Use MCP tools to retrieve information as necessary
- Derive all conclusions from actual analysis, not assumptions
5. **Documentation**
- Produce comprehensive RE/*.md files with your findings
- Document the steps taken and methodology used
- When asked by the user, ensure accuracy over previous analysis file
- Organize findings in a way that serves the project goals outlined in AGENTS.md or CLAUDE.md
Live stream en el que se discute sobre prompting y se muestra algo de análisis de malware del mundo real:
Los Modelos de Lenguaje Grandes (LLM) son herramientas potentes, pero a veces pueden tener dificultades con cálculos matemáticos complejos o presentar "alucinaciones" (inventar hechos). Asegúrate de indicarle al LLM que use la herramienta MCP int_convert y es posible que también necesites math-mcp para ciertas operaciones.
Otra cosa a tener en cuenta es que los LLM no funcionarán bien con código ofuscado. Antes de intentar usar un LLM para resolver el problema, echa un vistazo al binario y dedica algo de tiempo (automáticamente) a eliminar lo siguiente: