Repolode
bethington

bethington/ghidra-mcp

Servidor MCP que permite a assistentes de IA usar o Ghidra para analisar binários, com mais de 200 ferramentas para descompilar, renomear e anotar.

Estrelas
5,821
Forks
347
Issues abertas
33
Último commit
há 5 dias

O que é?

O GhidraMCP é um servidor MCP que conecta os recursos de engenharia reversa do Ghidra a assistentes de IA e ferramentas de automação. Ele disponibiliza mais de 200 ferramentas para descompilação, grafos de chamadas, referências cruzadas, tipos de dados e structs, análise de strings e imports, além de operações de escrita, como renomear, definir tipos e adicionar comentários. Ele pode ser executado como plugin na interface gráfica do Ghidra ou como servidor headless, adequado para análises com scripts e baseadas em Docker.

Além da análise estática, o projeto oferece emulação P-code de funções individuais, integração com depurador em tempo real baseada no framework TraceRmi do Ghidra e rastreamento de fluxo de dados em P-code a partir de uma variável ou registrador escolhido. A correspondência de funções por hash permite transferir documentação de uma versão do binário para outra. Por padrão, as ferramentas são carregadas sob demanda para não inundar os clientes MCP com o catálogo completo, e a execução de scripts fica desativada, a menos que seja habilitada explicitamente.

O projeto requer Ghidra 12.1.4 e Java 21. A ponte Python pode ser instalada a partir de um wheel de release usando uv ou pip.

Recursos principais

  • 01Disponibiliza mais de 200 ferramentas MCP para descompilação, referências cruzadas e análise de grafos de chamadas.
  • 02Oferece operações de escrita, como renomear, alterar tipos, adicionar comentários e criar structs.
  • 03Funciona como plugin na interface gráfica do Ghidra ou como servidor headless, inclusive com Docker.
  • 04Oferece emulação P-code de funções individuais e rastreamento de fluxo de dados baseado em P-code.
  • 05Integra um depurador em tempo real por meio do framework TraceRmi do Ghidra.
  • 06Transfere a documentação de funções entre versões de binários usando hashes SHA-256 das funções.

Casos de uso

  • Permitir que um assistente de IA analise um binário stripped, nomeando e documentando funções.
  • Anotar em lote um programa grande, mantendo convenções de nomenclatura consistentes entre sessões.
  • Transferir o trabalho de análise de uma build do binário para outra usando correspondência de funções por hash.
  • Executar análises automatizadas com Ghidra em pipelines de CI ou Docker, sem interface gráfica.

Início rápido

  1. 1

    Instale os pré-requisitos: Ghidra 12.1.4, Java 21 e uv

  2. 2

    Instale o ZIP da extensão GhidraMCP no Ghidra em File > Install Extensions e, em seguida, reinicie o Ghidra

  3. 3

    Instale a ponte MCP a partir do wheel da versão usando uv

    uv tool install https://github.com/bethington/ghidra-mcp/releases/download/v7.0.0/ghidra_mcp_bridge-7.0.0-py3-none-any.whl
  4. 4

    Conecte seu cliente MCP à ponte usando o caminho absoluto dela

Antes de usar

  • A extensão do Ghidra só é carregada na versão exata do Ghidra para a qual foi compilada: 12.1.4.
  • É necessário ter Java 21 e uma instância do Ghidra em execução com o plugin GhidraMCP habilitado.
  • main e as versões candidatas são beta, e dev é experimental; portanto, as interfaces das ferramentas podem mudar.
  • Os recursos de depuração ao vivo só funcionam pelo plugin da GUI do Ghidra.

Tópicos

Perguntas frequentes

O que é ghidra-mcp?
Servidor MCP que permite a assistentes de IA usar o Ghidra para analisar binários, com mais de 200 ferramentas para descompilar, renomear e anotar. O GhidraMCP é um servidor MCP que conecta os recursos de engenharia reversa do Ghidra a assistentes de IA e ferramentas de automação. Ele disponibiliza mais de 200 ferramentas para descompilação, grafos de chamadas, referências cruzadas, tipos de dados e structs, análise de strings e imports, além de operações de escrita, como renomear, definir tipos e adicionar comentários. Ele pode ser executado como plugin na interface gráfica do Ghidra ou como servidor headless, adequado para análises com scripts e baseadas em Docker.
ghidra-mcp é gratuito? Qual é a licença?
ghidra-mcp é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
ghidra-mcp ainda é mantido?
Manutenção ativa. O último commit de ghidra-mcp foi em 16 de out. de 2026.
Para que posso usar ghidra-mcp?
Permitir que um assistente de IA analise um binário stripped, nomeando e documentando funções. Anotar em lote um programa grande, mantendo convenções de nomenclatura consistentes entre sessões. Transferir o trabalho de análise de uma build do binário para outra usando correspondência de funções por hash. Executar análises automatizadas com Ghidra em pipelines de CI ou Docker, sem interface gráfica.
Como instalar ghidra-mcp?
Instale os pré-requisitos: Ghidra 12.1.4, Java 21 e uv Instale o ZIP da extensão GhidraMCP no Ghidra em File > Install Extensions e, em seguida, reinicie o Ghidra Instale a ponte MCP a partir do wheel da versão usando uv: uv tool install https://github.com/bethington/ghidra-mcp/releases/download/v7.0.0/ghidra_mcp_bridge-7.0.0-py3-none-any.whl Conecte seu cliente MCP à ponte usando o caminho absoluto dela
Onde consigo ghidra-mcp?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/bethington/ghidra-mcp

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados