leanrea 不装 MCP 也能指挥本机逆向工具
用户本机已经有逆向工具、想省掉 MCP 服务和复杂配置时,用这个 Skill。底层是开源的 leanrea(MIT):一个 8 KB 的 SKILL.md,告诉 Agent 每类目标用哪条命令最快、给出可以直接粘贴的侦察命令,并列出常见的坑。Agent 自己用 Bash 调真实工具,不额外增加任何工具定义。
触发
用户说"这个应用的某个功能是怎么实现的,给我看证据""看看这个 Electron 应用""这个 Go 二进制用了哪些依赖""这个 APK 调了什么""拆一下这个固件",而且不想装一整套 MCP。
硬性规则
- 只分析你自己的目标,或有明确授权的目标。 授权范围不清楚,先停下来问用户,不要先动手。
- 不对线上系统做扫描、攻击、绕过付费或访问控制、拒绝服务。 只读分析和本地分析优先。
- 装东西、改配置之前先说一声,用户同意后再做。
- 结论分三类: 亲眼看到的(带文件和位置)、推断的、没找到的(写"未知",不写"不存在")。
- 不输出、不记录找到的密钥和令牌的完整内容,只报告它在哪里。
- 在副本上工作,每次解包放进
$TMPDIR/re/<名字>下的新目录。 - 先按
file和魔数路由,先做最便宜的清单(字符串、导入、导出),再反编译,再读代码。 - 搜索解包目录要用
rg -uu(Electron 的.webpack/、.vite/会被默认忽略)。不要cat大文件或压缩过的文件,用切片。 - 缺工具不是障碍:用同一行里的备选,或在用户同意后
brew install。
安装
npx skills add aicodeking/leanrea # 交互选择要装给哪些 Agent
npx skills add aicodeking/leanrea -g # 装到用户级,所有项目可用
npx skills add aicodeking/leanrea -a claude-code -y # 只装 Claude Code,不提示
npx skills update leanrea # 之后更新
没有 skills 支持的 Agent,把 leanrea/SKILL.md 当纯文本贴进规则里。需要装分析工具时(用户同意后):brew install jadx apktool radare2 binwalk wabt wireshark ghidra、npm i -g @electron/asar、dotnet tool install -g ilspycmd、cargo install cargo-audit。
按目标选命令
| 目标 | 最快的路径 |
|---|---|
| Electron 应用 | npx -y @electron/asar extract app.asar X,看 package.json 的入口,再用 rg -uu 搜 IPC 和 exposeInMainWorld |
| 压缩过的 Web 包 | 找 sourceMappingURL,有 sourcesContent 就直接导出源码;否则格式化后按行切片 |
| Mach-O | lipo -info、otool -L、nm -gU(导出)、nm -u(导入,就是能力地图)、strings |
| Go | go version -m 文件,一条命令给出工具链和依赖 |
| Rust | 用 cargo audit bin 读依赖,从字符串里找编译器提交号 |
| .NET | ilspycmd 反编译,再 rg |
| APK | jadx -d X a.apk 再 rg;libflutter.so 表示 Flutter,libhermes.so 表示 React Native |
| WASM | wasm-objdump、wasm2wat |
| 流量包 | tshark -r 文件 -q -z conv,tcp |
| 固件 | binwalk -e 或 unblob -e,再把解出的文件逐个路由 |
节奏
2 到 4 次工具调用:一次批量侦察,一两次定向切片,然后回答。每个问题的证据齐了就停,不要重复验证已经看到的东西。
关于它的评测
作者在 Claude Code 上跑过 4 个逆向任务、每个 3 次,自称相对 REA 的 MCP 方案少 38% 耗时、少 35% 费用、准确度相当。这是作者自己的测试:每格只有 3 次、只用了一个模型和一台机器,作者也写明了这些局限,参考即可。
输出格式
每条结论标注 seen(给出文件和偏移,或符号、字符串)或 inferred(推断);没找到的写 unknown。静态阅读不等于观察到的运行行为。

评论(0)
还没有评论,来说第一句。