《吐血整理》进阶系列教程-拿捏Fiddler抓包教程(11)-Fiddler设置安卓手机抓 ...

欢乐狗  金牌会员 | 2024-6-20 14:00:16 | 来自手机 | 显示全部楼层 | 阅读模式
打印 上一主题 下一主题

主题 546|帖子 546|积分 1638

1.简介

Fiddler不但能截获各种浏览器发出的 HTTP 哀求,也可以截获各种智能手机发出的HTTP/ HTTPS 哀求。
Fiddler能截获 Android 和 Windows Phone 等设备发出的 HTTP/HTTPS 哀求。
本日宏哥讲解和分享Fiddler 如何截获安卓移动端发出的 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.Android手机抓包配置

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.3Android手机设置网络代理

本节内容得当全部的 Android设备。下面以夜神模仿器为例举行讲解,其他品牌的模仿器和真实的手机操作方法与此差不多。详细操作步骤如下:
1.在确定了手机和Fiddler在同一局域网下之后, 那么我们来到Android手机的设置选项下,找到夜神模仿器手机当前连接的WLAN(一些 Android 手机是单击右边的箭头,有的是长按弹出对话框),如下图所示:


2.看到有一个wifi信号,长按这个信号,出现修改网络的弹窗。如下图所示:


3.点击修改网络,选中高级选项,打开高级选项,将代理设为手动,代理服务器主机名填写电脑的IP,端口号填写为主机抓包工具的监听端口。如下图所示:


4.点击生存,就成功完成代理的设置了。如下图所示:
 

那么到此Android手机的网络代理设置就到此为止,其他差别型号的Android模仿器和真机设置大同小异,以此类推,实在不会的本身可以百度一下。
5.4测试 Fiddler 捕获手机发出的 HTTP

1.打开手机上的浏览器,在浏览器中输入链接:http://open.vipexam.org/。中科VIPExam考试学习资源数据库网站用的是 HTTP 协议而不是 HTTPS 协议,查看 Fiddler 是否捕获到了 HTTP 数据包。如下图所示:


2.打开手机上的 APP,在 APP 中举行一些操作,查看 Fiddler 是否能捕获到 HTTP 数据包。如下图所示:


如果抓不到 HTTP 的包,很大概是 Windows 防火墙的问题,到控制面板中关闭防火墙后再试试。
5.5测试Fiddler捕获手机发出的HTTPS

1.打开手机上的浏览器,在浏览器中输入HTTPS协议,查看Fiddler是否捕获到了HTTPS数据包。不停在报证书安全告诫错误,无法抓取,因此需要我们安装证书,缘故原由宏哥在抓取PC端Web页面包已经说过了,这里就不做赘述了。如下图所示:


2.打开手机上的APP,在APP中举行一些操作,查看Fiddler是否能捕获到HTTPS数据包。又出现了Tunnel to,如下图所示:


到此,我们知道了要想抓取手机端Https的数据,还的配置证书,证书不消问了,还是Fiddler下发的。
5.6Android手机配置证书

通过前边宏哥的测试,我们知道在抓取Android手机数据包的时候 跟web端也是一样,都需要配置证书,否则是无法正常举行抓包的。之前已经在我们的android手机上配置好了Fiddler的代理服务了,那么如今就可以通过ip+port的方式来访问Fiddler 从而下载对应的证书。详细操作步骤如下:
1.在Android手机上打开(自带)的浏览器,输入刚刚配置的ip+port来下载证书,例如:192.168.0.109:8888, 我们点击FiddlerRoot certificate(根证书)下载到android手机上。如果不出意外的话就会出现如下界面:
 

2.点击后,给证书定名为:FiddlerRoot,点击“确定”(注:选择安装的文件后,需要输入手机的锁屏密码。Android一定要有锁屏密码才能安装证书),如下图所示:


3.要求设置一个手机密码,本身设置一个,记着密码就行,最后不消了去体系-安全-密码中去掉即可,如下图所示:


4.点击“确定”,提示证书已安装,证书安装成功后,如果你的手机体系没有设置密码大概锁屏图案,则体系会提示你设置锁屏图案大概密码。如下图所示:


5.证书安装好后,查看已信任证书:详细位置在【设置--->安全--->信任的根据--->用户】,如下图所示:


敲黑板!!!
在最后一步的这个时候大概有些android手机会出现以下问题,会出现 无法安装证书 由于无法读取证书文件的字样,如下图所示:


解决方案:
1.在下载之前,你可以手动修改证书的后缀名,修改为.crt 就可以了。如下图所示:


2.当我们下载的时候,就可以点击编辑按钮,举行文件名的编辑, 最后生存。如下图所示:


3.然后在手机的下载管理中找到刚刚下载好的证书并且打开它。如下图所示:


4.点击生存即为安装。如下图所示:


5.完成android手机证书的安装。如下图所示:


我们通过上面的Android基本配置就全部竣事了,如今可以愉快的Android手机抓包测试了。
6.开始Android抓包

为了更清晰的看到移动端抓包,在正式抓包之前,我们还设置一下Fiddler中的哀求过滤,我们通过Fiddler菜单栏中的Tools--->Options-->HTTPS修改..from all processes这一项。把它设置为from remote clients only 只抓远程客户端哀求, 方便我们查看手机抓包数据,如下图所示:

那么如今打开你的android手机浏览器访问https网站大概运行手机中的一些app就可以被fiddler所截取到数据包了,如下图所示:


6.1安装插件

如果还是无法正常抓取数据包,并且手机也无法加载数据的环境下,那么大概还是跟证书不正确有关系。解决方案:先删除全部证书再执行下面的操作。那么我们大概需要安装一个插件 CertMaker for iOS and Android。
6.1.1插件介绍

由于默认的证书不符合Android和iOS的证书要求,所以,需要下载 certmaker插件,双击安装后,重启fiddler。留意这一步很重要,必须使用certmaker插件,不要使用默认的证书天生器,否则抓不到包。
(备注:经验证,android 和 ios ,如果不安装此插件,也是可以抓到包的,官方的文档上也是用了一个很模棱两可的说明,may ,大概,都不是那么的绝对。如果是抓不到包,此步骤可以作为一个解决方案)
iOS devices and Android devices may not work with the default HTTPS interception certificates used by Fiddler. To resolve this incompatibility, you may install a Certificate Generating plugin that generates interception certificates compatible with those platforms.
译为:
iOS 设备和 Android 设备大概无法使用 Fiddler 使用的默认 HTTPS 拦截证书。要解决此不兼容问题,您可以安装天生与这些平台兼容的拦截证书的证书天生插件。如下图所示:


6.1.2插件下载

插件下载:https://telerik-fiddler.s3.amazonaws.com/fiddler/addons/fiddlercertmaker.exe 下载之后直接点击安装就可以了,但是要关闭Fiddler否则无法安装, 然后重启Fiddler,然后在Fiddler中重置一下全部证书,点击Fiddler菜单选择Tools-> Options -> HTTPS -> Actions -> Reset All Certificates举行重置证书 ,并且手机也要重新再一次的下载并配置证书。下载安装完插件Fiddler这里会多一个dll文件,如下图所示:


如果还是不行可以尝试关闭电脑的防火墙。
7.小结

留意:
一个手机可以安装多个证书,但是每安装的一个证书内里都设置有IP地点,所以:安装的证书和电脑IP是一一对应的,当前的这个证书只能针对某一台电脑使用,更换电脑后,该证书将不能使用,只能重新安装与更换的电脑的IP雷同的证书才能使用。
 每天学习一点,以后必成大神-
往期保举(由于跳转参数丢失了,全部建议选中要访问的右键,在新标签页中打开链接即可访问):
Appium主动化系列,耗时80天打造的从搭建环境到现实应用佳构教程测试
Python接口主动化测试教程,熬夜87天整理出这一份上万字的超全学习指南
Python+Selenium主动化系列,通宵700天从无到有搭建一个主动化测试框架
Java+Selenium主动化系列,仿照Python趁热打铁呕心沥血317天搭建代价好几K的主动化测试框架
Jmeter工具从基础->进阶->高级,费时2年多整理出这一份全网超详细的入门到精通教程
Fiddler工具从基础->进阶->高级,费时100多天吐血整理出这一份全网超详细的入门到精通教程
Pycharm工具基础使用教程

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

欢乐狗

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表