在日常工作中比较喜欢使用Charles对手机进行抓包。
之前用的一直是雷电模拟器和一些较低安卓版本的手机。
对于雷电模拟器发布的Android7.1.2版本的模拟器也比较感兴趣,就尝试着使用Charles进行抓包,但是在使用的时候发现无法对公司的接口进行抓包了,试了很多方法也没用,上网查询后才发现Charles的证书在Android7.0及以上系统会失效。导致无法获取到HTTPS的包,个人也是很喜欢钻研这些东西,发现了一个比较好的方法。这里分享给大家
1、准备一台模拟器或者安卓手机(Android版本7.0及以上,我这里只试验了7.1.2,其它版本有兴趣的可以去试试
2、手机必须要ROOT权限
3、Charles抓包环境部署
4、获取Charles证书
保存至桌面,随意命名就行
5、打开安卓模拟器
将模拟器拖至模拟器,一般来说都是在Pictures文件夹内
6、安装证书
->这里推荐先把证书给清空,方便找到Charles的证书
7、安装证书
如果是第一次安装会提示设置密码
这里随意命名
8、安装完成后可以在这里查看到安装的证书
9、下载RootExplore
10、使用下载的RootExplore进入以下目录:/data/misc/user/0/cacerts-added
可以看到目录下面有个文件
11、复制这个文件
12、打开/system/etc/security/cacerts这个目录,可以发现下面有很多.0结尾的文件
将刚刚复制的文件放进去
13、
确保这个文件的权限是跟其它文件一致,都为 rw-r--r-- 一般来说默认就是这个,如果不一样就手动修改一下
14、重启手机
这时候就可以抓到HTTPS包了