【开源推广】Metis Reverse :一个帮助你逆向软件的 MCP

Wholiver 2026-10-20 15:31 1

本帖使用社区开源推广,符合推广要求。我申明并遵循社区要求的以下内容:



  • 我的帖子已经打上 开源推广 标签: 是

  • 我的开源项目完整开源,无未开源部分: 是

  • 我的开源项目已链接认可 LINUX DO 社区: 是

  • 我帖子内的项目介绍,AI生成、润色内容部分已截图发出: 是

  • 以上选择我承诺是永久有效的,接受社区和佬友监督: 是


以下为项目介绍正文内容,AI生成、润色内容已使用截图方式发出





[!warning]

项目还在测试阶段,可能有一些bug,有些功能也没打磨好。遇到问题欢迎直接开 issue声,我都会看。



他能干什么?



  1. 帮你进行软件逆向,从而获取他的源代码,进行二次开发或者破解其中内容(破解部分需要自行破甲)

  2. 帮助你更好的理解闭源软件的架构和设计,方便快速将闭源软件的代码接入到你的项目中

  3. 让Agent 可以更好的理解闭源软件,帮助你设计出更好的软件


和 REA 的区别是什么?


REA 交出来的是一份带证据的结论。 比如「这个函数在校验序列号,证据是这几段反汇编」。代码要 Agent 照着结论自己重写。它也做验证:对照你事先声明的约定,检查证据和覆盖率够不够。


Metis Reverse 交出来的是一份写在磁盘上的源码树。 写完之后会做三件事:



  1. 用 clang 或 gcc 把它重新编译出来

  2. 拿同一组输入,把原程序和重建出来的程序都跑一遍,逐项对比退出码、标准输出和错误输出

  3. 哪一项对不上就报出来,Agent 改完再编译、再对比,直到对上为止


下方的截图是用 Metis Reverse MCP 搭配 Cursor Agent 逆向出来的 Claude 前端源代码和其前端,并且修改了他的内置图标为 Metis 自己的图标




当然源代码肯定会和当时开发者手中的代码不一样,不能做到百分百一样


目前支持的语言范围:



  1. C:ELF / PE 等原生二进制,会生成 Makefile/CMakeLists.txt,能用 clang/gcc 重编译、跑差分测试。

  2. Java / smali:APK、DEX、JAR、class。装了 JADX 出 Java,装了 baksmali 出 smali。

  3. C#:.NET 程序,生成 .csproj,靠 ILSpy 或内置后端。

  4. JavaScript / TypeScript:Electron/ASAR 和网页包,能解包,能用 sourcemap 还原;有 sourcemap 时出 TS,没有就出 JS。

  5. Go:只生成项目脚手架,函数体靠反编译器结果,没有就是空的。

  6. 持续添加中,各位佬有其他语言需求的话也可以去提交 ISSUE


安装:



  • 安装指南:metis-reverse/README.zh-CN.md at main · Wholiver/metis-reverse · GitHub

  • GitHub:Wholiver/metis-reverse

  • 开源协议:MIT

  • 喜欢的话可以点点 Star,感激不尽

最新回复 (18)
  • 格事格非 10-20 15:33
    1楼

    严肃star后再仔细看看。

  • cloudflare 10-20 15:34
    2楼

    论坛里最近好多逆向工具 ^-^

  • Wholiver 楼主 10-20 15:41
    3楼

    可以可以 ^-^

  • mazin 10-20 15:42
    4楼

    逆向的好处就是可以帮我完善我的软件,不只是逆向别人的软件,挺好

  • Wholiver 楼主 10-20 15:45
    5楼

    我的目的主要是学习闭源软件的设计

  • hellowwj 10-20 15:48
    6楼

    rea在windows下很多功能首先,这个看文档好像没这方面限制

  • Wholiver 楼主 10-20 15:49
    7楼

    啥意思,没太看懂

  • IlIlIlIlIlIlIll 10-20 15:50
    8楼

    严肃 star 后再仔细看看。

  • tan90° 10-20 15:54
    9楼

    对于加壳混淆后的东西能work吗?比如ZKM混淆

  • 兰克 福 10-20 15:56
    10楼

    能重编译再对输出,这招绝了啊

  • Wholiver 楼主 10-20 16:19
    11楼

    对于加壳混淆后的东西能work吗?比如ZKM混淆



    没测过,也没有专门的脱壳或反混淆功能,ZKM 这类混淆过的 Java 包大概只能出一份很难读的骨架

  • 懵懂小新 10-21 17:28
    12楼

    已严肃star,我要逐帧逐条慢慢学习。

  • Rocky4506 10-22 12:08
    13楼

    这是好事啊,百花齐放的大逆向时代。

  • 木木 10-22 13:50
    14楼

    先star,然后慢慢研究下,我估计还得靠AI ^-^

  • Wholiver 楼主 10-23 13:02
    15楼

    可以可以,不过这个版本问题很多,我重新更新了新版本(明天发布),效果很好,这是他做的 claude code 逆向报告

    Claude-Code-Agent-架构逆向分析.md (22.7 KB)

  • Wholiver 楼主 10-23 16:59
    16楼

    那当然了,我已经用这个逆向了很多闭源软件了

  • wuuuu 10-23 23:42
    17楼

    佬,逆向推荐用什么模型

  • 柳云枫 10-24 01:51
    18楼

    佬,我也想问,逆向推荐用什么agent工具和模型呀?

* 帖子来源Linux.do
返回