前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >App抓包出现网络错误的解决办法

App抓包出现网络错误的解决办法

原创
作者头像
幻影龙王
修改2021-09-13 10:53:18
7.9K0
修改2021-09-13 10:53:18
举报
文章被收录于专栏:幻影龙王

之前我刚开始学抓APP包的时候经常用fiddler或者charles,配置好https及手机证书后发现有的app能抓到,有的不行,不能抓到包的APP基本会报一个错,叫”网络错误”。

那这个是为什么呢,经过我的搜索查证,发现有这么几个原因(不足请在评论区指出):

  • 在Android 7.0(API 24) ,有一个名为“Network Security Configuration”的新安全功能。这个新功能的目标是允许开发人员在不修改应用程序代码的情况下自定义他们的网络安全设置。如果应用程序的SDK高于或等于24,则只有系统证书才会被信任。所以用户导入的Charles根证书是不被信任的。所以就抓不到包了。
  • ssl-pinning: APP在开发时就将服务端证书一块打包到客户端里。这样在HTTPS建立时与服务端返回的证书比对一致性,进而识别出中间人攻击后直接在客户端侧中止连接。

针对以上两张情况,目前都有解决办法,先说第一种情况:

  • 换一个 Android 7 以下的手机抓包(快捷方便,我就这么用的2333)
  • 用 Android 模拟器抓包
  • Root手机,将证书移到/system/etc/security/cacerts下,目前已经有 APP(root-certificate-manager-root) 支持一键配置
  • 解包apk,改配置文件,再重新打包

第二种情况:

主要通过hook解决,因为平时抓包没这种需求,所以不是很了解,只把网上已知的方法记录下。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档