fiddler手机抓包/模拟器抓包配置代理没有网络问题

本文详述了在Android 7.0及以上版本的模拟器中,如何解决Fiddler抓包时应用无法联网的问题。关键步骤包括:导出Fiddler证书为PEM格式,计算证书哈希值,重命名证书文件,通过ADB将证书推送到系统目录,并修改系统权限。最后成功安装证书,实现Fiddler对模拟器的网络流量抓包。
摘要由CSDN通过智能技术生成

最近工作需要对app进行网络抓包,安装了fiddler工具,使用夜神模拟器模拟手机抓包,各种配置都配置完了,但是app还是不能联网,现将解决方法记录如下:


【问题原因】

当我们在手机或者模拟器安装fiddler证书时,证书都是安装在用户证书目录下的,Android7.0版本之后的应用是默认只信任系统证书,不信任用户证书的,所以我们有两种方法去解决这个问题。1、将Fiddler证书装到系统证书目录下,伪装成系统证书,2、使用Android5.0版本的手机或者模拟器,下面使用第一种方法。

1、导出fiddler证书

1、在此之前请确保你的fiddler已经安装配置完成!
2、首先关闭fiddler,然后下载fiddlercertmaker.exe工具,双击下载好的fiddlercertmaker.exe(确保已关闭Fiddler),会弹出提示导入证书成功这个对话框,点击确定
在这里插入图片描述

3、导出fiddler证书到电脑桌面,Tools -> Options -> HTTPS -> Actions -> Export Root Certificate to Desktop

在这里插入图片描述

完成之后在电脑桌面会出现一个FiddlerRoot.cer证书
在这里插入图片描述

2、安装openssl

1、到openssl下载地址下载好windows版的openssl

在这里插入图片描述
2、点击安装,一路点击下一步
3、安装完成后需要配置环境变量,将安装目录的bin目录配置到环境变量
在这里插入图片描述

4、打开终端输入openssl version 或者输入openssl出现下图信息表示安装成功

在这里插入图片描述
在这里插入图片描述

3、证书格式转换

1、将Fiddler cer证书转pem证书,在cmd输入如下命令:openssl x509 -inform DER -in 电脑桌面证书路径.cer -out 电脑桌面证书路径.pem

openssl x509 -inform DER -in C:\Users\Administrator\Desktop\FiddlerRoot.cer -out C:\Users\Administrator\Desktop\FiddlerRoot.pem

2、计算pem证书的hash值,输入如下命令:openssl x509 -inform PEM -subject_hash_old -in 电脑桌面证书路径

openssl x509 -inform PEM -subject_hash_old -in C:\Users\Administrator\Desktop\FiddlerRoot.pem

在这里插入图片描述
上图的e5c3944b就是pem证书的hash值。

3、使用e5c3944bpem证书重命名,命令如下:ren 电脑桌面证书路径 证书hash值.0

ren C:\Users\Administrator\Desktop\FiddlerRoot.pem e5c3944b.0

4、安装证书到系统目录

这里我使用的是夜神模拟器

1、打开终端输入adb connect 127.0.0.1:62001 连接夜神模拟器(如果出现'adb' 不是内部或外部命令,也不是可运行的程序 或批处理文件。那么需要找到SDK安装路径下的platform-tools路径,输入cmd打开终端即可)
2、cmd 输入adb shell
3 、cmd 输入 cd /system/etc/security,
4、cmd 输入 ls -l 查看权限,此时没有写入的权限

在这里插入图片描述
5、cmd 输入chmod 777 cacerts 此时对目录拥有写入权限,可以再次输入老ls -l查看目录权限
在这里插入图片描述
现在已经拥有写入权限。

如果输入chmod 777 cacerts 出现 Read-only file system
在这里插入图片描述
需要重新挂载一下系统,输入mount -o remount,rw /system再次输入chmod 777 cacerts就成功了。

6、cmd输入exit退出shell终端,然后输入adb push C:\Users\Administrator\Desktop\e5c3944b.0 /system/etc/security/cacerts,将事先转换好的Fiddler证书推送到夜神模拟器的/system/etc/security/cacerts目录下
在这里插入图片描述
此时已经将fiddler证书安装到了模拟器的系统证书目录里了,打开夜神模拟器

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

大功告成!可以看到fiddler证书已经安装到系统目录了。
确保模拟器设置好了代理IP和端口,此时打开fiddler抓取模拟器的包就不会出现没有网络的问题了。

最后,特别感谢!Android 7.0+模拟器Fiddler抓包详细教程

  • 7
    点赞
  • 56
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
Fiddler是一个常用的用于抓包分析网络流量的工具。根据引用,早期版本的雷电模拟器在访问应用内嵌网页时可能会出现加载问题。为了解决这个问题,可以考虑切换到主流版本的Fiddler,如Fiddler 5 雷电模拟器 4.0。你可以下载并安装这个版本的Fiddler。 引用提到了解决安卓手机不能抓包的两种方法:一是将手机系统换成低版本的安卓系统,二是获取手机的root权限并将证书制作成系统证书。如果你的手机不符合这些条件,你可以考虑在电脑上使用模拟器进行抓包。因此,使用Fiddler雷电模拟器是一个可行的解决办法。 总结起来,如果你遇到了Fiddler抓包雷电模拟器问题,可以尝试切换到主流版本的Fiddler,如Fiddler 5 雷电模拟器 4.0,并在电脑上使用模拟器进行抓包。这样可以解决早期版本在访问应用内嵌网页时可能出现的加载问题,并避免手机不能抓包的限制。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [fiddler5+雷电模拟器4.0对app抓包设置](https://blog.csdn.net/u011463397/article/details/125863606)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] - *3* [fiddler+安卓雷电模拟器+解决无法抓包问题,看我就对了,一站式解决问题,告别到处搜文章](https://blog.csdn.net/weixin_43391813/article/details/130850778)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值