如何对 Android APP 抓取 HTTPS 包?

2022-03-22 16:37:02 +08:00
 LxnChan

现有一 APP ,采用 HTTPS 方式与服务器通讯,需要对该 APP 抓包获得接口。

但是现在问题如下:

因此想问问大家有什么别的好的方法吗?

17544 次点击
所在节点    Android
59 条回复
mynuolr
2022-03-22 16:41:12 +08:00
Root 后把自签加入系统证书。
learningman
2022-03-22 16:44:12 +08:00
用 frida/xposed hook 证书验证的接口,直接 return true
DonaldY
2022-03-22 16:47:51 +08:00
charles
NjcyNzMzNDQ3
2022-03-22 16:49:13 +08:00
补充#1

下个安卓模拟器,比如网易木木,再带 root 功能,方便自签证书导入
popok
2022-03-22 16:49:31 +08:00
现在的安卓系统确实比较麻烦,我也蹲一个可用的方法。

这方面还是 ios 方便,直接证书信任,然后就可以抓了。
DonaldY
2022-03-22 16:49:31 +08:00
Android 确实。。。
dier
2022-03-22 16:54:03 +08:00
Fiddler 在 PC 上做代理也不行吗
tiny1994095
2022-03-22 16:57:58 +08:00
LxnChan
2022-03-22 17:00:39 +08:00
@mynuolr @learningman 不能采用 root 或者框架,会被检测
@NjcyNzMzNDQ3 应用不支持 x86 架构
@dier 要安装证书
@tiny1994095 稍后我看一下
bruce0
2022-03-22 17:07:08 +08:00
忘记从哪个版本开始 Android 抓包变麻烦了, 原因是 app 可以不信任非系统证书,这就需要 root 权限把伪造的证书加入 root ,然后在用 frida 代理抓包

但是有的 app 检测到 root 后就退出,或者检测到代理就退出,有的还只信任 app 内自带的私有证书,这些就很难搞了

https://zhuanlan.zhihu.com/p/46433599 可以参考
ysc3839
2022-03-22 17:09:03 +08:00
SSLUnpinning 2.0
ysc3839
2022-03-22 17:10:03 +08:00
@LxnChan #9 市面上的模拟器有 ARM 模拟功能的,不需要应用支持 x86 也可以运行
clf
2022-03-22 17:13:34 +08:00
手机虚拟机装 root 的镜像呗
deplivesb
2022-03-22 17:27:16 +08:00
Xposed
tsanie
2022-03-22 17:29:55 +08:00
实在不行自编译 aosp ,把 mitm 证书内置为系统证书(
learningman
2022-03-22 17:30:57 +08:00
@LxnChan #9 root 检测本身也可以被 hook 的,一直不能 root 多束手束脚啊
mxalbert1996
2022-03-22 17:37:39 +08:00
先用 Magisk 来 root
然后用 https://github.com/Magisk-Modules-Repo/movecert 把用户证书转成系统证书
再用 Shamiko ( https://github.com/LSPosed/LSPosed.github.io/releases) 对特定应用隐藏 root
mxT52CRuqR6o5
2022-03-22 17:42:39 +08:00
你那应该不是不信任非系统证书,而是有 ssl pinning ,只信任特定的证书
我的建议就是用安卓 5 ,装个 xposed 插件去除 ssl pinning 限制,再找些插件防止 root/xposed 检测
mxT52CRuqR6o5
2022-03-22 17:43:01 +08:00
定位速度问题再找一些虚拟定位去解决
libook
2022-03-22 17:51:07 +08:00
买个可解锁的手机(无锁更方便,如 Pixel ),system 挂载成可写之后把证书转 PEM 格式、按命名规则改好名字,放在特定的目录下就可以了,不需要手机持续 root 状态。

当然 root 了也可以,操作更方便一些。

急着用可以找些电脑上用的自带 root 的安卓模拟器,比如夜神模拟器,就是兼容性不是特别好,有时候会闪退。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/842130

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX