Claude Code Android 逆向工程 Skill:一行命令扒光任意 APK
来源:https://github.com/SimoneAvogadro/android-reverse-engineering-skill
整理时间:2026-04-16
标签:#Android #逆向工程 #ClaudeCode #APK反编译 #API提取 #jadx #Skill #安全研究
一、项目概述
1.1 简介
一个 Claude Code 的 Skill,专门用于 Android APP 的逆向工程和 API 提取。
| 项目 | 信息 |
|---|---|
| 名称 | android-reverse-engineering-skill |
| 作者 | SimoneAvogadro |
| GitHub | github.com/SimoneAvogadro/android-reverse-engineering-skill |
| Star | 1946 |
| Fork | 217 |
| 协议 | Apache 2.0 |
1.2 核心能力
/decompile app.apk
一行命令完成:
- 反编译 APK / XAPK / JAR / AAR
- 提取所有 Retrofit 接口、OkHttp 调用、隐藏 URL
- 追踪 Activity → ViewModel → Repository → HTTP 的完整调用链
- 分析 Manifest、架构模式
- 处理 ProGuard/R8 混淆代码
二、工作流程(5个阶段)
Phase 1: 依赖检查
检查必要的工具是否安装:
- Java JDK 17+
- jadx(必须)
- Vineflower / Fernflower(可选,推荐)
- dex2jar(可选)
Phase 2: 反编译
支持多种格式:
| 格式 | 说明 |
|---|---|
| APK | Android 安装包 |
| XAPK | App Bundle 格式(自动拆解每个 APK) |
| JAR | Java 库 |
| AAR | Android 库 |
Phase 3: API 提取
提取内容:
├── Retrofit 接口定义
├── OkHttp 调用
├── 硬编码 URL
├── 认证头和 Token
└── 请求/响应格式
Phase 4: 调用链追踪
Activity / Fragment
↓
ViewModel
↓
Repository
↓
HTTP 调用
Phase 5: 架构分析
- Manifest 分析
- 架构模式识别(MVC / MVP / MVVM)
- 混淆代码处理策略
三、安装方法
3.1 从 GitHub 安装(推荐)
在 Claude Code 中运行:
/plugin marketplace add SimoneAvogadro/android-reverse-engineering-skill
/plugin install android-reverse-engineering@android-reverse-engineering-skill
3.2 从本地克隆安装
git clone https://github.com/SimoneAvogadro/android-reverse-engineering-skill.git
然后在 Claude Code 中:
/plugin marketplace add /path/to/android-reverse-engineering-skill
/plugin install android-reverse-engineering@android-reverse-engineering-skill
四、使用方法
4.1 斜杠命令
/decompile path/to/app.apk
4.2 自然语言
Skill 会对以下短语激活:
- “Decompile this APK”
- “Reverse engineer this Android app”
- “Extract API endpoints from this app”
- “Follow the call flow from LoginActivity”
- “Analyze this AAR library”
4.3 手动脚本
也可以独立使用脚本:
# 检查依赖
bash scripts/check-deps.sh
# 安装依赖
bash scripts/install-dep.sh jadx
bash scripts/install-dep.sh vineflower
# 使用 jadx 反编译
bash scripts/decompile.sh app.apk
# 反编译 XAPK
bash scripts/decompile.sh app-bundle.xapk
# 使用 Fernflower 反编译
bash scripts/decompile.sh --engine fernflower library.jar
# 双引擎对比
bash scripts/decompile.sh --engine both --deof app.apk
# 查找 API 调用
bash scripts/find-api-calls.sh output/sources/
bash scripts/find-api-calls.sh output/sources/ --retrofit
bash scripts/find-api-calls.sh output/sources/ --urls
五、依赖工具
必须安装
| 工具 | 说明 |
|---|---|
| Java JDK 17+ | 运行环境 |
| jadx | Dex to Java 反编译器 |
可选安装(推荐)
| 工具 | 说明 |
|---|---|
| Vineflower | Fernflower 社区分支,更好的复杂 Java 代码输出 |
| Fernflower | JetBrains analytical decompiler |
| dex2jar | DEX to JAR 转换器,配合 Fernflower 使用 |
相关工具
| 工具 | 说明 |
|---|---|
| apktool | Android resource decoder |
六、仓库结构
android-reverse-engineering-skill/
├── .claude-plugin/
│ └── marketplace.json
├── plugins/
│ └── android-reverse-engineering/
│ ├── .claude-plugin/
│ │ └── plugin.json
│ ├── skills/
│ │ └── android-reverse-engineering/
│ │ ├── SKILL.md # 核心工作流
│ │ ├── references/
│ │ │ ├── setup-guide.md
│ │ │ ├── jadx-usage.md
│ │ │ ├── fernflower-usage.md
│ │ │ ├── api-extraction-patterns.md
│ │ │ └── call-flow-analysis.md
│ │ └── scripts/
│ │ ├── check-deps.sh
│ │ ├── install-dep.sh
│ │ ├── decompile.sh
│ │ └── find-api-calls.sh
│ └── commands/
│ └── decompile.md
└── README.md
七、适用场景
| 场景 | 说明 |
|---|---|
| 安全研究 | 授权渗透测试、恶意软件分析 |
| 竞品分析 | 分析竞品的 API 接口和认证模式 |
| 学习逆向 | 学习 Android 开发、架构、设计模式 |
| API 文档 | 为没有文档的 App 生成 API 文档 |
| 互操作性分析 | EU Directive 2009/24/EC、US DMCA §1201(f) 允许的用途 |
八、法律声明
⚠️ 严格限于合法用途:
- 安全研究和授权渗透测试
- 适用法律允许的互操作性分析(如 EU Directive 2009/24/EC、US DMCA §1201(f))
- 恶意软件分析和事件响应
- 教育用途和 CTF 比赛
用户自行负责确保使用符合当地法律法规。
九、一句话总结
一行命令
/decompile app.apk扒光任意 Android APP 的所有 API 和调用链,安全研究和竞品分析神器。
本文由 AI 辅助整理,供技术学习参考。