jjzjj

全网最强Fiddler抓包实战教程(Android+IOS超级全面图文) 越来越刑

自动化测试君 2023-09-14 原文

Fiddler Android 数据抓包

Fiddler不仅可以抓web页面的HTTP/HTTPS的数据报文, 也可以抓取我们手机移动端数据报文

这里我主要说明的是本地抓取Android 安卓手机数据报文

前提条件

手机必须处于同一个网络当中, 并且手机网络代理必须设置为fiddler,当我们的手机经过Fiddler这一层服务!

那么接下来具体步骤如下:

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

手机和电脑必须在同一局域网,手机最好也关闭4G/5G网络流量, 并且使用wifi,让手机和fiddler在同一局域网下!

查看本机ip地址

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

这里Fiddlerip地址就是我们当前电脑中的本机ip地址

那么查看我们电脑的 ip地址方法 如下:

win+R 调出运行然后输入 cmd打开命令行终端窗口,输入ipconfig, 找到其中的IPv4地址即为本机ip

如图

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

 

Fiddler设置端口与允许远程连接

Fiddler中我们还要设置远程连接权限端口号

找到Fiddler菜单栏中的Tools ----> Options---->Connections

勾选Allow remote computers to connect(允许远程计算机连接) 然后设置一个端口,也可以默认为8888

如图

 以上所有Fiddler设置之后最好是重启一下Fiddler,才可以让配置生效!

2.android手机设置网络代理

在确定了手机fiddler在同一局域网下之后, 那么我们来到android手机的设置选项下,找到WLAN

例如:

 

然后点击你当前所在的wifi网络环境下的名称

例如

 

然后选择代理

如图

把其中的改为手动

 

然后返回到上一步,输入Fiddler本地ip和设置Fiddler端口号

如图

那么到此android手机的网络代理设置 就到此为止, 其他不同型号的android手机设置大同小异,以此类推!

3.android手机配置证书

在抓取android手机数据包的时候 跟 web端也是一样,都需要配置证书,否则是无法正常进行抓包的!

之前已经在我们的android手机上配置好了Fiddler的代理服务了,那么现在就可以通过ip+port的方式来访问Fiddler 从而下载对应的证书!

方法如下:

android手机上打开(自带)的浏览器,输入刚刚配置的ip+port来下载证书,

例如:192.168.0.109:8888,  如果不出意外的话就会出现如下界面:

我们点击FiddlerRoot certificate(根证书)下载到android手机上!

如图

继续点击下载

 

温馨提示

这个时候可能有些android手机会出现以下问题,会出现 无法安装证书 因为无法读取证书文件的字样

解决方案

在下载之前,你可以手动修改证书的后缀名,修改为.crt 就可以了!

 

当我们下载的时候,就可以点击编辑按钮,进行文件名的编辑, 最后保存!

如图

 

然后再手机的下载管理中 找到刚刚下载好的证书 并且打开它

如图

最后点击保存即为 安装

完成android手机证书的安装!

 

那么如果你要查看安装的证书, 那么可以在手机中 打开设置-->其他设置-->设备与隐私-->信任的证书然后点击用户,就可以查看到刚刚所安装好的Fiddler证书

如图

 

其他手机可以在设置中搜索信任进行查找,大同小异!

注意(Notice)😞

每连一台电脑所安装的fiddler提供的证书都是不一样的,要记住这个道理  那么测试完一台电脑之后,如果要在另外一台电脑上测试,记得在证书管理里删除之前的fiddler证书,因为这个之前的fiddler证书只对应之前那台电脑里面所安装的fiddler,没法用于连其他的fiddler, 因此换一台电脑,测试必须重新配置一下手机证书

我们通过上面的android基本配置就全部结束了,现在可以愉快的android手机抓包测试了😃

4.开始android抓包

在正式抓包之前,我们还设置一下Fiddler中的请求过滤

我们通过Fiddler菜单栏中的Tools--->Options-->HTTPS修改..from all processes这一项

把它设置为from remote clients only  只抓远程客户端请求, 方便我们查看手机抓包数据!

如图

那么现在打开你的android手机并且运行手机中的一些app就可以被fiddler所截取到数据包了:

如图

 

注意:

如果还是无法正常抓取数据包,并且手机也无法加载数据的情况下,那么可能还是跟证书不正确有关系

解决方案

删除所有证书再执行下面的操作!

那么我们可能需要安装一个插件 CertMaker for iOS and Android

插件介绍

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 拦截证书。要解决此不兼容问题,您可以安装生成与这些平台兼容的拦截证书的证书生成插件

插件下载:https://telerik-fiddler.s3.amazonaws.com/fiddler/addons/fiddlercertmaker.exe

下载之后直接点击安装就可以了,但是要关闭Fiddler否则无法安装,  然后重启Fiddler,然后在Fiddler中重置一下所有证书,点击Fiddler菜单选择Tools-> Options -> HTTPS -> Actions -> Reset All Certificates进行重置证书 ,并且手机也要重新再一次的下载并配置证书!

 

如果还是不行可以尝试 关闭系统防火墙

如图

 

Fiddler 苹果IOS 数据抓包

Fiddler既然可以抓取android的数据包, 那么就一定可以抓取到ios的数据包!

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

其实还有一个简单的办法来判断当前手机和PC是否在同一网络环境下!

在你的ios手机上找到连接的wifi,查看一下ip地址

如图

 

然后在电脑上打开命令行,输入ping 手机ip,看看能不能ping通!

如图

如果有以上返回说明 当前手机和PC 就是在同一网络环境下

其他关于Fiddler的设置步骤跟之前的android操作是一样的 这里就不再过多赘述了, 还没有明白的朋友返回到android部分去看看!

2.ios手机设置网络代理

在确定了ios手机fiddler在同一局域网下之后, 那么我们来到ios手机的设置选项下,找到WLAN,查看连接的wifi

如图

进入HTTP代理

 

 

设置为手动,然后填写服务器, 这里就跟android是一样的, 也是输入fiddler在电脑本地的ip地址端口

如图

 

最后点击存储即可!

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

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

下载证书

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

使用ios手机中自带的的safari浏览器,输入配置好的ip+端口跳转到 Fiddler Echo Service 证书下载页!

如图

点击FiddlerRoot certificate弹出此网址尝试下载一个配置描述文件,您要允许吗?,点击允许按钮

 

下载完成,弹出提示已下载描述文件

安装证书

根据提示,回到手机的设置中,找到已下载描述文件,可以看到下载的证书在那里了!

如图

 

根据提示,回到手机的设置-->通用中,找到描述文件,可以看到下载的证书在那里了!

然后开始安装证书

继续点击安装

 

 

完成证书的安装!

设置信任证书

安装好证书之后,还要在ios系统中设置信任刚刚下载好的证书

我们回到ios系统中的设置--->通用--->关于本机中,对证书进行信任设置,选择证书信任设置选项

如图

 

开启信任

如图

点击继续

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

4.开始ios抓包

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

如图

 

温馨提示

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

最后是小编自己整理的一些学习资料笔记和上述全部抓包教程

想要小编学习资料笔记文档

【私信我关键词“999”免费获取】高薪简历模板(面试宝典免费领)

如果这篇文章对你有帮助,请给小编点个赞!这样我才有动力继续更新下去!

今天的小知识学会了么

欢迎在留言区跟我们互动噢~

高薪简历模板(面试宝典免费领)

有关全网最强Fiddler抓包实战教程(Android+IOS超级全面图文) 越来越刑的更多相关文章

  1. 世界前沿3D开发引擎HOOPS全面讲解——集3D数据读取、3D图形渲染、3D数据发布于一体的全新3D应用开发工具 - 2

    无论您是想搭建桌面端、WEB端或者移动端APP应用,HOOPSPlatform组件都可以为您提供弹性的3D集成架构,同时,由工业领域3D技术专家组成的HOOPS技术团队也能为您提供技术支持服务。如果您的客户期望有一种在多个平台(桌面/WEB/APP,而且某些客户端是“瘦”客户端)快速、方便地将数据接入到3D应用系统的解决方案,并且当访问数据时,在各个平台上的性能和用户体验保持一致,HOOPSPlatform将帮助您完成。利用HOOPSPlatform,您可以开发在任何环境下的3D基础应用架构。HOOPSPlatform可以帮您打造3D创新型产品,HOOPSSDK包含的技术有:快速且准确的CAD

  2. 微信小程序开发入门与实战(Behaviors使用) - 2

    @作者:SYFStrive @博客首页:HomePage📜:微信小程序📌:个人社区(欢迎大佬们加入)👉:社区链接🔗📌:觉得文章不错可以点点关注👉:专栏连接🔗💃:感谢支持,学累了可以先看小段由小胖给大家带来的街舞👉微信小程序(🔥)目录自定义组件-behaviors    1、什么是behaviors    2、behaviors的工作方式    3、创建behavior    4、导入并使用behavior    5、behavior中所有可用的节点    6、同名字段的覆盖和组合规则总结最后自定义组件-behaviors    1、什么是behaviorsbehaviors是小程序中,用于实现

  3. 安卓apk修改(Android反编译apk) - 2

    最近因为项目需要,需要将Android手机系统自带的某个系统软件反编译并更改里面某个资源,并重新打包,签名生成新的自定义的apk,下面我来介绍一下我的实现过程。APK修改,分为以下几步:反编译解包,修改,重打包,修改签名等步骤。安卓apk修改准备工作1.系统配置好JavaJDK环境变量2.需要root权限的手机(针对系统自带apk,其他软件免root)3.Auto-Sign签名工具4.apktool工具安卓apk修改开始反编译本文拿Android系统里面的Settings.apk做demo,具体如何将apk获取出来在此就不过多介绍了,直接进入主题:按键win+R输入cmd,打开命令窗口,并将路

  4. 你真正了解什么是接口测试么?接口实战一“篇”入魂 - 2

    最近在工作中,看到一些新手测试同学,对接口测试存在很多疑问,甚至包括一些从事软件测试3,5年的同学,在聊到接口时,也是一知半解;今天借着这个机会,对接口测试做个实战教学,顺便总结一下经验,分享给大家。计划拆分成4个模块跟大家做一个分享,(接口测试、接口基础知识、接口自动化、接口进阶)感兴趣的小伙伴记得关注,希望对你的日常工作和求职面试,带来一些帮助。注:文章较长有5000多字,希望小伙伴们认真看完,当然有些内容对小白同学不是太友好,如果你需要详细了解其中的一些概念或者名词,请在文章之后留言,后续我将针对大家的疑问,整理输出一些大家感兴趣的文章。随着开发模式的迭代更新,前后端分离已不是新的概念,

  5. 【云计算】私有云在VMware下虚拟机的创建与配置(图文教程) - 2

    【适用平台】私有云   说明:完成私有云部分是需要两台虚拟机的,分别为controller、compute两个节点,但我们只需配置一台,然后克隆就方便多啦!需要用到的映射文件:关于vm的安装我就不介绍的,毕竟挺简单的,下面让我们看看基于私有云模块中,虚拟机的搭建吧。1、创建新的虚拟机,这里一般我会选择自定义,毕竟后面的配置都要根据私有云相关来进行搭建,会比较复杂。(如果是基础的可以选择典型,典型的满足一般虚拟机的配置) 2、选择稍后安装操作系统会比较方便后续的选择,这里你也可以自己选择自己的映像文件(但不建议)  3、我们是基于Linux下操作的,所以选择Linux客户机操作系统,版本选择自己

  6. 最强Http缓存策略之强缓存和协商缓存的详解与应用实例 - 2

    HTTP缓存是指浏览器或者代理服务器将已经请求过的资源保存到本地,以便下次请求时能够直接从缓存中获取资源,从而减少网络请求次数,提高网页的加载速度和用户体验。缓存分为强缓存和协商缓存两种模式。一.强缓存强缓存是指浏览器直接从本地缓存中获取资源,而不需要向web服务器发出网络请求。这是因为浏览器在第一次请求资源时,服务器会在响应头中添加相关缓存的响应头,以表明该资源的缓存策略。常见的强缓存响应头如下所述:Cache-ControlCache-Control响应头是用于控制强制缓存和协商缓存的缓存策略。该响应头中的指令如下:max-age:指定该资源在本地缓存的最长有效时间,以秒为单位。例如:Ca

  7. iOS快捷指令:执行Python脚本(利用iSH Shell) - 2

    文章目录前言核心逻辑配置iSH安装Python创建Python脚本配置启动文件测试效果快捷指令前言iOS快捷指令所能做的操作极为有限。假如快捷指令能运行Python程序,那么可操作空间就瞬间变大了。iSH是一款免费的iOS软件,它模拟了一个类似Linux的命令行解释器。我们将在iSH中运行Python程序,然后在快捷指令中获取Python程序的输出。核心逻辑我们用一个“获取当前日期”的Python程序作为演示(其实快捷指令中本身存在“获取当前日期”的操作,因而此需求可以不用Python,这里仅仅为了演示方便),核心代码如下。>>>importtime>>>time.strftime('%Y-%

  8. iOS适配Unity-2019 - 2

    iOS适配Unity-2019背景由于2019起,Unity的Xcode工程,更改了项目结构。Unity2018的结构:可以看Targets只有一个Unity-iPhone,Unity-iPhone直接依赖管理三方库。Unity2019以后:Targets多了一个UnityFramework,UnityFramework管理三方库,Unity-iPhone依赖于UnityFramwork。所以升级后,会有若干的问题,以下是对问题的解决方式。问题一错误描述error:exportArchive:Missingsigningidentifierat"/var/folders/fr//T/Xcode

  9. FIFO实战学习-同步FIFO/异步FIFO-格雷码 - 2

    目录FIFO一.自定义同步FIFO1.1代码设计1.2Testbech1.3行为仿真***学习位宽计算函数$clog2()***$clog2()系统函数使用,可以不关注***分布式资源或者BLOCKBRAM二.异步FIFO2.1在FIFO判满的时候有两种方式:2.2异步FIFO为什么要使用格雷码2.2.1介绍格雷码2.2.2格雷码在异步FIFO中的应用2.2.2格雷码判满2.4二进制与格雷码之间的转换2.4.1二进制码转换为格雷码的方法2.4.2格雷码转换为二进制码的方法2.3实现框图2.5实现及仿真代码2.6仿真图验证2.7结论FIFO  这篇更多的是记录FIFO学习,参考了众多优秀的文章,

  10. 《ChatGPT实用指南》(精编版)重磅发布,全网免费分享,快上车,别掉队 - 2

    文/高扬(微信公众号:量子论)据上次3月18号发布的V1.8版,已经过去十天,这期间AI领域发生了很多重大变化。因此,我们对《ChatGPT实用指南》进行了重大改版,增加了大量实用的操作和详细的讲解,保证小白可以轻松上手,快速驾驭ChatGPT。V2.0版本亮点:1、结构更合理。分为基础篇、进阶篇、高级篇,从易到难,由浅入深,符合学习规律。2、内容更充实。扩充了27页的内容,尽量看图说话,将操作步骤一步步地展示出来。3、排版更美观。按图书出版的规范制作,便于知识点查阅。后记:2022年11月底,我们在HackerNews上看到了关于ChatGPT的新闻报道后,开始意识到,人工智能的春天来了,这

随机推荐