reverse-skill:面向 AI 编码客户端的逆向工程技能路由包

Navigate the dark waters, sail against the stream. 当 AI agent 面对一个 APK、一段 JS 加密混淆、一个 CTF 二进制题时,它往往不知道该调用 jadx、apktool、Frida 还是 IDA------工具和脚本散落各处,重复犯错、经验无法复用。reverse-skill 正是为解决这一痛点而生:它通过结构化路由规则自动匹配场景、检查工具链并自举执行,让逆向工程从"瞎猜命令"走向可复用的标准化工作流。

一、核心矛盾与架构理念

AI agent 在执行渗透测试和逆向任务时,最大障碍不是算力不足,而是决策路径的不确定性 。传统的"遇到 APK → 用 jadx"式的思维模式,在复杂场景下往往失效:需要先判断平台、再确认工具版本、再选择合适的模块组合。reverse-skill 将这一过程抽象为规则驱动的技能路由,通过 routing.json 维护一条从"输入信号"到"执行动作"的确定性映射链。

整个项目由四个核心层构成:

  • 路由核心层:routing.json + RULES.md 定义场景分类与路由规则
  • 技能模块层:44 个 tracked modules,每个模块封装特定场景的工具链和工作流
  • 客户端适配层:各 AI agent(Claude Code、Codex、Cursor、OpenCode)的适配器,负责将路由结果转化为该客户端能执行的指令
  • 保障层:回归测试套件 + CI 流水线,确保路由一致性不因版本迭代而漂移

核心与客户端之间采用契约式解耦:路由逻辑、回归测试、case 工作流不依赖任何特定 AI 客户端,客户端配置作为可选部分置于核心合同之外------这意味着换一套 Agent 平台,只需实现对应的适配器,而不需要改动核心路由逻辑。

二、43 条路由规则的场景覆盖

routing.json 中的 43 条规则(R0--R44)覆盖了 20+ 场景类别,大致可分为以下几组:

类别 典型规则 核心工具链
APK / Android 逆向 R0--R6 jadx, apktool, Frida, BurpSuite MCP
iOS 逆向 R7--R9 class-dump, Frida, IDA Pro
二进制分析 R10--R17 IDA Pro, radare2, Ghidra
.NET 逆向 R18--R20 dnSpy, ILSpy, dotPeek
前端 JS 加密 R21--R25 Node.js, 混淆分析模块
CTF 挑战 R26--R32 综合路由,按需组合工具
恶意软件分析 R33--R36 沙箱集成、行为分析报告
固件逆向 R37--R39 binwalk, firmware-mod-kit
EDR Bypass R40--R43 行为检测规避路径

每条路由规则在路由时承担两层职责:场景识别 ("这是哪一类任务")和工具可用性检查("当前环境有哪些工具")。如果某工具缺失,路由会自动降级到次优路径,而不是直接报错。

一个值得深挖的问题是:43 条规则在实际任务中如何动态组合?例如一个 CTF challenge 可能同时涉及 APK 逆向和前端 JS 混淆,此时路由系统是否支持多规则叠加?目前规范尚未公开优先级或冲突消解机制的具体设计,但从 173 个回归用例的存在可以推测,系统至少具备基础的顺序解析能力。

三、Client-Neutral 设计与适配器模型

reverse-skill 的 client-neutral 设计是其最具差异化的一点。传统安全工具链往往绑定特定终端或编辑器,而 reverse-skill 通过适配器模式实现了真正的平台无关性。

yaml 复制代码
# 典型的客户端适配器配置示例
adapters:
  claude_code:
    config_path: .claude/skills/reverse-skill
  cursor:
    config_path: .cursor/rules/reverse-skill
  codex:
    config_path: .codex/plugins/reverse-skill
  open_code:
    config_path: .opencode/skills/reverse-skill

每个适配器只需实现一个最小接口:接收路由结果,将其转换为该客户端可执行的上下文指令集。这种设计的代价是,某些客户端的高级特性(如 Cursor Rules 的深度集成能力)可能无法完全利用,但换来的是统一的规则库和测试体系。

对于追求极致集成的用户,开发者可以在适配器层之上叠加扩展模块,而不影响核心的路由逻辑。

四、173 个回归用例与 CI 保障

路由系统的可靠性是整个项目的基石。reverse-skill 提供了 173 个 hint→expected PRIMARY 的路由回归用例,覆盖了所有 43 条规则的核心路径。这些用例在每次 push 和 PR 时在 Windows + Ubuntu 双平台并行运行,确保跨平台的规则一致性。

CI 流程包含两个关键门禁:

  1. 结构连贯性验证:检查 routing.json 的语法合法性、规则的无环性、模块引用的完整性
  2. 供应链 pin 门禁:确保所有依赖版本被显式锁定,防止依赖漂移带来的安全风险

supply-chain pin gate 防止的核心风险是:当某个上游工具(如 jadx 或 Frida)发布了破坏性更新时,未 pin 的版本可能导致路由规则失效甚至工具行为异常。一旦 pin gate 触发,CI 会阻断合并,直到版本约束被明确标注------这在小团队维护的开源项目中尤其重要。

不过,173 个用例是否足以覆盖真实世界的复杂场景,仍是一个开放问题。特别是在 multi-scenario(多场景叠加)和 edge-case(边缘情况)方面,可能存在漏测风险。建议在实际使用中结合具体任务类型补充额外的验证用例。

五、标准化工作流:从路由到报告

reverse-skill 定义了一个完整的任务处理 pipeline,所有进入的任务必须遵循以下流程:

复制代码
任务输入 → RULES.md 作用域确定 → 路由匹配 → 工具自举 → 执行技能模块 → 输出报告

以一次 APK 逆向任务为例:

  1. 作用域确定RULES.md 明确该任务的 auth 认证方式和 network_profile 网络配置
  2. 路由匹配:检测到 .apk 后缀,路由到 R0(APK 基础分析)或 R1(APK 混淆分析),根据输入信号进一步细化
  3. 工具自举:执行 refresh-tool-index 脚本,自动检测 jadx、apktool、Frida-server 等是否可用,生成 tool-index.md
  4. 技能执行:按模块化工作流逐步执行,每个步骤输出中间 artifact
  5. 报告输出:最终生成标准化的 Evidence→Finding→Path 证据链,以及 timeline 时间线

这种标准化输出的价值在于:同一份路由结果可以被不同的人或不同的 AI agent 复现,不再依赖个人的"经验直觉"。

六、跨平台工具链自举

初始化阶段,reverse-skill 要求用户根据操作系统运行对应的 refresh-tool-index 脚本:

  • Windows:PowerShell 脚本,扫描 PATH 中的 jadx、apktool、Frida、BurpSuite MCP 等工具
  • Linux:bash 脚本,执行相同的检测逻辑

脚本的输出是 tool-index.md,记录每个工具的路径、版本和可用性状态。这个索引文件是整个路由系统的前提------规则引擎在做路由决策时,首先查询 tool-index.md,对不可用的工具走降级路径。

工具链的自举设计还有一个隐含价值:它将"环境配置"这一通常由人工完成的工作,变成了可自动化、可版本化的流程,减少了"在我机器上能跑"的经典问题。

七、小结与展望

reverse-skill 的核心创新不在于单项技术的深度,而在于将逆向工程的决策过程本身结构化和可测试化。43 条路由规则、173 个回归用例、client-neutral 架构,构成了一个可验证、可扩展、可移植的技能分发系统。

当前版本仍存在若干值得探索的方向:多规则动态组合的策略、高级客户端特性的整合深度、真实世界场景的用例覆盖度,以及供应链安全机制的完善程度。对于从事 AI 辅助逆向工程和安全研究的团队而言,reverse-skill 提供了一个有价值的参考范式------将"经验"转化为"规则",将"直觉"转化为"路由"。

相关推荐
天远Date Lab15 分钟前
分布式微服务实战:基于天远车辆估值构建自动化车价评估网关
人工智能·分布式·微服务·自动化
Proaiapi18 分钟前
2026 年 API 中转与聚合平台选型指南
人工智能
AI工具测评家18 分钟前
2026 知网 & 维普 AIGC 检测底层逻辑解析|快降重 / 笔过 AI / 快将 AI 改写技术差异对比
人工智能·aigc·降重·ai检测·查重·降ai
衡石科技18 分钟前
构建软件公司的JARVIS:AI Native研发中枢的方法论
人工智能·ai·数据分析
喜欢睡觉20 分钟前
AI Agent 的记忆机制
人工智能
不想当程序汪的第N天22 分钟前
【AI】智能体经典范式
人工智能
武子康24 分钟前
删掉邮箱后,Agent Trace 仍可能泄露什么:一条可重放脱敏流水线
人工智能·llm·agent
Csvn24 分钟前
LLM 当裁判?先懂它的 4 个偏心——自动化评测实战(E03)
人工智能
呆萌很25 分钟前
简要介绍 torchvision.datasets.ImageFolder
人工智能