前言:
首先理解一下,这个不只是证书到浏览器,而是抓包证书到安卓7.0+手机上的文章; 还有一点区分,在浏览器上装的证书,只是让抓包工具可以抓取手机浏览器的包,而不是抓取手机app上的包;
如果你的证书只是简单的在浏览器下进行安装,那么你的手机app是走不了代理网络的;因此,本章也就是继续Fiddler工具的操作和功能时-----定位到步骤图(助力抓包)-CSDN博客 ,进行深一步的前期步骤!
正文:
1.在wifi的情况下,连接上手机
a.数据线连接,找到手机;
使用
adb diveces
查看手机是否连接上了;
b.为手机设定一个端口号;
adb tcpip XXXX
#XXXX 为手机连接的端口号,自己设定
为手机设定一个端口号 ;如果出现(如同)的问题,可以直接kill,再次重连;
c.手机通过wifi连接到电脑;
拔掉数据线后,确认手机和电脑都是处于同一个网络下,再进行连接;
查看自己电脑的ip,并通过自己的手机连接上wifi,记住手机连wifi的那个ip
#cmd下
ipconfig
(这个是电脑上的ip地址)
找到wifi连接的ip,通过(关于手机-->ip地址上查看(和电脑上不一样))
adb connect 手机状态下的ip地址(不是电脑的):刚刚设定的端口号
当我们再次通过adb devices连接手机的时候,发现已经连接山了这个网络的设备了;
d.挂掉连接;
2.制作电脑的证书到手机上(每个电脑的证书都是唯一的,一定要回做证书)
参考这篇文章:
手机模拟器(mumu)_charles上网安全证书----保姆级处理!_mumu模拟器安装证书-CSDN博客
本章我就换一种,以fiddler的证书去制作,更加简洁:
1.安装openssl(这个不明白的可以通过上面的文章去查看)
2.在fiddler导出的证书路径下,cmd
然后通过:
openssl x509 -inform DER -in FiddlerRoot.cer -out cacert.pem
将这个cer的证书先转换成pem的版本;再进行造手机证书,方法到最后一定要记得更名;
openssl x509 -inform PEM -subject_hash_old -in cacert.pem
3.把证书放到手机系统证书文件下;
有些人通过在浏览器输入ip+抓包端口号的办法,直接从浏览器下载的证书,只能够保证抓包工具能抓到手机浏览器的包;而手机里app的网络就不会走抓包工具了!! 这一点一定要明确,只有把抓包证书安装到手机的系统证书文件夹下,才能彻底抓这个手机包!
1.正常的手机root这里就不说了!
2.记住这个文件夹, '/system/etc/security/cacerts' 这个文件夹是手机证书的地方;且只能在超级模式下进行查看证书; (这里看到的证书已存在,说明手机安装了其他电脑的证书,我们只需要进行覆盖就可以了)
3.把证书push到手机系统文件夹内
首先进入到刚刚更改证书名字的文件路径下;
先把这个证书导到临时目录里面,
adb push <269953fb.0的绝对路径> /data/local/tmp/
#例如adb push D:\feddle_root_book\269953fb.0 /data/local/tmp/
然后 再通过这是手机的临时文件夹,导入到系统文件中:
mv data/local/tmp/269953fb.0 /system/etc/security/cacerts/
如果出现推送失败,可以参考这个人的文章: