项目简介

PCILeech MCP服务器是一个基于Model Context Protocol的C++后端,专门用于通过PCILeech硬件设备进行直接内存访问(DMA)。它允许像Claude这样的AI客户端通过PCIe接口直接读取和写入目标系统的物理内存。

主要功能

  • 内存读写工具:支持读取和写入物理内存及进程虚拟内存
  • 系统信息查询:获取目标系统和PCILeech设备状态
  • 内存探测:扫描可读写的内存区域
  • 内存搜索与补丁:在内存中查找特定模式或应用补丁
  • 进程管理:枚举目标系统上的运行进程
  • 地址转换:物理地址与虚拟地址之间的相互转换
  • 内核模块管理:加载和执行内核脚本
  • 性能基准测试:测试内存读写速度
  • FPGA配置:读写FPGA设备的PCIe配置空间
  • TLP通信:发送和接收PCIe TLP数据包

安装步骤

  1. 克隆仓库

    git clone https://github.com/texas1337/pcileech-mcp-server.git
  2. 编译项目: 使用Visual Studio打开Pcileech.sln文件,构建Release版本

  3. 硬件准备

    • 需要PCILeech兼容的FPGA硬件设备
    • 安装相应的Windows驱动
  4. 配置设置: 编辑config.json文件,配置PCILeech设备和服务器参数

服务器配置

在MCP客户端中配置以下信息来连接服务器:

{
  "mcpServers": {
    "pcileech": {
      "command": "pcileech-mcp-server.exe",
      "args": []
    }
  }
}

配置参数说明

  • 'command': 启动PCILeech MCP服务器的可执行文件路径
  • 'args': 启动参数(根据实际需要配置)

基本使用方法

  1. 运行编译后的可执行文件
  2. 在AI工具中配置为stdio服务器
  3. 连接成功后,AI客户端可以通过MCP协议调用各种内存操作工具

支持的操作示例

  • 读取指定地址的内存内容
  • 以多种格式显示内存数据(十六进制转储、ASCII、字节数组等)
  1. 进行系统信息查询和内存探测
  2. 执行内核脚本和性能测试

信息

分类

桌面与硬件