抓包分析 | APP 抓不到包怎么办?
- 2019 年 11 月 23 日
- 筆記
简单对遇到的 APP 不好抓包的情况做个总结,篇幅较短只讲述方法,没有实战。
单向认证的APP
单向认证和双向认证
•单向验证的情况是客户端校验证书,校验出错就无法访问•双向认证的情况是客户端校验证书的时候,服务端也要校验证书,有一端证书校验失败都无法访问数据。缺点是服务器的压力比较大
处理方法
一般是使用 JustTrustMe
原理是通过 Xpose Hook 校验的 API
APP不走代理
如何确定 APP 不走代理?
•关闭代理服务器(fiddler等代理抓包工具)•使用手机访问浏览器网页访问失败,确定代理失效•使用APP访问,正常访问确定 APP 不走代理访问网络
处理方法
•更换不基于代理类型的抓包工具(HTTP Analyzer V7–缺点没办法用在真机、HTTP Debug Pro、手机端的HttpCanary-基于VPN)•hook – 先反编译看看他是使用了那个框架,然后针对性的hook — 菜鸡劝退•iptables 强制拦截转发
代理检测的APP
挂上代理之前APP访问正常,挂上代理之后APP无法使用显示网络出错等情况
•代理检测(hook 代理检测的方法)•证书检测(用 JustTrustMe )
双向认证的APP
双向认证的情况是客户端校验证书的时候,服务端也要校验证书,有一端证书校验失败都无法访问数据。
不过在双向认证的APP中要做到双向验证,在APP中一般要配置好服务器端验证的证书,所以在客户端中我们可以找到一个服务端的证书,我们只要在 Fiddler 中配置好这个证书就可以请求了。
ps:证书一般带有密码,需要反编译找到密码,之后导入至系统当中,再从系统中导出为 .cer
证书格式,之后在 FiddlerScript 中配置即可。