Fiddler系列课程笔记(三): HTTPS及安卓&iOS设备APP抓包

这篇具有很好参考价值的文章主要介绍了Fiddler系列课程笔记(三): HTTPS及安卓&iOS设备APP抓包。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Fiddler系列课程笔记(三): HTTPS及安卓&iOS设备APP抓包

1.HTTPS抓包

1.1 什么是HTTPS?

HTTPS (全称:Hyper Text Transfer Protocol over SecureSocket Layer),HTTPS 协议是由 HTTP 加上 TLS/SSL 协议构建的可进行加密传输、身份认证的网络协议,
主要通过数字证书、加密算法、非对称密钥等技术完成互联网数据传输加密,实现互联网传输安全保护。
设计目标主要有三个:

(1)数据保密性:保证数据内容在传输的过程中不会被第三方查看

(2)数据完整性:及时发现被第三方篡改的传输内容

(3)身份校验安全性:保证数据到达用户期望的目的地

因此,Fiddler 要实现 HTTPS 抓包关键点就是证书,有了证书才能对抓到的 HTTPS 流量进行解密/加密。

1.2 Fiddler HTTPS 抓包原理

Fiddler HTTP 抓包原理,如下图:
Fiddler系列课程笔记(三): HTTPS及安卓&iOS设备APP抓包
其实,Fiddler 是浏览器的服务器,而 Fiddler 是服务器的客户端。

在没有 Fiddler 的情况下,浏览器拥有的公开证书来自服务器,服务器保存私有证书。服务器使用私有证书对数据进行加密,浏览器使用公有证书对数据解密。

此时,我们添加了一个 Fiddler 作为代理,那么此时客户端拥有的公共证书应该来自 Fiddler,而 Fiddler 拥有私有证书的同时,还拥有来自服务器的公共证书。浏览器和服务器交互如下:

请求:浏览器使用 Fiddler 公共证书将数据加密,发送给 Fiddler。Fiddler 使用私有证书解密,然后将内容采用服务器的公共证书再次加密,发送给服务器,服务器使用自己的私有证书进行解密。

响应:服务器使用私有证书对响应数据加密,然后发送给 Fiddler。Fiddler 将收到的数据使用服务器的公共证书解密,然后再次使用自己的私有证书加密,将再次加密后的数据发送为浏览器,浏览器收到后使用 Fiddler 的公共证书进行解密,将解密的内容最终展现给用户。

下面将介绍怎样通过 Fiddler 抓取 HTTPS 请求。

1.3 配置&安装证书

①:Fiddler 默认情况下将HTTPS连接隐藏了的,查看菜单“Rules”->“Hide CONNECTs”是否被勾选,勾选即隐藏HTTPS连接。(不要勾选)
Fiddler系列课程笔记(三): HTTPS及安卓&iOS设备APP抓包
②:点击“Tools”->“Options”->“HTTPS”,分别勾选[Capture HTTPS CONNECTs]和[Decrypt HTTPs traffic]复选框。

[Capture HTTPS CONNECTs]:表示我们能够抓取到 HTTPS 连接。 [Decrypt HTTPs traffic]:表示会对收到的 HTTPS 流量尝试使用 Fiddler 的证书进行解码。 如下图: ③:如果勾选了该复选框,且以前没有安装 Fiddler 证书。此时,Fiddler 将弹出提示安装证书,该提示框提示“信任 Fiddler Root 证书?” 当然信任(不信任就玩不下去了),直接点击“Yes”即可。如下图: ④:Window 系统将弹出安全警告,点击“是”,安装 Fiddler Root 证书到 Windows 中。如下图: ⑤:接下来,提示是否将 Fiddler Root 证书添加到本机 Root 证书列表?直接点击“是”,系统提示证书添加成功。如下图:

⑥:如果你还是不放心证书是否真的安装成功了。可以在 HTTPS 选项卡中点击“Actions”,选择“Open Windows Certificate Manger”去打开 Windows 证书管理器。如下图:
Fiddler系列课程笔记(三): HTTPS及安卓&iOS设备APP抓包
⑦:在打开的证书管理器中,点击“操作”菜单,选择“查找证书”,在“包含”输入框中输入“Finddler”查找 Fiddler 相关的证书,如果能够正常看见 Fiddler 证书,说明证书安装成功。如下图:
Fiddler系列课程笔记(三): HTTPS及安卓&iOS设备APP抓包

1.4 抓包效果

通过前面一些列的操作,已经完成 Fiddler 抓取 HTTPS 的配置。此时,我们尝试访问一些 HTTPS 网站,查看 Fiddler 是否能够抓取到 HTTPS 请求,如下图:

1.5 [补]:HTTPS包抓不到,怎么解决?

如果你依然不能抓取到 HTTPS请求的包,那需要做一下检查:

  • 检查①:检查一下你使用的浏览器是否为Firefox,请切换到IE或者Chrome浏览器。
    Firefox抓取HTTPS流量稍微复杂些,后面章节重点介绍。

  • 检查②: 检查Fiddle 的右下角,是否有一个小图标(Capturing)
    Fiddler系列课程笔记(三): HTTPS及安卓&iOS设备APP抓包
    上图中,我们可以看见有一个 “Capturing” 图标。如果我们能够看见该图标,则表示Fiddler当前处于抓包中。如果此处没有该图标,则表示 Fiddler 没有抓包。

  • 检查③:查看菜单“Rules”->“Hide CONNECTs”是否被勾选,勾选即隐藏HTTPS连接。(不要勾选)
    Fiddler系列课程笔记(三): HTTPS及安卓&iOS设备APP抓包

  • 检查④:查看菜单“Tools”->“Options”->“HTTPS”,是否勾选[Capture HTTPS CONNECTs]和[Decrypt HTTPs traffic]复选框。(这两个都要勾选)
    保险起见,勾选后,在[Actions]设置中,点一下“Trust Root Certificate”,然后ok保存确认一下。
    Fiddler系列课程笔记(三): HTTPS及安卓&iOS设备APP抓包

  • 检查⑤:终极大招,重置fiddler所有证书。
    点击“HTTPS”选项卡中的“Actions”,点击“Reset All Certificates”去重置所有的 Fiddler Root 证书,重新安装证书,或者重启 Fiddler。
    Fiddler系列课程笔记(三): HTTPS及安卓&iOS设备APP抓包

如果最终还还不行,那就有点气人了哦! 卸载fiddler,重装吧~ 要不,不抓了叭!!! ╭(╯^╰)╮

2.Firefox-HTTPS抓包

前面章节介绍了Fiddler抓取IE和Chrome的HTTPS流量,本章将介绍Fiddler怎样抓取Firefox浏览器的HTTPS流量。 Firefox浏览器和[IE、Chrome的抓包]稍有不同。

这是因为 Chrome 和 IE 均是使用 Windows 证书管理起来管理证书,而 FireFox 则是使用自己的证书管理器来管理证书。

因此,要想使用 Fiddler 成功抓取 Firefox 的 HTTPS 流量,我们需要将Fiddler的根证书安装到 Firefox 的证书管理器中。

具体操作如下:

2.1 获取Fiddler根证书

①:点击“Tools”->“Options”菜单选项,进入 HTTPS 选项卡,点击“Actions”按钮,选择“Export Root Certificate to Desktop”下拉按钮,将 Fiddler 根证书导出到桌面。如下图: 下图提示导出成功:

2.2 Firefox导入Fiddler根证书

②:在 Firefox 设置页面搜索“证书”关键字,找到证书相关的配置。点击“查看证书”按钮,如下图:③:打开 Firefox 的“证书管理器”,在“证书颁发机构”标签页点击“导入”按钮去将 Fiddler 根证书导入到 Firefox。如下图:④:选择 Fiddler 根证书,如下图:⑤:提示是否要信任该证书,在证书信任提示框中,分别勾选“信任由此证书颁发机构来标识网站”和“信任由此证书颁发机构来标识电子邮件用户”。如下图:⑥:最后点击“确认”按钮,证书就安装完成了。

2.3 确定Firefox的代理方式

证书安装完成后,我们还需要查看 Firefox 的代理连接方式,选择“使用系统代理设置”或者手动配置代理。否则 Fiddler 可能抓不到 Firefox 的数据包。 选择“使用系统代理设置”,如下图:

如果选择“手动配置代理”,如下图:
Fiddler系列课程笔记(三): HTTPS及安卓&iOS设备APP抓包

2.4 访问HTTPS网站验证

Firefox 一切配置搞定后,就可以重启 Firefox,访问一个 https 网站,使用 Fiddler 去抓包,你会发现 Fiddler 能够抓取 Firefox 的 HTTPS 数据包了,如下图:
Fiddler系列课程笔记(三): HTTPS及安卓&iOS设备APP抓包

3. 安卓手机APP抓包

本章节将介绍卓手机怎样利用 Fiddler 抓取 APP 的 HTTP/HTTPS 数据流量。
Fiddler系列课程笔记(三): HTTPS及安卓&iOS设备APP抓包

注意:本文将以小米 6X 为例,不同手机的配置稍有不同

3.1 配置 Fiddler

点击打开“Tools”->“Options”->“Connections”选项,勾选“Allow remote computers to connect”允许远程计算机连接到 Fiddler。如下图:
Fiddler系列课程笔记(三): HTTPS及安卓&iOS设备APP抓包

3.2 为安卓手机安装证书

如果只是抓HTTP的包,不用安装证书,手动配置代理即可,但是如果要抓HTTPS的包,则需要安装证书。

使用手机浏览器访问 Fiddler 服务,根据上图可知,Fiddler 的端口为 8888(访问地址为 Fiddler所属主机的IP地址加Fiddler端口)。

访问: http://[Fiddler所在机器的IP地址]:[Fiddler端口]/ ,[http://192.168.1.3:8888/] 如下图:

点击“FiddlerRoot certificate”链接按钮,下载 Fiddler 的根证书。如下图:

打开浏览器的下载管理器,点击刚刚下载的 Fiddler 证书,安装证书。将该证书命名为 Fiddler。如下图:

视频中老师安装方式不太一样:打开设置>更多设置>系统安全>加密与凭据>从存储设备安装 证书安装完成后,可以在系统设置中搜索“凭据”,打开“信任的凭据”,找到刚刚安装的 Fiddler 证书。Fiddler 证书信息如下图:

3.3 为安卓手机配置代理

前面已经成功安装了 Fiddler 证书,下面将对手机进行代理配置。打开手机的设置,找到“WLAN”选项,如下图:

选择当前正在使用的 WIFI(注意:安装 Fiddler 的电脑必须和手机处于同一局域网,两者能够互通),点击查看 WIFI 的详细信息。如下图:

点击 WIFI 的代理,选择“手动”,然后设置代理的IP和端口。其中,主机名就是本机的ip,IP地址为Fiddler所在机器的IP地址 (可以通过Fiddler的右上角的[Online]查看本机IP地址),端口在Fiddler中配置的8888,如下图: 到这里,手机端的代理就配置 OK 了,接下来见证奇迹。

3.4 抓取安卓手机上APP的HTTP/HTTPS流量

先打开 Fiddler,且 Fiddler 处于抓包中。然后,在手机中打开“今日头条”APP,如下图: 此时,再看看 Fiddler,你会发现已经抓取了很多关于“今日头条”的 HTTPS 流量。如下图: 老师抓抖音视频的包,也是可以的:

4.iOS设备APP抓包

Fiddler系列课程笔记(三): HTTPS及安卓&iOS设备APP抓包
Fiddler系列课程笔记(三): HTTPS及安卓&iOS设备APP抓包
Fiddler系列课程笔记(三): HTTPS及安卓&iOS设备APP抓包

iPhone手机、iPad都属于iOS设备,iOS设备APP抓包和上述安卓设备抓包设置,差不多哈。

4.1 配置 Fiddler

①:点击打开菜单“Tools”->“Options”->“Connections”选项,勾选“Allow remote computers to connect”允许远程计算机连接到 Fiddler。如下图:
Fiddler系列课程笔记(三): HTTPS及安卓&iOS设备APP抓包
②:点击打开菜单“Tools”->“Options”->“HTTPS”,是否勾选[Capture HTTPS CONNECTs]和[Decrypt HTTPs traffic]复选框。(这两个都要勾选)
Fiddler系列课程笔记(三): HTTPS及安卓&iOS设备APP抓包

③:重启Fiddler,关闭防火墙,或者防火墙允许Fiddler进行远程连接。

4.2 为iOS设备配置代理

④:iOS设备点击设置>WiFi>打开连接WiFI设置,找到"配置代理",选择"手动",然后设置代理的IP和端口。如图所示: 设置代理的IP和端口。其中,主机名就是本机的ip,IP地址为Fiddler所在机器的IP地址。(可以通过Fiddler的右上角的[Online]查看本机IP地址,端口在Fiddler中配置的8888) 到这里,iOS手机端的代理就配置 OK 了,接下来见证奇迹。

4.3 抓取iOS设备上APP的HTTP流量

先打开 Fiddler,且 Fiddler 处于抓包中。然后,在手机中打开“柠檬班”APP,如下图:
Fiddler系列课程笔记(三): HTTPS及安卓&iOS设备APP抓包

4.4 为iOS设备安装证书

如果只是抓HTTP的包,不用安装证书,手动配置代理即可,但是如果要抓HTTPS的包,则需要安装证书。

⑤:iOS设备连接WiFi,确保iOS设备可访问http://[Fiddler所在机器的IP地址]:[Fiddler端口]/,该地址会返回Fiddler Echo Service页面。 如上图所示,iOS手机访问[http://192.168.1.89:8888/] : 如果要抓HTTPS的包,则需要安装证书。点击下载,如图所示:

⑥:证书安装成功后,在iOS设备-设置>通用>关于本机>证书信任设置中,信任刚安装的Fiddler证书。
Fiddler系列课程笔记(三): HTTPS及安卓&iOS设备APP抓包
Fiddler系列课程笔记(三): HTTPS及安卓&iOS设备APP抓包
Fiddler系列课程笔记(三): HTTPS及安卓&iOS设备APP抓包
Fiddler系列课程笔记(三): HTTPS及安卓&iOS设备APP抓包
Fiddler系列课程笔记(三): HTTPS及安卓&iOS设备APP抓包
Fiddler系列课程笔记(三): HTTPS及安卓&iOS设备APP抓包

4.5 抓取iOS设备上APP的HTTPS流量

先打开 Fiddler,且 Fiddler 处于抓包中。然后,在手机中打开“抖音”APP,如下图
Fiddler系列课程笔记(三): HTTPS及安卓&iOS设备APP抓包
Fiddler系列课程笔记(三): HTTPS及安卓&iOS设备APP抓包

5. Fiddler-插件中心

Fiddler-插件中心:https://www.telerik.com/fiddler/add-ons Fiddler-Willow插件-官网地址:http://qzonetouch.github.io/commonWidget/willow

Fiddler系列课程笔记(三): HTTPS及安卓&iOS设备APP抓包
Fiddler系列课程笔记(三): HTTPS及安卓&iOS设备APP抓包
Fiddler系列课程笔记(三): HTTPS及安卓&iOS设备APP抓包
Fiddler系列课程笔记(三): HTTPS及安卓&iOS设备APP抓包

5.1 Fiddler-Willow插件

除了上述插件。还有另外一个常用的fiddler插件--Willow插件:
Willow 插件可以统计数据包、修改Host、请求重定向、编码转换、低网速模拟、慢速网络模拟可视化、断点调试、过滤HTTP请求等功能。
Fiddler-Willow插件-官网地址:http://qzonetouch.github.io/commonWidget/willow
Fiddler系列课程笔记(三): HTTPS及安卓&iOS设备APP抓包

5.1.1 Willow插件的安装

点击“Fiddler4版本”链接,如下图: 进入下载页面,下载地址:https://github.com/QzoneTouch/commonWidget/releases ,选择 WillowSetup-1.5.2.zip下载。

安装Fiddler-Willow插件:
Fiddler系列课程笔记(三): HTTPS及安卓&iOS设备APP抓包
Fiddler系列课程笔记(三): HTTPS及安卓&iOS设备APP抓包
Fiddler系列课程笔记(三): HTTPS及安卓&iOS设备APP抓包
Fiddler系列课程笔记(三): HTTPS及安卓&iOS设备APP抓包
Fiddler系列课程笔记(三): HTTPS及安卓&iOS设备APP抓包
Fiddler系列课程笔记(三): HTTPS及安卓&iOS设备APP抓包
Fiddler系列课程笔记(三): HTTPS及安卓&iOS设备APP抓包
Fiddler系列课程笔记(三): HTTPS及安卓&iOS设备APP抓包
插件安装完成后,会自动启动fiddler,可以在fiddler面板看到这个Willow插件的标识:
Fiddler系列课程笔记(三): HTTPS及安卓&iOS设备APP抓包

5.1.2 Willow插件的使用

5.1.2.1 fiddler自带配置的局限性

下面是HOSTS的配置,可以通过这里直接控制启用或者关闭某些环境的host(效果等同于编辑修改(C:\Windows\System32\drivers\etc\hosts))

而AutoResponder的配置如下:

Fiddler系列课程笔记(三): HTTPS及安卓&iOS设备APP抓包

5.1.2.2 Willow的实例演示

创建两个项目,分别为 dev(开发环境)、test(测试环境),然后通过项目的复选框快速在这两个环境之间进行切换。 Willow的操作如下: 新建test环境和dev环境的工程:

给dev环境的工程,添加规则:

给test环境的工程,添加规则:

我们测试一下test环境-配置规则的效果: 我们看一下test环境-test.png图片:

我们测试一下dev环境-配置规则的效果:

5.1.3 Willow插件-个性化配置

Fiddler系列课程笔记(三): HTTPS及安卓&iOS设备APP抓包
Fiddler系列课程笔记(三): HTTPS及安卓&iOS设备APP抓包
Fiddler系列课程笔记(三): HTTPS及安卓&iOS设备APP抓包
Fiddler系列课程笔记(三): HTTPS及安卓&iOS设备APP抓包文章来源地址https://www.toymoban.com/news/detail-844341.html

到了这里,关于Fiddler系列课程笔记(三): HTTPS及安卓&iOS设备APP抓包的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Fiddler如何抓取手机http/https请求数据包(IOS,Android保姆级教程)

    1.开启Fiddler远程连接 2.设置完远程连接,重启Fiddler,更新配置 3.保持手机和电脑在同一个局域网 4.给手机装证书 5.点击下载证书 6.给证书命名 7.点击确定,确认安装成功 Fiddler主菜单Tools -- Options -- Connections -- 勾选 Allow remote computers to connect 弹出的框是确认启用远程连接,配置

    2024年02月04日
    浏览(30)
  • 全网最详细,Fiddler抓包实战 - 手机APP端https请求(超详细)

    Fiddler抓取App端请求 准备工作: 将手机和电脑连接到同一路由器(保证两者能够ping通); 如果使用的模拟器则不需要上面的步骤,因为模拟器是共享PC端的网络,两者网络默认就是连通的状态; 查询PC端的IP地址; 配置fiddler可以抓取远程端设备请求 打开Tools-Options-Connection

    2024年02月09日
    浏览(85)
  • ​《吐血整理》进阶系列教程-拿捏Fiddler抓包教程(9)-Fiddler如何设置捕获Https会话​

    由于近几年来各大网站越来越注重安全性都改成了https协议,不像前十几年前直接是http协议直接裸奔在互联网。还有的小伙伴或者童鞋们按照上一篇宏哥的配置都配置好了,想大展身手抓一下百度的包,结果一试傻眼了,竟然毛都没有抓到,怀疑是不是上了宏哥的当了。不是

    2024年02月15日
    浏览(42)
  • 《吐血整理》进阶系列教程-拿捏Fiddler抓包教程(11)-Fiddler设置安卓手机抓包,不会可是万万不行的!

    学习路线指引(点击解锁) 知识定位 人群定位 🧡 Python实战微信订餐小程序 🧡 进阶级 本课程是python flask+微信小程序的完美结合,从项目搭建到腾讯云部署上线,打造一个全栈订餐系统。 💛Python量化交易实战💛 入门级 手把手带你打造一个易扩展、更安全、效率更高的量

    2024年02月09日
    浏览(43)
  • fiddler抓包 雷电模拟器9(安卓9.0)教程,app加载不出来要记得移动证书目录

    使用的是网上的fiddler中文汉化版,按照百度搜索的教程总是有一些坑,记录一下。 1、 设置https ,在捕获https这边勾上三个√,点击【动作】,生成证书,导到桌面。  2、 设置连接 ,允许远程计算机连接,勾上√,记住端口数字,这边我是8888  3、在fiddler右侧或ipconfig中查

    2024年01月16日
    浏览(104)
  • 《吐血整理》进阶系列教程-拿捏Fiddler抓包教程(12)-Fiddler设置IOS手机抓包,你知多少???

    Fiddler不但能截获各种浏览器发出的 HTTP 请求,也可以截获各种智能手机发出的HTTP/ HTTPS 请求。 Fiddler 能捕获Android 和 Windows Phone 等设备发出的 HTTP/HTTPS 请求。同理也可以截获iOS设备发出的请求,比如 iPhone、iPad 和 MacBook 等苹果设备。 今天宏哥讲解和分享Fiddler 如何截获iOS移动

    2024年02月14日
    浏览(37)
  • 《吐血整理》高级系列教程-吃透Fiddler抓包教程(27)-Fiddler如何抓取Android7.0以上的Https包-中篇

    1.简介 上一篇中,宏哥讲解和分享了一些如何快速解决的临时应急的的方法,但是小伙伴或者童鞋们是不是觉得是一些头痛医头脚痛医脚的方法,治标不治本,或者是一些对于测试人员实现起来比较有一定难度。所以今天宏哥再介绍和分享一下治本的方法。 2.追本溯源 要想从

    2024年02月19日
    浏览(42)
  • 《吐血整理》保姆级系列教程-玩转Fiddler抓包教程(1)-HTTP和HTTPS基础知识

    有的小伙伴或者童鞋们可能会好奇地问宏哥,不是讲解和分享抓包工具了怎么这里开始讲解HTTP和HTTPS协议了。这是因为你对HTTP协议越了解,你就能越掌握Fiddler的使用方法,反过来你越使用Fiddler,就越能帮助你了解HTTP协议。 Fiddler无论对开发人员或者测试人员来说,都是非常

    2024年02月16日
    浏览(46)
  • uni-app:如何实现安卓设备的无线调试

    在前端开发中,与安卓设备进行调试是一个常见的任务。通常,我们使用ADB(Android Debug Bridge)通过USB连接来进行调试。然而,有时候我们可能需要无线进行调试,这样可以提供更大的灵活性和便利性。在本文中,我们将介绍如何使用uni-app框架和ADB来实现安卓设备的无线调试

    2024年02月01日
    浏览(33)
  • adb对安卓app进行抓包(ip连接设备)

    一,首先将安卓设备的开发者模式打开,提示允许adb调试 二,自己的笔记本要和安卓设备在同一个网段下(同连一个WiFi就可以了) 三,在笔记本上根据ip来连接安卓设备:adb connect 192.168.1.11  输入adb devices查看刚刚连接的设备   四,查找包名  输入adb shell 进入刚刚连接的

    2024年02月13日
    浏览(36)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包