Communitygithub.com

binary-ninja-reverse

Utilizado para análisis binario autorizado en Binary Ninja, incluyendo inspección HLIL/MLIL/LLIL, cadenas/importaciones/exportaciones, referencias cruzadas, tipos, revisión de parches, automatización de la API de Python e integración opcional con Binary Ninja MCP o HTTP localhost.

¿Qué es binary-ninja-reverse?

Esta habilidad permite a agentes de IA realizar tareas de ingeniería inversa sobre binarios utilizando la herramienta comercial Binary Ninja (Vector 35). Soporta tres modos de integración: la API de Python y GUI de Binary Ninja para análisis interactivo directo, el puente comunitario MCP (basado en fosdickio/binary_ninja_mcp) para comunicaciones estructuradas, y como alternativa recurre a Ghidra, IDA o radare2 cuando Binary Ninja no está disponible. El flujo de trabajo guía al agente a enumerar binarios abiertos, capturar metadatos (puntos de entrada, importaciones, exportaciones, cadenas), utilizar los distintos niveles de IL (HLIL para lógica legible, MLIL SSA para flujo de datos, LLIL/desensamblado cuando es necesario), aplicar nombres, comentarios y tipos de forma incremental, y realizar parches solo bajo petición explícita. También enfatiza la importancia de verificar conclusiones de alto impacto con una segunda fuente de evidencia o desensamblador alternativo. Es útil para desarrolladores y analistas de seguridad que necesitan un análisis binario automatizado y reproducible, manteniendo la cadena Evidencia → Hallazgo → Ruta.

Compatible con~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/zhaoxuya520/reverse-skill/tree/main/skills/binary-ninja-reverse

Preguntar en tu IA favorita

Abre un nuevo chat con esta habilidad de agente ya precargada.

Documentación

Ingeniería inversa con Binary Ninja

Utiliza Binary Ninja cuando el usuario lo seleccione explícitamente, cuando sus IL ayudan materialmente al análisis de flujo de datos, o cuando los resultados de IDA/Ghidra/radare2 necesiten una verificación independiente.

Inicio seguro

  1. Confirma que el alcance del caso del repositorio esté listo antes de actuar sobre un objetivo.
  2. Revisa skills/tool-index.md para binaryninja; Binary Ninja es software comercial y debe instalarse manualmente con una licencia válida de Vector 35.
  3. Trabaja sobre una copia al aplicar parches o guardar cambios en la base de datos.
  4. Registra importaciones/exportaciones, puntos de entrada, arquitectura y hash del archivo antes de promover hallazgos.

Elige la integración

  • GUI o API de Python: preferida cuando Binary Ninja ya está abierto o el usuario desea análisis interactivo directo.
  • Puente comunitario MCP: úsalo solo cuando se solicite explícitamente y después de revisar el límite del plugin de terceros. Mantén el listener HTTP de Binary Ninja en 127.0.0.1:9009; no habilites la exposición de red por defecto.
  • Alternativa: usa ghidra-reverse, ida-reverse o radare2 cuando Binary Ninja no esté disponible o su licencia/API no pueda abrir el objetivo.

La integración comunitaria revisada es fosdickio/binary_ninja_mcp, GPL-3.0, metadatos de plugin versión 1.1.0, build mínimo de Binary Ninja 4000. El repositorio no es un componente oficial de Vector 35. Esta habilidad fue verificada contra el commit 8c5134ee46e2bf44f9a4d846bd971c3e39b3e306 el 2026-09-03.

Instala el lado de Binary Ninja a través de su Administrador de Plugins o desde la fuente revisada. Para el puente MCP stdio, fija la versión publicada del puente en lugar de usar un paquete sin restricciones:

npx -y [email protected] --host 127.0.0.1 --port 9009

Registra ese comando solo en el cliente MCP que seleccionó el usuario. El puente no está listo hasta que Binary Ninja esté en ejecución, un binario esté abierto y el endpoint del plugin localhost responda.

Flujo de trabajo de análisis

  1. Enumera los binarios abiertos y selecciona la vista deseada.
  2. Captura el estado del binario, puntos de entrada, segmentos, importaciones, exportaciones y cadenas representativas.
  3. Sigue los sitios de llamada y las referencias cruzadas antes de interpretar una función de forma aislada.
  4. Usa HLIL para lógica legible, MLIL SSA para flujo de datos y LLIL/desensamblado cuando la elevación pierda comportamiento a nivel de instrucción.
  5. Aplica nombres, comentarios y tipos de forma incremental; mantén las direcciones originales como evidencia.
  6. Trata los parches de bytes, cambios de prototipos y escrituras de archivos guardados como mutaciones. Realízalos solo cuando se soliciten y conserva el artefacto original.
  7. Verifica conclusiones de alto impacto con una segunda fuente de evidencia u otro desensamblador.

Las familias de capacidades MCP útiles incluyen: selección de vista/binario, list_imports, list_exports, list_strings, decompile_function, get_il, llamantes/llamados, referencias cruzadas, tipos, comentarios, renombres y parches de bytes. Descubre la lista de herramientas en vivo en lugar de asumir que cada función upstream está presente.

Salida

Informa direcciones concretas, nombres de función, nivel de IL, cadenas/importaciones de apoyo, confianza y pasos de reproducción. Mantén la cadena Evidencia → Hallazgo → Ruta que utiliza el resto del repositorio.

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

api-security

Use for authorized security assessment of REST, GraphQL, WebSocket, or SOAP APIs, including discovery, authentication, authorization, rate-limit, and CI/CD testing.

apk-reverse

在 CLI 环境下做 Android APK 逆向时使用。适用于 APK 解包、Java 反编译、smali 修改、重打包、Frida 动态 Hook,以及按需切换到 so/native 分析。优先使用本机已安装的 jadx、apktool、frida、adb、ida-reverse、radare2。

attack-chain

Use for authorized multi-stage attack-path planning and orchestration when a task spans reconnaissance, initial access, privilege escalation, lateral movement, or impact assessment. Route single-stage tasks directly to their specialist skill.

binary-diff

|

browser-automation

|

browser-extension-reverse

Use for authorized reverse engineering of browser extensions (Chrome/Firefox) including manifest analysis, background workers, and extension-based credential or traffic logic recovery.

case-review

Reviews a reverse-skill case package for scope readiness, Evidence to Finding to Path traceability, work item coverage, timeline references, and optional artifact hash integrity before report handoff.

cloud-k8s

Use for authorized cloud, container, and Kubernetes security assessment including metadata SSRF, IAM misconfig, container escape paths, and cluster RBAC review.

code-audit

Use for authorized source-code security review and SAST workflows including Semgrep, CodeQL patterns, dangerous API hunting, and fix verification.

ctf-sandbox

Thin PRIMARY for CTF / AWD / 靶场 multi-type orchestration. Hands off to the sidecar CTF-Sandbox-Orchestrator. Use when the user says CTF, AWD, 靶场, or 比赛题 and no more specific pwn/APK/IDA route already won.

database-security

Use for authorized database security assessment covering PostgreSQL/MySQL/MSSQL/Mongo/Redis exposure, authz, UDF/command paths, and misconfiguration review.

diagram-generator

generate, refine, validate, and render diagrams from natural language, notes, code snippets, schemas, tables, or existing diagram source. use for flowcharts, swimlanes, sequence diagrams, state diagrams, er diagrams, class diagrams, architecture/c4-style diagrams, dependency graphs, gantt charts, mind maps, user journeys, sankey-style flows, org charts, network graphs, and other visual models. supports mermaid by default, graphviz dot for complex graph layout, plantuml for uml-heavy engineering diagrams, and svg output when direct markup is more reliable.

digital-forensics

Use for authorized digital forensics including memory dumps, disk timelines, PCAP investigation, artifact triage, and IR evidence preservation.

docs-generator

|

dotnet-reverse

.NET / C# 二进制逆向。当目标是 .NET assembly(PE 头含 CLR、.exe/.dll 托管程序)、C# 编译产物(含 NativeAOT)、红队 Sharp* 工具(Rubeus / SharpHound / SharpHound 等)、.NET 混淆程序(ConfuserEx / SmartAssembly / Babel / Eazfuscator)、.NET loader / info-stealer / 套壳 malware 时使用。优先用 dnSpyEx + de4dot,需要 AI 直接操作时联动 dnSpy MCP。不用于纯 native 二进制(走 reverse-engineering / ida-reverse)。

edr-bypass-re

|

email-security

Use for authorized email security review including phishing analysis, header authentication (SPF/DKIM/DMARC), BEC patterns, and mailbox token abuse research.

firmware-pentest

|

ghidra-reverse

Use for free/open reverse engineering with Ghidra (headless or GUI), including decompile, cross-refs, and optional Ghidra MCP workflows when IDA is unavailable.

go-rust-reverse

Use for reverse engineering stripped Go and Rust binaries including runtime recognition, pclntab/moduel data recovery, panic strings, and idiomatic decompilation recovery.

Skills relacionados