Android抓包
要使用Telerik Fiddler Classic捕获Android设备的网络流量,您需要执行以下步骤:
在Fiddler Classic上进行设置:
- 确保已安装并使用BouncyCastle作为证书生成器。较新的Android版本会拒绝有效期超过两年的证书,目前只有BouncyCastle生成器可以输出兼容Android设备的证书。(非必须)
勾选Fiddler–Tools–Options–Https中捕获Https选项
Action中信任所有证书。
设置代理端口为8888:
保存选项后重新启动一下Fiddler程序。
在Android设备上进行设置:
在您的Android设备上,转到“设置”>“无线和网络”>“更多…”>“移动网络”>“接入点名称”。
选择或创建一个接入点,然后编辑它。
将“代理”字段设置为Fiddler Classic机器的IPv4地址(cmd使用ipconfig命令可查看或者在fiddler右上角也可以查看),将“端口”字段设置为8888。
保存设置。
为了验证此配置,请在Android设备上的Chrome浏览器中访问
http://ipv4:8888/
。Chrome应该显示Fiddler Echo Service网页,并且流量应该出现在Fiddler中。
一般这样就可以进行抓包了,如果抓不到包就安装下证书。
下载证书进行安装
安装Fiddler证书:
- 如果下载没有自动开始,从顶部向下滑动并点击设置图标。
- 转到“个人”>“安全”。
- 点击FiddlerRoot.cer文件。
- (可选)为证书输入名称。
- 为了验证配置,请点击“受信凭证”>“用户”,这应该会显示Fiddler证书。
使用后清理:
使用完Fiddler后,回到之前的代理设置屏幕并移除代理设置。
IOS抓包
为了在Telerik Fiddler Classic中捕获iOS设备的网络流量,您需要按照以下步骤进行配置:
在Fiddler Classic上设置
打开Fiddler Classic并停止捕获。
转到“工具”>“选项”>“HTTPS”,禁用“捕获HTTPS连接”。
关闭Fiddler Classic并安装BouncyCastle(CertMaker.dll)。这将改变证书生成方式,Fiddler Classic将使用单一根证书而不会为每个会话生成中间证书。
安装完成后,重新打开Fiddler,然后在“工具”>“选项”>“HTTPS”菜单中选择“操作”>“重置所有证书”。这将删除所有以前使用的证书并信任新证书。
同意所有系统对话框后,启用HTTPS捕获和解密(在“工具”>“选项”>“HTTPS”中勾选“捕获HTTPS连接”和“解密HTTPS流量”)。
打开“工具”>“选项”>“连接”,并勾选“允许远程计算机连接”。
重启Fiddler。
确保防火墙允许向Fiddler Classic进程的传入连接,并且没有阻止包括应用程序列表中的所有传入连接。
在iOS设备上设置
- 在iOS设备上打开“设置”>“通用”>“VPN与设备管理”,移除所有DO_NOT_TRUST_FiddlerRoot配置文件。
- 进入“设置”>“WiFi”,找到当前网络并点击旁边的i图标。
- 滚动到底部,选择“手动”配置代理。
- 在“服务器”字段输入Fiddler Classic机器的IP地址,在“端口”字段输入默认监听端口8888,最后保存。
- 禁用iPhone的数据连接。
- 验证iOS设备是否能够通过浏览器访问
http://FiddlerMachineIP:8888
,该地址应返回Fiddler Echo服务页面。
安装并信任Fiddler证书
- 在iOS设备的浏览器中输入Fiddler Classic echo服务地址:
http://ipv4:8888
。 - 点击Fiddler Classic根证书链接下载证书。
- 确保证书是通过BouncyCastle证书生成器创建的。
完成上述步骤后,您应该能够在Fiddler Classic中捕获来自iOS设备的HTTP和HTTPS流量。如果遇到任何安全证书问题,确保按照文档的进一步指示来解决。
ps:如果安装的证书没有信任,可以在IOS:通用–关于本机,中信任一下证书