Android app协议分析之如何用模拟器抓https数据包
前言
近日因需分析一款app协议,遂记录。
一、基础方案
1.fiddler
+ 雷电
去掉作为系统代理后重启fiddler
设置WIFI代理
安装本地根证书
2.提示证书有问题
fiddler
中能抓到部分 http/s
包
依旧提示证书有问题
3.证书权限不足
可能是证书权限不足
也可能是其他问题
期间尝试了很多方法
与其琢磨一个问题都不清楚的问题
考虑能否绕过也是一种解决思路
二、绕过证书效验
1. Xposed
+ JustTrustMe
Xposed
在雷电商店中直接安装上即可JustTrustMe
会放在在本文末尾的附件中
安装完成后重启模拟器
2.关键数据抓不到
此时再使用wifi代理的方式
可以发现不再提示证书错误
然而尝试抓app的数据
却发现部分关键数据抓不到
3.第三方网络库
APP在使用第三方网络库
像retrofit
okhttp
asychttpclint
时
是不走系统代理的
4.为何不用 Wireshark
Wireshark
中分析 https
不仅需要复杂的设置
而且远不及 web debug
类工具清晰
三、最终方案
fiddler
+ Proxifier
+ 雷电
+ Xposed
+ JustTrustMe
Proxifier
在某些特别的方面能发挥妙用
其原理并不复杂:
将原有的协议包装成 http/s
socks5
等转发到代理服务器
在 Proxifier
中设置好代理服务器及规则即可
默认的放行
总结
发现问题后解决之
循序渐进
提炼总结
附件
JustTrustMe
是一个开源项目
注意,原开源项目中的 Release 并不是最新编译
该附件来自看雪论坛