雷电模拟器证书安装及使用Fiddler或Charles对模拟器的app进行抓包(含抓取app内使用https协议的包)

本文中的相关环境版本信息如下:

windows系统:windows11 家庭中文版本

Fiddler版本:fiddler5

Charles版本:4.6.8

OpenSSL版本:OpenSSL 3.2.1 30

雷电模拟器:雷电模拟器9.0.67(9)

MT文件管理器:2.13.0 该软件需要安装到雷电模拟器里面 该应用是一个android应用程序

一、相关软件的下载和安装

1.1、Openssl下载并安装

官方地址:https://www.openssl.org/source/

大咖打包好的(推荐)下载地址:https://slproweb.com/products/Win32OpenSSL.html
懒人分享版:https://pan.baidu.com/s/1uJkojuNOP6FULoVkWtv0wQ?pwd=vjzg (64位的)


根据自身电脑情况选择下载安装对应的32位还是64位的版本。



1.1.2:配置openssl的环境变量

将openssl的安装目录下的bin目录添加到环境变量里面,示例图如下:


232323.png


上面的环境变量配置好 并保存后 然后新开一个cmd命令行窗口 在cmd命令行中输入openssl version命令 如果能显示版本号 则表示环境变量配置成功,示例截图如下:

66666.png

1.2、雷电模拟器安装

雷电模拟器官方下载地址1:https://res.ldmnq.com/download/leidian9/ldinst_9.0.68.2.exe

雷电模拟器官方下载地址2:https://res.ldmnq.com/download/leidian9/ldinst_9.0.67.1.exe

懒人分享版:https://pan.baidu.com/s/1WSojIMPKabXv1426YvLmtA?pwd=2fxk


安装。。。忽略 自行安装 没啥好说的。


注意有几个设置点 必须设置 不然后续往模拟器的系统内部安装要抓取https的CA证书是安装失败的,安装失败也就会导致fiddler不能对模拟器里面的使用https协议的app进行抓包。。重点截图如下:

123.png

456.png


1.2.1 MT文件管理器安装

懒人网盘地址:https://pan.baidu.com/s/1nXchZDfxAMgE13z2j6vMQA?pwd=5j5f


直接把这个mt文件管理器的apk文件拖到雷电模拟器里面 雷电模拟器就会自动安装这个app程序了

1.3、Fiddler软件安装

官方下载地址:https://www.telerik.com/fiddler

如果从官方下载的话 最好是下载Classic版本的


懒人网盘地址1:https://pan.baidu.com/s/1nBTkMWrjoCFXZITbysw66w?pwd=j91w

懒人网盘地址2:https://pan.baidu.com/s/1J1HGnyoS-ne0saqW5f4G0g?pwd=am4y

二、相关软件环境配置

2.1、Fiddler相关设置

Fiddler配置安装证书 并导出证书 使期可以抓取https协议的数据包。工具栏选择Tools->Options... 然后按照下图示例进行设置并保存。

123.png


456.png


789.png

123.png


456.png


789.png


题外话:Tools->Options->HTTPS->Actions列表的菜单介绍

①、Trust Root Certificate:安装信任Fiddler证书

②、Export Root Certificate to Desktop:导出Fiddler证书到桌面

③、Open Windows Certficate Manager :打开电脑的证书管理器

④、Learn More about HTTPS Decryption:进入官方文档,学习抓包HTTPS

⑤、Remove Interception Certficates:删除拦截证书

⑥、Reset All Certficates:重置所有证书


经过上面这一步骤我们已经安装了证书并且导出证书到电脑桌面了。

101112.png

2.2、Openssl工具上场

打开cmd命令行 并将cmd命令行中的路径进入桌面路进行 进行下面的操作

1、cer证书转.pem证书:openssl x509 -inform der -in "FiddlerRoot.cer" -out "FiddlerRoot.pem"

    #提示:pem证书转.cer证书:openssl x509 -outform der -in xxx.pem -out xxx.cer

2、查看pem证书文件的hash值:openssl x509 -subject_hash_old -in FiddlerRoot.pem

3、将hash开头的值 作为.pem的文件名 注意 pem文件重命名后 文件后缀名就从.pem 变成了 .0 这种后缀格式了!

4、使用ren命令 将pem文件进行重命名:ren FiddlerRoot.pem 269953fb.0

123.png


456.png

2.3、雷电模拟器中的MT文件管理器登场或者使用adb工具将证书文件推送到模拟器中的系统根证书目录中

将桌面上的269953fb.0文件拖到模拟器中的任意目录 本文中 这里拖到了/sdcard/目录中。


①、MT文件管理器方式:使用MT文件管理器将 /sdcard/269953fb.0证书文件复制或移动到模拟器系统内部的根证书目录中 即: /system/etc/security/cacerts/ 目录中

最后使用mt文件管理器 将269953fb.0证书文件 权限更改为644 示例截图如下:

qaqaqaq.png

注意:权限一定要更改,不然证书文件不会生效的 最终fiddler还是抓不到雷电模拟器里面使用https协议传输的app应用程序的数据包。


关于644权限的解释:644的意思是本用户有可读可写权限,群组有只读权限,其他用户为只读权限。


解释:

数字的三位分别代表:当前用户,群组用户,其他用户。

然后权限可以分为:读r=4,写w=2,执行x=1

所以:644为(4+2)(4)(4),即〔当前用户〕读,写权限,〔群组用户〕读权限,〔其它〕读权限。


②、使用adb工具 将269953fb.0证书文件传输到模拟器中的系统根证书目录中 即:/system/etc/security/cacerts/ 目录中

cmd命令行中进入雷电模拟器中的安装目录,然后执行以下命令:

PS E:\software\leidian\LDPlayer9>.\adb.exe push C:\Users\zhou\Desktop\269953fb.0 /system/etc/security/cacerts/ 就是把269953fb.0证书文件复制雷电模拟器中的 /system/etc/security/cacerts/目录下

然后使用.\adb.exe shell 进入雷电模拟器中的shell命令中,如果提示以下错误:
* daemon not running; starting now at tcp:5037
* daemon started successfully
adb.exe: device offline
则执行 PS E:\software\leidian\LDPlayer9> .\adb.exe devices
List of devices attached
emulator-5554   device

然后再次执行
PS E:\software\leidian\LDPlayer9> .\adb.exe shell
star2qltechn:/ $  #此时就已经进入雷电模拟器中的shell命令终端中了


然后在shell命令中执行 chmod 644 /system/etc/security/cacerts/269953fb.0 修改权限

#最好不要用这种方式操作 因为经常出现意想不到的意外错误 推荐使用上面的MT文件管理器的方式进行操作。

2.4、雷电模拟器中的WiFi填入Fiddler代理的IP和端口

①、获取Fiddler代理的IP和端口

②、查看IP

9999.png

123.png

③、雷电模拟器中的wifi的代理填入fiddler中的ip地址和fiddler设置的监听8888的端口

123.png

④、最后 为了确保万无一失 全部重新启动fiddler和雷电模拟器

3、使用Fiddler对雷电模拟器中的app 使用https协议的抓包示例

2323232323.png

ok 大功告成~~~ 就这套搭建技术 某宝卖100+左右哦~~~

尾声

有的人还在雷电模拟器中 打开浏览器 输入Fiddler的ip和端口 即本文中的 192.168.1.3:8888 然后进行下载fiddler证书 进行安装 我感觉这个没啥作用 因为这个安装的ca证书并不是安装到雷电模拟器中的系统根证书的目录中 而是安装到了用户的证书目录中。不过还是记录下吧 具体操作步骤如下所示:

123.png

456.png

789.png

二、使用charles工具抓包的相关配置

前置准备工作:先将charles工具配置好可以抓取https数据包,具体配置参考:windows下Charles抓包PC端微信小程序数据包(包含https数据包)

2.1、将charles证书保存到桌面并转换格式

1.png

2.png

2.2、查看charles.pem文件的hash值

打开cmd命令行 并将cmd命令行中的路径进入桌面路径,然后 进行下面的操作

1、查看pem证书文件的hash值:openssl x509 -subject_hash_old -in charles.pem

2、将hash开头的值 作为.pem的文件名 注意 pem文件重命名后 文件后缀名就从.pem 变成了 .0 这种后缀格式了!

3、使用ren命令 将charles.pem文件进行重命名:ren charles.pem e1315a90.0

3.png

2.3、最后把 e1315a90.0 这个证书文件 用mt文件管理器或者用push命令 传送到雷电模拟器的系统证书目录里边(即: /system/etc/security/cacerts/ 目录中),把文件放到这个目录后,然后把文件权限改为644

具体操作 参考上面在fiddler上这部分的相关操作

2.4、使用charles工具 抓取雷电模拟器中某个使用https协议的app应用效果图如下

6.png

三、最后 我们 可以看一下 雷电模拟器 上的设置 

设置 -》 安全性和位置信息 -》 加密与凭据 -》 信任的凭据 -》 系统

4.png


5.png

结束语

搞定~~~~



声明:禁止任何非法用途使用,凡因违规使用而引起的任何法律纠纷,本站概不负责。

小周博客
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

精彩评论

全部回复 0人评论 7,777人参与

loading