EMBA-MCP

Esta ferramenta cria um servidor MCP para conectar fluxos de trabalho de IA com a análise de segurança do EMBA.

Documentação

🧠 EMBA-MCP

Servidor Model Context Protocol (MCP) para análise de firmware EMBA. O EMBA-MCP expõe os resultados da análise de firmware do EMBA como ferramentas estruturadas via MCP, permitindo que LLMs (Claude, ChatGPT, etc.) consultem, raciocinem e correlacionem descobertas de segurança de firmware programaticamente. Ele analisa, normaliza e raciocina sobre a saída do EMBA.

✨ Recursos

📦 Analisar resultados do EMBA (kernel, serviços, credenciais, criptografia, SBOM, binários, PHP, etc.)

🔍 Análise ciente do sistema de arquivos (SUID, segredos, criptografia fraca, serviços)

🚨 Mecanismo de correlação de alto risco (descobertas multi-sinal)

🧭 Mecanismo de explicação de caminho de ataque

🧠 Ferramentas nativas do MCP (integram-se ao Claude / clientes MCP)

🔁 Funciona com a saída existente do EMBA (sem necessidade de nova varredura)

📋 Requisitos Sistema Linux (recomendado: Ubuntu / Kali) Python 3.10+ Ferramenta EMBA

🛠️ Instalação

git clone https://github.com/0xbuz3R/EMBA-MCP.git
cd EMBA-MCP

Set Up a Virtual Environment (Recommended)
Bash
python -m venv venv
# On Windows:
.\venv\Scripts\activate
# On macOS:
source venv/bin/activate

3. Install Dependencies
Bash
pip install -e .


Certifique-se de que o EMBA está instalado na sua máquina local: https://github.com/e-m-b-a/emba

🧩 Configuração do MCP no Claude Desktop (Obrigatório)

Para usar o EMBA-MCP no Claude Desktop, você deve registrar o servidor MCP no arquivo de configuração do Claude. Esta etapa é obrigatória e é o problema de configuração mais comum.

📍 1. Localize o claude_config_desktop.json

O Claude Desktop armazena a configuração do MCP no seguinte local:

Linux

~/.config/claude/claude_config_desktop.json

Se o arquivo não existir, crie-o manualmente.

📍 2. Adicione a configuração do servidor EMBA-MCP

Adicione o seguinte JSON na seção mcpServers.

⚠️ NÃO copie caminhos cegamente — substitua-os por caminhos válidos no seu sistema.

{
  "mcpServers": {
    "emba": {
      "command": "<PATH_TO_PYTHON>",
      "args": ["-m", "emba_mcp.mcp_server"],
      "env": {
        "EMBA_HOME": "<PATH_TO_EMBA_DIRECTORY>"
      }
    }
  }
}

📌 3. Como preencher os caminhos corretamente

🔹 PATH_TO_PYTHON

Este deve ser o interpretador Python onde o EMBA-MCP está instalado. Exemplos:

which python
which python3

Valores típicos:

/usr/bin/python3 /home/user/.venv/bin/python /home/user/.local/bin/python

🔹 PATH_TO_EMBA_DIRECTORY

Este deve ser o diretório raiz do EMBA, onde o executável emba existe.

Exemplo:

ls <EMBA_HOME>/emba

Exemplo de valor:

/home/user/tools/emba

📍 4. Reinicie o Claude Desktop

Depois de salvar o arquivo:

  1. Feche completamente o Claude Desktop
  2. Reabra-o

O Claude agora carregará automaticamente o servidor MCP do EMBA

✅ 5. Verifique se o MCP está carregado

Dentro do Claude, tente:

Listar varreduras do EMBA ou Executar varredura do EMBA no firmware

Se configurado corretamente, o Claude responderá sem erros de MCP.

📽️ Demonstração

demo

🤝 Contribuição e Feedback

Ainda estou trabalhando em alguns outros itens de dados para integrar; atualizarei na próxima versão.

Enquanto isso, experimente e forneça feedback sobre como melhorar! Você pode deixar suas sugestões em nosso https://github.com/0xbuz3R/EMBA-MCP/issues/1