实际的取证里碰到最多也最难啃的,一直是 APK。
静态分析能扒出字符串、类名、IOC,快得让人上瘾——但它有一道硬边界:碰上壳就黑屏。动态脱壳能看穿壳里的东西,可环境配置又足以劝退半个屋子的人。
这一期我把两件事一起交给了 Qiko3.0 取证智能体:一个文件夹、一句提示词,静态解析 → 发现加壳 → 自动起模拟器 → Frida 脱壳 → 反编译还原 → 固化成技能,全程我没有敲过一行命令。文中所有截图均为实测记录。
01 静态解析:一句话,5 分钟出报告
打开 Qiko3.0 取证智能体的首页,界面很朴素:工作空间、能力中心、知识库(图 1)。它的关键设计是「工作空间」——你先把检材所在目录选进来,之后对话区里的一切操作都发生在这个目录内(图 2、图 3)。

▲ 图 1 Qiko3.0 取证智能体首页:工作空间 + 能力中心 + 知识库

▲ 图 2 新建或选择工作空间(可指定具体案件目录)

▲ 图 3 把检材目录选进工作空间:2026 > 实战Case > 0925Case
然后就是一句话(图 4):
「解析这个 APK 文件,提取有用的调证信息」

▲ 图 4 输入提示词,直接发送
它没有立刻写报告,而是先探查工作区:列出目录、找到唯一的检材 com.fengjunxxxxx.app.yy.apk(约 353.7 MB),顺手登记文件大小与哈希,并检查本机有没有 jadx / apktool / androguard(图 5)。没有,它就自己想办法。

▲ 图 5 开工先探查:识别检材、登记哈希、检查工具链
报告出来后,最有用的是两块。第一块是应用身份(图 6):应用名叫「欲言」,包名却是 com.fengjunzhixiang.*,版本 2.1.0(versionCode 20260905),入口是 Flutter 页面;签名证书写着 CN=YuYan、O=YuYan、L=ZhengZhou、ST=HeNan,自签 100 年——签名主体与包名主体不一致,这是马甲包的第一处破绽。

▲ 图 6 报告第一部分:检材登记(MD5/SHA-256)+ 应用身份与签名
第二块是核心调证线索(图 7):自有服务器与接口清单(业务 API、IM 长连接、深链 Scheme)、滑块验证/版本检查/媒体上传/人像检测/注销检查/群治理与禁言/员工关系链等接口,以及一个非标准端口的可疑固定 IP。技术架构也一并列清:Flutter(Dart AOT)+ 野火 IM(WildfireChat)+ 腾讯云音视频,支付走支付宝与微信、地图高德、扫码 MLKit、推送覆盖个推与六大厂商通道,外加一处加固库。

▲ 图 7 核心调证线索(服务器/接口/IP)+ 技术架构与加固
速度到底多快?我随手问了句「上述分析用了多久」,它直接调出自己的时间戳,拉出一张阶段耗时表(图 8):从开工到出报告,大约 5 分钟。

▲ 图 8 问一句「用了多久」:时间戳阶段表,约 5 分钟
02 第二个样本:104 秒,撞上了壳
换第二个包。点我安装商城App_5.apk,59.7 MB——一眼Telegram 仿冒(马甲)包,而且已经加壳(图 9)。

▲ 图 9 第二个样本:59.7 MB 的 Telegram 仿冒包,已加壳
这个更小的包跑得更快(图 10):约 1 分 44 秒(104 秒)。

▲ 图 10 第二个样本的耗时:约 1 分 44 秒
但这次它给的不是"漂亮结论",而是一份老实的边界说明(图 11):壳是 ElfPacker,核心负载用 AES-CBC 加密,识别出两个加密负载,并且明确标注——静态侧无法完成真正的脱壳。

▲ 图 11 静态侧对壳的结论:ElfPacker + AES-CBC,明确标注「未完成真正脱壳」
这一点特别值得说。很多工具遇到壳会"假装分析完了",给一堆看似完整的字符串;而它选择了如实汇报边界——静态到不了的地方,就老实说到了,然后换动态。动态脱壳可以看往期教程:实战案例分享:用 AI 绕过模拟器反取证进行动态抓包,落地 APK 真实 IP
03 动态脱壳:模拟器自己起来,Frida 自己挂上
接下来是这一期最爽的部分。我本以为至少要手动开模拟器、手动推 frida-server,结果它自己把雷电模拟器拉了起来(图 12)——本质上,它是先把 arc 的 MCP 工具补齐、装好动态环境,再一路跑到脱壳。

▲ 图 12 自动拉起雷电模拟器,进入动态环节
接着 Frida 附加、内存扫描、DEX 转储一条龙(图 13):一共找到 80 个 DEX,成功转储 78 个,约 157 MB。

▲ 图 13 frida-dexdump 战果:找到 80 个 DEX,成功转储 78 个(约 157 MB)
它还把这一路的环境清单与结果汇总整理了出来(图 14):arc MCP + 雷电模拟器 14 + Frida 工具链,全部就绪——等于顺手给你留了一份"可复现手册"。

▲ 图 14 环境与结果汇总:arc MCP + 雷电 14 + Frida 工具链
脱壳产物落盘(图 15):转储出的 DEX 与报告一起留在工作区,同时给出了本次的消耗。到这一步,壳里的东西终于见光了。

▲ 图 15 脱壳产物落盘 + 本次消耗
脱壳环节的实战笔记
① 模拟器要能 root,否则 frida-server 起不来;雷电 14 开箱即用。
② 端口转发别丢——模拟器一重启,adb forward 就失效,重新转发即可恢复。
③ 内存转储的 DEX 要做头部修复:壳常改写校验字段,直接解析会报 Wrong Adler32 checksum,重算 SHA-1 签名与 Adler32 校验和后才能正常加载——这一步不做,后面的反编译全是死路。
04 脱壳之后:Wallet、远程配置与可调证的 key
壳一旦打开,静态那套能力立刻复活——而且这次面对的是真正的业务代码。给它的指令也很直接:
「对转储出的 DEX 做反编译与功能分析(例如 Wallet 相关逻辑、
远程配置/域名,或者能够调证的 key 值等)」
它给出的结果相当"上道"(图 16):
· 资金相关方法:转账 sendTransferMessage / getTransfer / transferDetail,红包 sendRedPacketMessage / getRedPacket / openRedPacket / redPacketDetail;
· 远程配置 / 域名 IOC:自建 MTProto 服务端域名、伪装深链域名(用来替代官方短链)、银行卡 tokenize 接口、自建日志回传接口,以及一个非标准端口的 IP 直连;
· 可调证的 key:从代码中定位到硬编码的 Google API Key 等常量。

▲ 图 16 Wallet 相关方法与远程配置/域名 IOC、可调证 key
紧接着,我让它对内存转储出来的 DEX 做类级 smali / CFG 还原。这里遇到了前面笔记里提到的坑:转储的 DEX 头部校验被壳改写,androguard 直接报 Wrong Adler32 checksum(图 17)。修正头部后重跑,还原顺利完成(图 18)。

▲ 图 17 类级还原途中:内存转储 DEX 的头部校验需先修复

▲ 图 18 类级 smali / CFG 还原完成:9,170 个类,Wallet 相关 241 个类
最后它自己汇总了一份工作量口径(图 19):90+ 个脚本、79 个 DEX、84 万条字符串、9,170 个类。这就是"一句话委托、后台干活"的真实体量。

▲ 图 19 全局工作量:90+ 脚本、79 个 DEX、84 万条字符串
05 让它记住:把这次流程变成默认技能
到这儿我做了一件最重要的事——不再每次都手打提示词,而是让它把流程记住:
「在我让你解析 APK 的时候,直接使用静态 + 动态 Frida 脱壳 + 动态 APK 抓包;
本地没有动态环境就先告诉我装什么,并把这个流程形成技能」

▲ 图 20 约定落库:写入记忆 + 生成技能 apk-forensics-pipeline
这条规则被写进了记忆,也打包成了一个技能。以后我只要丢个 APK 过去,它就会先自检环境(设备、Frida、抓包证书、MCP 连通性),能跑就直接走静态 + 脱壳 + 抓包,缺环境就先告诉我装什么——不再出现"我以为它做了、其实只做了静态"这种落差。
06 代价:花了多少?
最后说说成本。我问它"上面这些总共花了多少积分",它没有编一个漂亮数字,而是老实说查不到跨任务的精确统计,转而给出工作量口径(图 21)——这种"不知道就说不知道",在取证场景里比什么都重要。

▲ 图 21 问总花费:无法给出精确数字,改以工作量口径回答
不过单次请求的消耗是能看到的(图 22):一条请求大约 0.65 ~ 1.95 积分;账户里当时还有 1 万多积分(图 23),而每日签到就能领 100 积分——换算下来,一天签到够跑很多次分析。

▲ 图 22 单次请求消耗明细:约 0.65 ~ 1.95 积分

▲ 图 23 账户积分与设置入口
还有一点对取证人尤其重要:它支持自定义模型(图 24)——既可以接入本地大模型,也能填各家厂商的 API key。涉密检材走本地模型,这条几乎决定了它能不能进你的日常工作流。

▲ 图 24 模型可切换:内置模型 / 自定义模型
写在后面
静态分析解决「看得快」,动态脱壳解决「看得透」,两者合起来才是 APK 取证的完整闭环。这一期里,5 分钟出报告的静态解析、一次跑通的 Frida 脱壳、9,170 个类的 smali/CFG 还原,全部由一句口语化的提示词驱动——技术门槛在下降,但证据标准不能下降:遇到壳,它老老实实标"未完成真正脱壳";查不到积分,它就说不确定。这份克制,比多给几条字符串更值钱。
最后Qiko3.0的官方的链接是:Qiko3.0 全行业征集首测用户!
也可看:
- 安装包
- 上手使用指南
- 丰厚算力积分
- 线上培训,带着大家一起认识Qiko3.0(国庆节后,时间待定)。



敬请各位大佬关注:小谢取证


扫取二维码获取
更多精彩
小谢取证
