Servidor MCP que disponibiliza funções de engenharia reversa do Ghidra para que clientes LLM possam descompilar e analisar binários.
symgraph/GhidrAssist
Uma extensão para Ghidra baseada em LLM que adiciona explicação de código, chat e análise agêntica com IA aos fluxos de trabalho de engenharia reversa.
- Estrelas
- 767
- Forks
- 77
- Issues abertas
- 4
- Último commit
- há 5 dias
O que é?
GhidrAssist é um plugin Java para Ghidra que conecta profissionais de engenharia reversa a modelos de linguagem de grande porte. Ele funciona com qualquer API compatível com OpenAI v1, incluindo servidores locais como Ollama e LM Studio e provedores na nuvem como OpenAI, Anthropic e Azure. Os usuários podem explicar funções em código de disassembly ou pseudo-C decompilado, manter conversas com várias interações e histórico salvo, além de executar consultas personalizadas diretamente com contexto da função.
Além de prompts básicos, o plugin cria um grafo de conhecimento semântico do binário nos níveis de instrução, bloco, função, módulo e binário. Ele armazena resumos gerados por LLM em SQLite, detecta comunidades de funções com o algoritmo Leiden e identifica o uso de APIs de rede, I/O de arquivos e criptografia, atribuindo níveis de risco. O modo de agente ReAct pode planejar etapas de investigação, chamar ferramentas e sintetizar descobertas. O suporte a MCP permite trabalhar com o servidor GhidrAssistMCP e suas ferramentas específicas para Ghidra.
O projeto é voltado a profissionais de engenharia reversa e pesquisadores de segurança que querem contar com a ajuda de LLMs dentro do Ghidra. Requer o Ghidra 11.0 ou posterior.
Recursos principais
- 01Explica funções em código de disassembly e pseudo-C decompilado.
- 02Oferece chat com várias interações e histórico persistente.
- 03Cria um grafo de conhecimento semântico hierárquico com armazenamento em SQLite.
- 04Identifica o uso de APIs de rede, I/O de arquivos e criptografia, atribuindo níveis de risco.
- 05Executa um agente ReAct que planeja e realiza etapas de investigação.
- 06Conecta-se a servidores MCP por SSE para usar ferramentas específicas do Ghidra.
Casos de uso
- Obter explicações rápidas de funções desconhecidas durante a triagem de binários.
- Verificar um binário em busca de uso de APIs de rede, arquivos ou criptografia, com rótulos de risco.
- Executar um LLM local em binários proprietários sem enviar o código a um serviço na nuvem.
- Fazer perguntas com várias etapas, como rastrear o fluxo de dados entre funções.
Início rápido
- 1
Copie o ZIP da versão binária para o diretório Extensions do Ghidra (se necessário).
- 2
No Ghidra, acesse File > Install Extension e ative o GhidrAssist.
- 3
Abra o CodeBrowser, ative o GhidrAssist e configure o host da API e a chave da API nas configurações.
Antes de usar
- Requer uma API de LLM compatível com OpenAI v1, que pode exigir uma chave de API paga ou um servidor de modelos local.
- Requer Ghidra 11.0 ou posterior.
- O modo Agentic e Actions dependem de modelos com suporte confiável a chamadas de ferramentas.
Tópicos
Perguntas frequentes
- O que é GhidrAssist?
- Uma extensão para Ghidra baseada em LLM que adiciona explicação de código, chat e análise agêntica com IA aos fluxos de trabalho de engenharia reversa. GhidrAssist é um plugin Java para Ghidra que conecta profissionais de engenharia reversa a modelos de linguagem de grande porte. Ele funciona com qualquer API compatível com OpenAI v1, incluindo servidores locais como Ollama e LM Studio e provedores na nuvem como OpenAI, Anthropic e Azure. Os usuários podem explicar funções em código de disassembly ou pseudo-C decompilado, manter conversas com várias interações e histórico salvo, além de executar consultas personalizadas diretamente com contexto da função.
- GhidrAssist é gratuito? Qual é a licença?
- GhidrAssist é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
- GhidrAssist ainda é mantido?
- Manutenção ativa. O último commit de GhidrAssist foi em 16 de out. de 2026.
- Para que posso usar GhidrAssist?
- Obter explicações rápidas de funções desconhecidas durante a triagem de binários. Verificar um binário em busca de uso de APIs de rede, arquivos ou criptografia, com rótulos de risco. Executar um LLM local em binários proprietários sem enviar o código a um serviço na nuvem. Fazer perguntas com várias etapas, como rastrear o fluxo de dados entre funções.
- Como instalar GhidrAssist?
- Copie o ZIP da versão binária para o diretório Extensions do Ghidra (se necessário). No Ghidra, acesse File > Install Extension e ative o GhidrAssist. Abra o CodeBrowser, ative o GhidrAssist e configure o host da API e a chave da API nas configurações.
- Onde consigo GhidrAssist?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/symgraph/GhidrAssist
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Servidor MCP e CLI que permitem a agentes de IA fazer engenharia reversa de binários nativos, apps Electron, assemblies .NET e sites.
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.
Jan é um app de desktop open source para baixar e executar LLMs localmente, com uma interface semelhante à do ChatGPT e opção de conexão a modelos na nuvem.
Um mecanismo TypeScript que executa inferência de LLM inteiramente no navegador com WebGPU e oferece uma API compatível com a OpenAI.
Uma interface de chat em SvelteKit para LLMs, compatível com qualquer API compatível com OpenAI e baseada no código do HuggingChat.