安卓黑盒狩猎
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_a730098d/android-apk-blackbox-hunt。
技能介绍
为什么需要这个
Android 逆向很容易变成两件事的拉扯:要么被大段反编译代码撑爆上下文,要么凭直觉报一堆「疑似漏洞」,真写报告时却拿不出证据链。常见的失败模式是把 攻击面 当成漏洞,或者在 jadx 反编译中途因为超时中断,漏掉关键路径。
这个 skill 的目标是把黑盒测试拉回工程化轨道:从 APK 指纹开始,收敛到少数真实可利用的问题,并用本地文件承担记忆,而不是每次都靠模型「硬记」。
核心能力
- 工具优先:优先调用
jadx、apktool、aapt、adb、frida、objection、MobSF、Burp等现成工具,不重写轮子;脚本只做命令拼装与解析的胶水层。 - 上下文经济:反编译优先聚焦目标包,大项目不设超时;用
cache/目录持久化攻击面、线索与关键逻辑,让模型负责思考,文件负责记忆。 - 功能即漏洞:先理解某个功能(如 Deep Link 跳转、本地端口命令执行)的具体参数和取值,再判断输入是否外部可控、是否缺少校验、是否越权或未隔离。
- 可靠漏洞优先:
confirmed必须有代码回溯或动态验证的完整证明(例如读到/etc/hosts、私有 Token,或非破坏命令回显);不满足的降级为suspicious,不混入可靠漏洞列表。
工作流程
- 环境与指纹:探测工具是否可用,不凭空假设路径;用
aapt dump badging取包名、版本、权限,识别加固特征,并建立cache/目录结构。 - 攻击面映射:覆盖导出组件、Deep Link、
intent://滥用、WebView、JSBridge、本地 IPC 端口、Native 库、硬编码密钥、SSL Pinning、本地明文存储等 10 类面,生成攻击面卡。 - 静态回溯:从入口参数沿调用链追到危险 Sink(如
loadUrl、Runtime.exec、rawQuery),记录类名/方法/行号或 smali 偏移;用apktool看完整 Manifest 和资源隐藏开关。 - 动态验证(可选):在模拟器中通过 Frida/Objection 绕检测与 Pinning,Burp 抓包核对鉴权头,
curl打本地端口验证参数校验缺失。 - GATES 收口:出报告前必须通过攻击面图完成、线索全回溯、验证纪律、覆盖三问、证据充分、
exp.html齐备等门槛,否则回跳补测。
边界与注意点
只用于自己拥有或已获授权的 APK;不修改目标文件,不运行未知恶意样本,不在真机上做破坏性验证。动态测试只在模拟器/沙箱中进行,不对真实用户发钓鱼或大批量请求。被严格过滤、CSP、域名白名单挡住的点,以及需要不可达特权域 XSS 的场景,一律记为攻击面或疑似,不报成漏洞。
使用场景
- 拿到一款自有或已授权 APK,需要在有限上下文内完成导出组件、Deep Link、WebView 与本地端口的攻击面梳理。
- 团队要做移动端渗透,希望先跑 jadx/apktool 静态回溯,再用 Frida 或 Burp 动态验证可疑链路。
- 安全评审需要一份可复核报告,区分 confirmed 与 suspicious,并为每个漏洞附带 exp.html 证明。
- 面对加固或带本地 HTTP 服务的 App,想确认硬编码密钥、明文存储与证书锁定绕过是否真实可利用。
适合人员
- 负责 Android 应用渗透测试的安全工程师,需要把黑盒测试流程固化成可复用的检查清单。
- 做移动安全研究或漏洞挖掘的工程师,关注攻击面映射、静态回溯与防误报验证。
- Android 客户端开发者或安全架构师,想在授权范围内理解导出组件、WebView 和 IPC 的风险点。
- IT 运维与安全团队中负责移动端合规审计的成员,需要输出分级明确、证据完整的报告。