Balzabu/android-pentest-ai
GitHub: Balzabu/android-pentest-ai
一个将 AI 编程助手转化为 Android 渗透测试专家的技能集,支持反编译分析、防护机制识别和定制化 Frida 脚本生成。
Stars: 0 | Forks: 0
# Android PT 技能
一个 AI 辅助的 Android 渗透测试技能,可与 Claude Code、OpenCode、Codex、Gemini CLI、Cursor 和 Windsurf 配合使用。
涵盖从静态分析到使用 Frida 进行动态分析再到安全绕过技术的 VA/PT 全生命周期,所有发现均映射到 OWASP MASVS v2.1.0。
## 功能特性
使用 jadx + apktool 反编译 APK/XAPK 文件,并检测跨平台框架(Flutter、React Native、Xamarin、Unity)。分析 manifest、Java/Kotlin 代码模式、硬编码 secrets 和加密实现。识别保护机制,如 root 检测、SSL pinning、Play Integrity、反调试和反 hooking。
基于实际代码分析生成 Frida 脚本,而非通用模板。兼容 Frida 17.x 和 Android 15/16。测试 WebView 利用、intent 重定向、PendingIntent 劫持、Content Provider 注入、tapjacking 和 deep link 劫持。包含用于流量拦截的 mitmproxy/Burp Suite 集成指南。
## 环境要求
### 必需
- Java JDK 17+
- [jadx](https://github.com/skylot/jadx) (DEX to Java 反编译器)
- [apktool](https://apktool.org/) (APK 资源解码器)
- [ADB](https://developer.android.com/tools/adb) (Android Debug Bridge)
### 推荐
- [Frida](https://frida.re/) 17.x + frida-tools (动态插桩)
- [objection](https://github.com/sensepost/objection) (运行时探索)
- [mitmproxy](https://mitmproxy.org/) (流量拦截)
- [Ghidra](https://ghidra-sre.org/) (原生代码逆向工程)
- [uber-apk-signer](https://github.com/nicehash/uber-apk-signer) (用于重打包的 APK 签名)
## 安装
克隆仓库并使用你的 AI 工具打开。说明和命令会自动加载。
```
git clone https://github.com/Balzabu/android-pentest-ai.git
cd android-pt-skill
```
### 各工具加载内容
| 工具 | 说明 | 斜杠命令 |
|------|-------------|----------------|
| Claude Code | `CLAUDE.md` | `.claude/commands/*.md` |
| OpenCode | `AGENTS.md` | `.opencode/commands/*.md` |
| OpenAI Codex | `AGENTS.md` + `.agents/skills/android-pt/` | 根据描述匹配自动激活技能 |
| Gemini CLI | `GEMINI.md` | `.gemini/commands/*.toml` |
| Cursor | `.cursor/rules/android-pt.mdc` | `.cursor/commands/*.md` |
| Windsurf | `.windsurf/rules/android-pt.md` | `.windsurf/workflows/*.md` |
所有六种工具都获得相同的七个命令:`/scan`、`/decompile`、`/check-deps`、`/find-secrets`、`/vuln-scan`、`/frida-bypass`、`/report`。
旧版文件(`.cursorrules`、`.windsurfrules`)已包含在内,以适配旧版 IDE。
### 安装到现有项目
将 `android-pt/` 复制到你的项目中,然后复制你 IDE 的配置目录:
```
cp -r android-pt/ /your/project/android-pt/
# Claude Code
cp CLAUDE.md /your/project/ && cp -r .claude/ /your/project/.claude/
# OpenCode
cp AGENTS.md /your/project/ && cp -r .opencode/ /your/project/.opencode/
# Codex
cp AGENTS.md /your/project/ && cp -r .agents/ /your/project/.agents/
# Gemini CLI
cp GEMINI.md /your/project/ && cp -r .gemini/ /your/project/.gemini/
# Cursor
cp -r .cursor/ /your/project/.cursor/
# Windsurf
cp -r .windsurf/ /your/project/.windsurf/
```
## 项目结构
```
android-pt-skill/
├── android-pt/ # Core skill
│ ├── SKILL.md # 5-phase methodology (OWASP MASVS v2.1.0)
│ ├── commands/ # Universal command prompts (any tool)
│ │ ├── scan.md
│ │ ├── decompile.md
│ │ ├── check-deps.md
│ │ ├── find-secrets.md
│ │ ├── vuln-scan.md
│ │ ├── frida-bypass.md
│ │ └── report.md
│ ├── references/
│ │ ├── static-analysis.md
│ │ ├── protection-detection.md
│ │ ├── dynamic-analysis.md
│ │ ├── bypass-techniques.md
│ │ ├── native-analysis.md
│ │ ├── cross-framework.md
│ │ └── owasp-mastg-map.md
│ └── scripts/
│ ├── full-scan.sh
│ ├── check-deps.sh
│ ├── decompile.sh
│ ├── find-secrets.sh
│ ├── extract-endpoints.sh
│ ├── vuln-scan.sh
│ └── generate-report.sh
│
├── .agents/skills/android-pt/ # Agent Skills standard (Codex, Cursor, Windsurf)
│ └── SKILL.md
├── .claude/commands/ # Claude Code slash commands
├── .opencode/commands/ # OpenCode slash commands
├── .gemini/commands/ # Gemini CLI slash commands (TOML)
├── .cursor/
│ ├── rules/android-pt.mdc # Cursor rules (MDC format)
│ └── commands/ # Cursor slash commands
├── .windsurf/
│ ├── rules/android-pt.md # Windsurf rules (trigger frontmatter)
│ └── workflows/ # Windsurf workflows (slash commands)
│
├── CLAUDE.md # Claude Code instructions
├── AGENTS.md # Codex instructions
├── GEMINI.md # Gemini CLI instructions
├── .cursorrules # Cursor legacy (backward compat)
├── .windsurfrules # Windsurf legacy (backward compat)
└── README.md
```
## 使用方法
### 自然语言(任意 AI CLI)
- "反编译这个 APK 并查找安全问题"
- "分析此应用中的 root 检测并生成绕过方案"
- "创建一个 Frida 脚本来绕过 com.example.app 的 SSL pinning"
- "对此 APK 运行完整的 OWASP MASVS 评估"
- "这个应用使用了哪些保护机制?"
### 完整自动化扫描
```
bash android-pt/scripts/full-scan.sh --deobf --install-deps target.apk
```
这将运行完整的第一阶段 pipeline:依赖检查、反编译、secret 扫描、endpoint 提取、漏洞扫描和报告生成。
### 单独脚本
```
bash android-pt/scripts/check-deps.sh --install
bash android-pt/scripts/decompile.sh --deobf target.apk
bash android-pt/scripts/find-secrets.sh ./decompiled-target/jadx-output/sources/
bash android-pt/scripts/extract-endpoints.sh ./decompiled-target/jadx-output/sources/
bash android-pt/scripts/vuln-scan.sh ./decompiled-target/ --output ./findings/
bash android-pt/scripts/generate-report.sh ./findings/ --output report.md
```
## 方法论
评估分为五个阶段,与 OWASP MASVS v2.1.0 对齐:
1. 侦察和静态分析。反编译、检测框架、审查 manifest、审计代码。
2. 安全机制识别。映射所有保护措施:root 检测、pinning、Play Integrity、反调试。
3. 动态分析和插桩。自定义 Frida hook、流量拦截。
4. 绕过和利用。演示影响:SSL 绕过、root 绕过、WebView 利用、intent 攻击。
5. 发现和证据收集。映射 MASVS 的报告及修复建议。
## Frida 脚本生成
不包含预构建的 Frida 脚本。该技能从实际代码分析生成脚本:
1. 反编译目标 APK
2. 识别确切的保护实现(类、方法、签名)
3. 理解调用链和逻辑
4. 生成带有内联文档的针对性 Frida 脚本
5. 包含验证逻辑
一个 hook `com.target.security.PinningManager.validateCertChain()` 的脚本比通用绕过脚本是更好的证据。它的失效频率也更低,因为它针对的是实际实现,而不是猜测方法名。
## 法律免责声明
此技能仅用于授权的安全评估。请仅在你拥有书面测试权限的应用程序上使用。未经授权访问计算机系统是非法的。作者对滥用不承担任何责任。
## 许可证
Apache 2.0
标签:AI安全工具, Android安全, API接口, Apktool, APK反编译, Claude Code, Cursor, Docker支持, Frida, Jadx, OWASP MASVS, Root检测绕过, SSL Pinning绕过, StruQ, 云安全监控, 云资产清单, 安全专业人员, 安全技能, 应用安全, 提示词注入, 目录枚举, 移动安全, 网络安全, 逆向工程, 防御加固, 隐私保护, 静态分析