固件分析服务

EMBA-MCP是一个将EMBA固件分析结果通过MCP协议结构化暴露的服务,允许LLMs(如Claude、ChatGPT等)以编程方式查询、推理和关联固件安全发现。

  • by 0xbuz3R
  • Python
  • 本地部署
  • 6 星标
  • 更新于
在 GitHub 查看 0xbuz3R/EMBA-MCP

使用说明

🧠 EMBA-MCP

用于EMBA固件分析的模型上下文协议(MCP)服务器。EMBA-MCP通过MCP将EMBA固件分析结果作为结构化工具公开,允许LLM(Claude、ChatGPT等)以编程方式查询、推理和关联固件安全发现。 它对EMBA输出进行解析、规范化和推理。

✨ 特性

📦 解析EMBA结果(内核、服务、凭据、加密、SBOM、二进制文件、PHP等)

🔍 文件系统感知分析(SUID、机密、弱加密、服务)

🚨 高风险相关引擎(多信号发现)

🧭 攻击路径解释引擎

🧠 MCP原生工具(插入Claude/MCP客户端)

🔁 与现有EMBA输出兼容(无需重新扫描)

📋 需求 系统 Linux(推荐:Ubuntu/Kali) Python 3.10+ EMBA工具

🛠️ 安装

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 .


确保您的本地计算机上安装了EMBA: https://github.com/e-m-b-a/emba

🧩 Claude桌面MCP配置(必需)

要在Claude Desktop中使用EMBA-MCP,您必须在Claude的配置文件中注册MCP服务器。 此步骤是强制性的,是最常见的设置问题。

📍 1.找到claude_config_desktop.json

Claude Desktop将MCP配置存储在以下位置:

Linux

~/.config/claude/claude_configure_desktop.json

如果文件不存在,请手动创建。

📍 2.添加EMBA-MCP服务器配置

在mcpServers部分添加以下JSON。

⚠️ 不要盲目复制路径——用系统上有效的路径替换它们。

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

📌 3.如何正确填写路径

🔹 PATH_TO_PYTHON

这必须是安装了EMBA-MCP的Python解释器。 示例:

which python
which python3

典型值:

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

🔹 PATH_TO_EMBA_DIRECTORY

这必须是EMBA的根目录,EMBA可执行文件存在于其中。

例子:

ls<EMBA_HOME>/EMBA

示例值:

/主页/用户/工具/emba

📍 4.重新启动克劳德桌面

保存文件后:

  1. 完全关闭克劳德桌面
  2. 重新打开它

Claude现在将自动加载EMBA MCP服务器

✅ 5.验证MCP是否已加载

在克劳德内部,尝试:

列出EMBA扫描 或 在固件上运行EMBA扫描

如果配置正确,Claude将无MCP错误地响应。

📽️ 演示

🤝 贡献与反馈

我仍在处理其他几个数据项以进行集成;我将在下一个版本中更新。

同时,请尝试一下,并就如何改进提供反馈!您可以在我们的https://github.com/0xbuz3R/EMBA-MCP/issues/1