当前位置: 首页 > news >正文

(12)-Fiddler抓包-Fiddler设置IOS手机抓包

1.简介

Fiddler不但能截获各种浏览器发出的 HTTP 请求,也可以截获各种智能手机发出的HTTP/ HTTPS 请求。

Fiddler 能捕获Android 和 Windows Phone 等设备发出的 HTTP/HTTPS 请求。同理也可以截获iOS设备发出的请求,比如 iPhone、iPad 和 MacBook 等苹果设备。

分享Fiddler 如何截获iOS移动端发出的 HTTP/HTTPS 请求。

2.环境准备

Fiddler 如果想要实现手机抓包,需要先满足下面 3 个条件:

(1)电脑上安装有 Fiddler 抓包工具。

(2)安装有 Fiddler 的电脑必须跟手机处在同一个网络里,并且手机网络代理必须设置为fiddler,当我们的手机发送数据时必须经过Fiddler这一层服务。

(3)在 Fiddler 中设置好捕获 HTTPS(具体方法请百度)。

3.Fiddler截获手机原理图

Fiddler 作为代理服务器,可以接收远程机器发来的 HTTP/HTTPS 协议的数据包,并且将其转发到 Web 服务器。

4.截获手机发出的 HTTP 包有什么作用

1:APP 开发人员利用 Fiddler 可以截获手机发出的 HTTP 包,从而调试 APP 程序。

2:软件测试人员可以用其来测试智能手机上的软件,做接口测试或者安全测试。

3:截获了 HTTP/HTTPS 后,可以下断点修改 HTTP 请求和 HTTP 响应。

PS:下面是重点 配置项

5.IOS手机抓包配置

5.1Fiddler配置

在Fiddler中我们还需要设置远程连接权限和端口号,具体操作步骤如下:

1.启动 Fiddler,单击菜单栏中 Tools->Fiddler Options->Connections,选中“Allow remote computers to connect(允许远程计算机连接)”,然后设置一个端口,也可以默认为8888。如下图所示:

选中后就表示允许远程机器把 HTTP/HTTPS 请求发送到 Fiddler 上来(配置完后记得要重启 Fiddler)。同时,我们还能看到 Fiddler 的工作端口号是 8888。

5.2确保手机和PC在同一网络环境下

手机和电脑必须在同一局域网,手机最好也关闭4G/5G网络流量, 并且使用wifi,让手机和fiddler在同一局域网下,具体操作步骤如下:

5.2.1获取Fiddler所在机器的IP地址

1.让android手机的网络进出口指向局域网中fiddler服务地址, 那么我们这里就必须要知道Fiddler的ip地址和端口号(port)。

这里Fiddler的ip地址就是我们当前电脑中的本机ip地址。查看电脑的 IP 地址,按快捷键【Windows+R】,调出运行窗口。输入 CMD,可以打开CMD 命令行工具;输入命令“ipconfig”,可以找到 IP 地址(找到其中的IPv4地址即为本机ip)。
一个电脑可能有多个网卡,注意要找到真正的 IP 地址,例如某 IP 地址是 10.0.0.11,如下图所示:

2.可以对照一下当前所安装的Fiddler中的ip地址是否一致,你可以直接在fiddler上 将鼠标放置于 Online 工具上就会显示本机ip地址,如果一样那么就可以确保一会设置手机和电脑在同一个局域网内。如下图所示:

5.3iOS手机设置网络代理

1.打开IOS设备的 设置 -> 无线局域网,找到你要连接的网络,点击右边的符号,如下图所示:

2.打开网络设置对话框,下拉到最后,找到配置代理,点击有点的 > 符号,弹出网络代理配置,进行如下配置,并点击右上角的 存储,如下图所示:

5.4测试Fiddler捕获手机发出的HTTPS

启动 IOS设备中的浏览器或应用,在fiddler程序中可以看到完成的请求和响应数据,如图所示:

注意:

在上述完成的请求中,可以看到存在很多的 Tunnel to xxx 443 问题,这是由于网页中有很多请求都是 HTTPS ,因此需要在手机中安装 Fiddler 生成的证书,并在手机中信任该证书。

6.ios手机下载安装与配置证书

跟android一样,我们使用Fiddler来抓取ios手机的HTTPS数据包也是需要安装根证书从而来解码我们的HTTPS数据报文,

6.1下载证书

那么其实下载证书步骤其实也跟android手机是差不多的。

1.使用ios手机中自带的的safari浏览器,输入配置好的ip+端口跳转到 Fiddler Echo Service 证书下载页(其他浏览器可能不成功),如下图所示:

2.点击 FiddlerRoot 证书,将其下载到手机中,打开手机 设置 -> 通用 -> VPN与设备管理,找到 已下载的描述文件(FiddlerRoot 证书),如下图所示:

3.点击 DO_NOT_TRUST_FiddlerRoot,点击右上角的 安装,安装完后,点击右上角的 完成,如下图所示:

4.由于iOS手机提供了系统层面的设置,所以在确认证书安装好、代理设置没问题后,需要对已安装的证书进行信任设置。即,点击 设置 -> 通用 -> 关于本机 -> 证书信任设置,开启 Fiddler 证书信任,接受这样的对话,即允许第三方窃听你的所有通信。如下图所示:

5.到此,Fiddler 就可以抓取 HTTPS 请求了。可以看出,iOS 上的设置要比 Android 上复杂一些,也反映出 iOS 更安全一些。

7.开始ios抓包

配置好PC端的Fiddler、手机也安装了证书、代理也设置之后,我们就可以在手机上操作app捕获数据包了,然后在Fiddler中查看发送的请求和响应报文了,如下图所示:

手机APP:

手机百度网页:

8.梳理

注意:

1.不使用Fildder 进行抓包时,建议将手机网络代理关闭,以防有其他网络问题。

2.必须要开启证书信任,否则会出现无法抓到HTTPS包的情况。

3.如果还是抓不到包,需查看一下防火墙是否关闭,是否没有允许Fiddler程序通过防火墙,或者检查一下证书是否出现问题,或者 删除所有的证书之后 ,重新安装Fiddler与手机的证书重置后再次尝试抓包!

http://www.xdnf.cn/news/947359.html

相关文章:

  • Mysql8 忘记密码重置,以及问题解决
  • 数据可视化交互
  • 计算机网络自定向下:第二章复习
  • GPIO(通用输入输出)与LPUART(低功耗通用异步收发传输器)简述
  • 简繁体智能翻译软件
  • 大数据清洗加工概述
  • 【c语言】安全完整性等级
  • Vue 3 + WebSocket 实战:公司通知实时推送功能详解
  • linux cgroup内存/io/cpu/网络使用总结
  • 怎么开发一个网络协议模块(C语言框架)之(六) ——通用对象池总结(核心)
  • Android 开发中配置 USB 配件模式(Accessory Mode) 配件过滤器的配置
  • Android屏幕刷新率与FPS(Frames Per Second) 120hz
  • MySQL中【正则表达式】用法
  • 日语学习-日语知识点小记-构建基础-JLPT-N4阶段(33):にする
  • 今日学习:Spring线程池|并发修改异常|链路丢失|登录续期|VIP过期策略|数值类缓存
  • web vue 项目 Docker化部署
  • 【DVWA系列】——xss(Reflected)——Medium详细教程
  • 破解路内监管盲区:免布线低位视频桩重塑停车管理新标准
  • Python ROS2【机器人中间件框架】 简介
  • leetcodeSQL解题:3564. 季节性销售分析
  • 均衡后的SNRSINR
  • idea 设置git提交快捷键
  • 【习题】DevEco Studio的使用
  • 《从零掌握MIPI CSI-2: 协议精解与FPGA摄像头开发实战》-- CSI-2 协议详细解析(四)DPHY ECC
  • LangGraph 应用实例解析
  • 归并排序算法及其在算法中的应用
  • 使用Python 构建支持主流大模型与 Ollama 的统一接口平台
  • 查找日志文件中​​最后一次出现某个关键词的上下 20 行​​
  • ZYNQ学习记录FPGA(二)Verilog语言
  • matlab自控仿真【第一弹】❀传递函数和输出时域表达式