团队协同逆向工程Ghidra MCP 集成Ghidra Server的版本控制与多用户协作【免费下载链接】ghidra-mcpGhidra MCP Server — 200 MCP tools for AI-powered reverse engineering. GUI plugin headless server, lazy tool loading, convention enforcement, batch operations, Ghidra Server integration, and Docker deployment.项目地址: https://gitcode.com/gh_mirrors/ghi/ghidra-mcpGhidra MCP Serverghidra-mcp是一款开源的 MCP 协议服务端用 253 个 MCP 工具把 Ghidra 逆向工程能力接入 AI 工具与自动化框架并完整支持 Ghidra Server 集成——共享仓库、版本控制、签入/签出checkout/checkin工作流与多用户协作。本文将带你理解它如何把单人本地分析升级为团队中央仓库协作。为什么逆向工程需要版本控制逆向分析产生的函数重命名、结构体定义、Plate 注释都是有分析语义的资产。多人协作时最典型的痛点场景没有版本控制时Ghidra Server Ghidra MCP两人分析同一二进制各自拷贝结果无法合并中央仓库签出→修改→签入冲突由 Ghidra 检出锁拦截分析成果沉淀散落在个人项目里人员流动即丢失每个文件保留完整版本历史可追溯AI 自动化参与AI 结果无法安全入库AI 通过 MCP 工具直接走签入/签出流程权限管理无按仓库/用户设置读写权限Ghidra Server 本质上是一个带版本历史的共享项目仓库文件签入checkin生成新版本签出checkout获得独占写锁——与 Git 的心智模型高度相似但对二进制分析数据.gpr 项目文件做了原生支持。Ghidra MCP 的价值在于把这些原本只能在 Ghidra 图形界面里点的操作全部暴露为MCP 工具AI 助手和脚本可以完成连接服务器 → 建仓库 → 签入 → 查历史的完整闭环。核心协作工具一览MCP 版本控制工具组Ghidra MCP 提供了专门的Ghidra Server Version Control工具组GUI 插件与无头服务端均支持端点定义可在 tests/endpoints.json 中查阅。核心工具如下工具名作用典型用途server_connect报告/建立与 Ghidra Server 的连接协作会话第一步server_repositories列出服务器上的所有仓库发现团队项目server_repository_create创建新仓库新项目初始化server_repository_files列出仓库目录下的文件浏览团队资产server_version_control_add将文件纳入版本控制首次入库带注释server_version_control_checkout签出文件获得写锁修改前必做server_version_control_checkin签入文件生成新版本保存分析成果server_version_control_undo_checkout取消签出放弃修改server_version_history查看文件版本历史审计/回溯server_checkouts列出目录中所有被签出的文件查看谁占用了哪些文件server_admin_users列出服务器所有用户团队管理server_admin_set_permissions设置用户对仓库的权限权限管控server_admin_terminate_checkout强制终止某文件的签出处理僵尸锁checkin_program把打开的程序签入共享服务器仅无头服务端CI/CD 自动入库团队协作的完整工作流只需四步server_connect连接 →server_version_control_checkout签出 → 用rename_function、set_comment、set_function_prototype等 253 个工具做分析 →server_version_control_checkin签入。每个签入可附带comment注释天然形成可读的版本记录。一键连接Ghidra Server 凭据自动认证团队环境里连接共享服务器需要用户名密码。Ghidra MCP 把凭据解析做成了免弹窗的自动化流程解析顺序取第一个非空值GHIDRA_SERVER_PASSWORD环境变量或 Ghidra 安装目录/主目录下的.env文件~/.ghidra-cred单行密码文件ghidra安装目录/.ghidra-cred用户名类似地通过GHIDRA_SERVER_USER环境变量解析找不到密码时Ghidra 会回退到正常的 GUI 密码框。无头服务端Headless Server通过环境变量驱动连接配置默认值为localhost:13100环境变量含义GHIDRA_SERVER_HOST服务器主机名默认localhostGHIDRA_SERVER_PORT服务器端口默认13100GHIDRA_SERVER_USER服务账号用户名GHIDRA_SERVER_PASSWORD服务账号密码连接与认证逻辑集中在 GhidraServerManager.java它同时注册了自定义认证器 GhidraMCPAuthenticator.java保证无头环境不弹 GUI 对话框。⚠️版本兼容提示Ghidra 12.1.3 客户端要求 Ghidra Server 为 12.1、12.0.5 或更新的兼容版本。团队升级客户端前请先升级服务器端。无头服务端与 Docker把协作搬进 CI/CD团队级自动化如每晚批量分析新样本并签入通常用无头模式。Ghidra MCP 提供 Docker 部署方案ghidra-mcp容器无头 REST API 服务端口8089ghidra-mcp-bridge容器MCP 桥接streamable-http端口8081Docker 栈强制要求GHIDRA_MCP_AUTH_TOKEN——服务端绑定非回环地址而未配置令牌时会直接拒绝启动。这是因为 API 暴露了文件导入、项目变更等写操作令牌Bearer 认证是对外暴露的安全底线。部署细节见 docker/README.md 与 docker-compose.yml。多用户规模化场景可使用 docker-compose.multi.yml 启动多实例 nginx 负载均衡。无头服务端的项目生命周期工具create_project、load_program、checkin_program、archive_project等让导入样本 → 自动分析 → 签入共享仓库可以完全脚本化无需人工干预。多用户协作的最佳实践清单一人一账号用server_admin_users核对成员避免共用服务账号导致审计断链先签出后修改养成 checkout → 分析 → checkin 的习惯用server_checkouts随时查看谁锁了哪个文件处理僵尸锁成员离职或异常断开遗留的签出管理员可用server_admin_terminate_checkout强制释放签入必写注释checkin的comment参数写清分析了什么配合server_version_history形成可审计轨迹权限最小化用server_admin_set_permissions按仓库授权只读成员只给读权限AI 协作设防对外暴露 MCP 服务端时务必配置GHIDRA_MCP_AUTH_TOKEN见 SecurityConfig.java多程序共享服务端时建议开启严格程序路由GHIDRA_MCP_REQUIRE_PROGRAM_SELECTORS1防止 AI 误改错误二进制常见问题快速排查Q连接 Ghidra Server 时反复弹出密码框确认按上述顺序配置了GHIDRA_SERVER_PASSWORD或~/.ghidra-cred无头模式还需同时设置GHIDRA_SERVER_USER。Qcheckin_program工具调用返回 404该工具仅在无头服务端headless only提供。GUI 插件场景请改用server_version_control_checkin。Q客户端连不上服务器报版本错误检查服务器端 Ghidra Server 版本是否 ≥12.0.5相对 12.1 客户端。总结Ghidra MCP 把 Ghidra Server 的版本控制能力完整搬进了 AI 可编程的 MCP 工具层server_connect到server_version_history共十余个协作工具加上环境变量驱动的免弹窗认证、无头服务端与 Docker 强制令牌部署让团队协同逆向工程从口号变成可落地的日常流程——AI 负责分析速度Ghidra Server 负责成果沉淀团队各取所需。延伸阅读docs/project-management/ 下的项目治理文档以及 ghidra_scripts/ 中的批量自动化脚本如Project_CheckInAll.java。【免费下载链接】ghidra-mcpGhidra MCP Server — 200 MCP tools for AI-powered reverse engineering. GUI plugin headless server, lazy tool loading, convention enforcement, batch operations, Ghidra Server integration, and Docker deployment.项目地址: https://gitcode.com/gh_mirrors/ghi/ghidra-mcp创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
企业数字化 ERP 产品动态
相关推荐
开源本地化AI代码评审工具open-code-review实战指南 1. 项目概述:这不是又一个“AI写代码”玩具,而是一套可嵌入日常开发流水线的开源代码评审协作者“open-code-review”这个名字乍看平平无奇,甚至有点拗口——它既不像“Copilot”那样直击眼球,也不像“Cursor”那样自带产品感。但… · 2026/9/26 5:28:57
CTF Agent调优实战:Claude/Codex/Cursor协同架构设计 1. CTF Agent不是“AI答题器”,而是对抗性环境下的智能协作者CTF Agent这个概念最近在安全圈和AI工程圈同时升温,但很多人一看到“Agent”就下意识联想到“自动解题机器人”——这恰恰是调优失败的第一块绊脚石。我去年带三支高校战队打DEF CON Quals时&… · 2026/9/26 5:28:51
AI应用成本失控?Jev与TaoToken侧记录工具实现Token精确计量与账单治理 做AI应用做到第三年,我最大的一个感受是:模型能力已经不是瓶颈,账单才是。月初还在夸某个Agent效果惊艳,月底一拉用量,发现光Token费用就把利润吃掉一大半。今天想聊的这个项目,圈子里最近讨论热度很高——… · 2026/9/26 5:28:51
PubMed打不开、重定向、下载失败?从浏览器到DNS的完整排查指南 1. 问题现象与排查思路总览PubMed 打不开、一直重定向、文章下载按钮点了没反应,这类问题我这两年帮同事处理过不下几十次。绝大多数人第一反应是"PubMed 挂了"或者"我网络有问题",但实际上,PubMed 作为 NCBI 旗下的核心… · 2026/9/26 6:07:20
从轨道到效果控件:Premiere Pro剪辑核心逻辑详解 1. 项目概述1.1 核心需求解析Premiere Pro界面对新手来说,第一眼往往是"劝退"级别的存在。密密麻麻的面板、叠着好几层的信息密度,以及那个跟Excel表格一样的时间轴面板,很多人打开软件不到五分钟就关掉了。但实际上,Pr… · 2026/9/26 6:07:20
数组算法刷题Day2:双指针、滑动窗口与螺旋矩阵边界控制 如果你最近加入了一支刷算法题的队伍,或者正自己按计划推进,大概会认“代码随想录”这个名字。它在准备计算机面试的人群中流传很广,特点是每个专题都按天拆好,题目之间相互递进。day2 这个节点很典型:第一天刚解决完二… · 2026/9/26 6:07:20
《商业的本质》书评:回归基本功,破解增长与团队管理的底层逻辑 1. 这本书到底解决了什么问题商业类书籍有一个通病:要么太学术,满篇模型和曲线图,读完后还是不知道怎么管团队;要么太鸡汤,喊几句"格局""认知"就完事,落到具体动作时含糊其辞。杰克韦尔… · 2026/9/26 6:07:20
Python字符串引号选择:单引号、双引号与三重引号的本质区别 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/26 6:07:14
考研备考效率低?我用三个月实测找到一套“录音转文字”学习法,复习时间直接砍半 考研这条路,我走了整整两年。第一年踩了无数坑,第二年才真正找到节奏。回头看,最大的问题不是不够努力,而是方法不对——明明每天泡图书馆12小时,但有效学习时间可能连一半都不到。你是不是也有这些经历:专… · 2026/9/26 6:07:14
数据库课后习题答案别硬背:当测试用例集刷,效率翻倍 简介:万常选版《数据库原理与设计》课后习题答案资源,覆盖第2至6章及第9章,适合正在学习关系模型、数据库建模、关系数据理论与模式求精的本科生、自学者作为复习与自测材料。压缩包共7个文件,含3个doc参考答案、2个sql示例脚本、… · 2026/9/26 0:00:21
OpenClaw 替代品?Hermes Agent 踩坑实录:macOS 飞书接入 TaoToken 配置 /* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/26 0:00:40
向下兼容与向上兼容:接口设计中的兼容性策略与工程实践 一次版本升级事故,是很多团队绕不过去的坎。线上环境里,服务端明明已经上线了新版接口,老的移动端还在照着旧文档传参数。请求一到网关,校验直接拒绝,用户操作失败,客服群炸了锅,开发群里开始互… · 2026/9/26 0:00:46