项目简介

MobSF MCP 是一个基于 Node.js 构建的 MCP(Model Context Protocol)服务器实现。它作为 Mobile Security Framework (MobSF) 的适配层,通过标准的 MCP 接口将 MobSF 强大的移动应用(Android, iOS, Windows)安全分析能力暴露给大型语言模型 (LLM) 客户端。开发者可以利用此服务器,在 LLM 应用中集成 MobSF 的自动化安全扫描、报告生成、漏洞查询等功能。

主要功能点

  • 上传文件分析: 允许通过 MCP 接口上传移动应用文件 (APK, IPA, APPX) 到 MobSF 进行安全分析。
  • 获取扫描结果: 支持通过应用的哈希值获取详细的扫描日志和完整的 JSON 格式安全分析报告。
  • 查询报告详情: 可以按需获取 JSON 报告的特定章节内容,或列出报告的所有可用章节名称。
  • 管理扫描记录: 能够检索最近的扫描列表、按条件搜索扫描结果以及删除不再需要的扫描记录。
  • 生成安全评分和报告: 提供获取应用安全记分卡和生成 PDF 格式安全报告的功能。
  • 查看源代码/文件: 允许按需查看分析过程中提取的应用源代码或其他相关文件内容。
  • 任务和对比: 可以查询 MobSF 的扫描任务队列,并比较两个不同扫描结果的差异。
  • 漏洞抑制管理: 提供按规则或文件对分析发现的漏洞进行抑制、列出已抑制项及删除抑制的功能。
  • 获取所有哈希值: 方便地列出 MobSF 中所有已分析应用的 MD5 哈希值。

安装步骤

  1. 确保你已经安装了 Node.js (v14 或更高版本) 和 npm。
  2. 确保你有一个正在运行的 MobSF 实例,并且其 API 可访问。
  3. 使用 npm 全局安装 MobSF MCP 包:
    npm install -g mobsf-mcp

服务器配置 (供 MCP 客户端使用)

MCP 服务器的启动需要 MobSF 的访问地址和 API Key。这些信息需要通过环境变量提供给 MobSF MCP 服务器进程。对于配置 MCP 客户端(如 VSCode 的 cline 扩展)来连接此服务器,你需要提供启动 MobSF MCP 进程所需的命令和参数,以及必要的环境变量。典型的配置信息如下:

  • 服务器名称 (name): 一个标识服务器的名称,例如 "MobSF MCP Server"。
  • 启动命令 (command): 启动 Node.js 可执行文件的路径。例如:'C:\Program Files\nodejs\node.exe' (Windows) 或 'node' (Linux/macOS)。
  • 命令参数 (args): 启动 MobSF MCP 应用程序的参数。通常是应用程序的主入口文件路径,例如:全局安装后可能是 MobSF MCP 命令本身,或者指向安装目录下的入口文件,如 'index.js' (需要根据实际安装路径确定)。注意: 仓库 README 中提供了 'npx mobsf-mcp' 的用法,这实际上是 npm/npx 帮助执行全局安装的命令行工具。在 MCP 客户端配置中,更稳定通常是直接调用 Node.js 执行 MobSF MCP 的主脚本。一个可能的参数是 '$(npm root -g)/mobsf-mcp/build/index.js' (Linux/macOS 全局安装路径示例) 或根据你的 Node.js/npm 环境确定。
  • 环境变量 (env): 需要包含 'MOBSF_URL' (你的 MobSF 实例地址,例如 'http://localhost:8000') 和 'MOBSF_API_KEY' (你的 MobSF API Key)。
  • 传输协议 (transportType): MobSF MCP 服务器使用 'stdio' 协议进行通信。

例如,在某些 MCP 客户端的配置文件中,这可能表现为类似 JSON 结构(仅为说明配置内容,实际配置方式取决于客户端):

{
  "name": "MobSF MCP Server",
  "command": "node", // 或Node.js完整路径
  "args": ["$(npm root -g)/mobsf-mcp/build/index.js"], // 启动脚本路径示例
  "env": {
    "MOBSF_URL": "你的MobSF地址",
    "MOBSF_API_KEY": "你的MobSF API Key"
  },
  "transportType": "stdio"
}

请根据你的实际系统环境、Node.js 安装路径和 MobSF 配置修改上述信息。

基本使用方法

  1. 启动 MobSF 服务器: 确保你的 MobSF 实例正在运行并开放了 API 访问。
  2. 配置环境变量: 在启动 MobSF MCP 服务器的终端会话中,设置 'MOBSF_URL' 和 'MOBSF_API_KEY' 这两个环境变量为你 MobSF 实例的实际地址和 API Key。例如在 PowerShell 中:
    $env:MOBSF_URL="http://localhost:8000"; 
    $env:MOBSF_API_KEY="your_api_key_here";
  3. 启动 MobSF MCP 服务器: 在已配置环境变量的终端中运行安装的 MobSF MCP 命令。例如:
    npx mobsf-mcp
    或者直接使用 Node.js 执行主脚本 (如果 npx 方式不适用,或在 MCP 客户端配置中):
    node $(npm root -g)/mobsf-mcp/build/index.js # 示例路径,请根据实际调整
    服务器启动后,会在标准错误输出 (stderr) 中打印 "MobSF MCP Server running on stdio" 等信息。
  4. 连接 MCP 客户端: 配置你的 MCP 客户端(如支持 MCP 的 IDE 插件或独立应用),使用上面“服务器配置”中描述的信息(启动命令、参数、环境变量、stdio 协议)来启动和连接到 MobSF MCP 服务器进程。连接成功后,客户端即可发现并调用 MobSF MCP 提供的各种工具。

信息

分类

开发者工具