动态检测工具协议

Frida MCP是一个为Frida动态检测工具包实现的模型上下文协议(MCP),使AI系统能够通过Frida的动态检测能力与移动和桌面应用程序交互。

  • by dnakov
  • Python
  • 本地部署
  • 461 星标
  • 更新于
在 GitHub 查看 dnakov/frida-mcp

使用说明

弗里达MCP

Frida动态仪器工具包的模型上下文协议(MCP)实现。

概述

该软件包为Frida提供了一个符合MCP的服务器,使AI系统能够通过Frida的动态仪器功能与移动和桌面应用程序进行交互。它使用官方 MCP Python SDK 以实现与AI应用程序的无缝集成。

演示

https://github.com/user-attachments/assets/5dc0e8f5-5011-4cf2-be77-6a77ec960501

特性

  • 使用官方MCP Python SDK构建
  • 通过MCP公开的全面Frida工具:
    • 进程管理(列表、附加、生成、恢复、终止)
    • 设备管理(USB、远程设备)
    • 实时执行的交互式JavaScript REPL
    • 带有进度跟踪的脚本注入
    • 过程和设备监控
  • 为模型提供Frida数据的资源
  • 指导Frida分析工作流程的提示
  • 长期运行操作的进度跟踪
  • 完全支持所有MCP传输方法

安装

先决条件

  • Python 3.8或更高版本
  • pip包管理器
  • Frida 16.0.0或更高版本

快速安装

pip install frida-mcp

开发安装

# Clone the repository
git clone https://github.com/yourusername/frida-mcp.git
cd frida-mcp

# Install in development mode with extra tools
pip install -e ".[dev]"

Claude桌面集成

要在Claude Desktop中使用Frida MCP,您需要更新您的Claude配置文件:

  1. 找到您的Claude Desktop配置文件:

    • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
    • 窗户: %APPDATA%\Claude\claude_desktop_config.json
    • Linux: ~/.config/Claude/claude_desktop_config.json
  2. 将以下内容添加到配置文件中:

{
  "mcpServers": {
    "frida": {
      "command": "frida-mcp"
    }
  }
}

用法

安装后,您可以直接从Claude Desktop使用Frida MCP。服务器提供以下功能:

流程管理

  • 列出所有正在运行的进程
  • 附加到特定流程
  • 生成新流程
  • 恢复暂停的进程
  • 终止进程

设备管理

  • 列出所有连接的设备(USB、远程)
  • 获取设备信息
  • 连接到特定设备

交互式JavaScript REPL

  • 使用流程创建交互式会话
  • 实时执行JavaScript代码
  • 监控进程状态和内存
  • 钩子函数和拦截调用
  • 捕获console.log输出
  • 优雅地处理错误和异常

脚本注入

  • 注入自定义JavaScript脚本
  • 跟踪注射进度
  • 处理脚本错误和异常

资源

  • 获取Frida版本信息
  • 以人类可读格式访问进程列表
  • 以人类可读格式访问设备列表

发展

# Clone repository
git clone https://github.com/yourusername/frida-mcp.git
cd frida-mcp

# Install development dependencies
pip install -e ".[dev]"

许可证

麻省理工学院