我好像已经错过了 MCP 热了,不过还是过来蹭一下。
铺垫:cutter 主要就是那种用来反编译,反汇编的东西。LLM 能读懂伪代码和汇编。
那他们结合在一起呢?
虽然之前有一个 ida pro mcp ,而我个人 cutter 用的比较多。(因为免费,功能够用并且好上手)
恰好我最近在玩 CTF 里的一些逆向题目,所以我给 cutter 开发了一个插件,专门用来走 MCP 。搞自动化逆向分析。
而后做了一些不严谨的测试,但是有一些有趣的结果:
1. Hackthebox 上面的简单逆向题:用非法指令干扰,cutter 不能正常反编译。
实测 claude-sonnet-3.7/4 ,gemini-2.5-pro ,gpt-o4-mini 都可以独立正确解出。在发现一些明显的迹象后直接读汇编绕过。
而后可以准确注释和生成报告。
但是 gpt-4.1, gemini-2.5-flash 等是会被卡住的。而且他们代码注释感觉是在猜,并不准确。
2. 测试一下 AI 最远能走到哪里?
最后发现差不多是中等难度逆向分析题目。大概就是一个简易 VM 逆向:自定义指令集。并且对输入指令有要求和过滤。关键函数是通过指针调用而非 call 所以不会被 cutter 列出。
用 claude-opus-4 能独立正确解出,但是花了一些时间和不少 tokens 。sonnet-4 ,gemini-2.5-pro ,o4-mini 都不行。gpt-o3 没权限访问就没测试了。我没有通过机构认证。
3. 我曾经制作了一个在 VirusTotal 上曾经做到 0/72 的 shellcode loader 。我扔给模型实战分析去了。
我问的大概就是:用 cutter-mcp ,弄清楚 xxxx.dll 关键函数作用,注释 blahblah ,推测这是干什么的?
结果:
claude-sonnet-4: 推测:shellcode loader 。可以完全正确的分析出。但是偶尔有幻觉,不是每次都对。比如字符串混淆方法弄错。但是整体正确
claude-opus-4: 同上,无幻觉。完全正确。甚至顺手给你写个脚本解混淆。
gemini-2.5-pro: 推测 shellcode loader 。虽然有要求但是依然缺乏注释。核心内容解释含糊不清,很难说它到底有没有明白。
o4-mini: 完全正确。但是我这里认证问题不仅不给思路,而且话特别少。耗时又长。
相比之下 opus-4 巨贵成倍的贵,sonnet-4 好很多了,但是还是比 o4-mini 和 gemini-2.5-pro 贵一些。
综合来说,绝大多数情况下 sonnet-4 绝对够用了,速度和质量都不错。
注意,我这里对模型的不严谨测评仅仅只是针对逆向汇编伪代码等等。不代表其它性能。
具体内容看这里吧:
https://github.com/restkhz/CutterMCP-plus