之前我刚开始学抓APP包的时候经常用fiddler或者charles,配置好https及手机证书后发现有的app能抓到,有的不行,不能抓到包的APP基本会报一个错,叫”网络错误”。...那这个是为什么呢,经过我的搜索查证,发现有这么几个原因(不足请在评论区指出):
在Android 7.0(API 24) ,有一个名为“Network Security Configuration”的新安全功能...这个新功能的目标是允许开发人员在不修改应用程序代码的情况下自定义他们的网络安全设置。如果应用程序的SDK高于或等于24,则只有系统证书才会被信任。所以用户导入的Charles根证书是不被信任的。...针对以上两张情况,目前都有解决办法,先说第一种情况:
换一个 Android 7 以下的手机抓包(快捷方便,我就这么用的2333)
用 Android 模拟器抓包
Root手机,将证书移到/system.../security/cacerts下,目前已经有 APP(root-certificate-manager-root) 支持一键配置
解包apk,改配置文件,再重新打包
第二种情况:
主要通过hook解决