一文学会 - Fiddler抓包快速实战

131 阅读9分钟
  1. Fiddler是一款HTTP协议调试代理工具,它能够抓取记录本及所有HTTP(S)请求。

其运行机制其实就是本机127.0.0.1上监听8888端口的HTTP带理。

  1. Fiddler无论对开发人员或者测试人员来说,都是非常有用的工具。

  2. 更多介绍见百度百科


在这里插入图片描述


Fiddler下载与安装


  1. 官网地址:www.telerik.com/fiddler

  2. 先安装FiddlerXXX.exe

  3. 再安装Fiddlercertmaker.exe (类似安全证书)

  4. 然后就可以启动Fiddler了

  5. 启动之后的界面包括:

工具栏区、请求列表区、请求详情区、响应详情区、命令行区。


在这里插入图片描述


二、WEB端抓包

===========================================================================

初次安装是不可以抓HTTPS的包的

开启/关闭抓包


快捷键:F12

左下角的开关


在这里插入图片描述


初次配置


点击工具栏区 Tools ---> Fiddle Options

选择 Fiddle Options 的 Connections

在 Connections 界面 选择

Captrue FTP requests、

Allow remote computers to connect、

Reuse client connections、

Reuse server connections

并输入端口号。

点击“OK”

这样我们就可以捕捉到大部分的请求。


在这里插入图片描述


在这里插入图片描述


验证是否可以正常抓包


启动IE浏览器

输入 www.baidu.com

观察左侧 请求列表区 是否有百度的请求

如果有则证明当前配置是成功的,可以正常抓取数据包了。

Fiddle 抓包,默认使用IE浏览器,是不需要做任何配置的,

假如想使用Firefox之类的浏览器抓包的话,不见得能够抓到,需要在Firefox配置代理。

Filter请求过滤_过滤&筛选页签


使用 Filter 可以帮助我们只显示指定的请求、不显示指定的请求(即Filter请求过滤)

启用Filter



在这里插入图片描述


只显示指定的请求


在这里插入图片描述


只显示内网的Hosts [使用频率较少]


在这里插入图片描述


只显示外网的Hosts [使用频率较少]


在这里插入图片描述


隐藏指定的Hosts

隐藏多个相关Hosts 的情况下,使用英文分号隔开,见下图。


在这里插入图片描述


只显示指定的多个Hosts

显示多个相关Hosts的情况下,使用英文分号隔开,见下图。


在这里插入图片描述


标记过滤到的域名


在这里插入图片描述


过滤指定url的css、js等

  • Hide if URL contains 输入 REGEX:\.(js|css|google|favicon\?.*)+

  • 再点击 Actions,选择 Run Filters now


在这里插入图片描述


查看响应

双击想要查看的请求,在 响应详情区 显示该请求的详细响应情况


在这里插入图片描述


如何抓包HTTPS请求


在菜单项 Toos —> Options —> HTTPS


在这里插入图片描述


勾选 CaptureHTTPS CONNECTs

勾选Decrypt HTTPS traffic

选择 ...from all processes

勾选 Ignore server certificate errors(unsafe)


在这里插入图片描述


需要注意的是,在安装完Fiddle后,一定再安装Fiddlercertmaker.exe(类似安全证书)

在勾选CaptureHTTPS CONNECTs 、

Decrypt HTTPS traffic、

Ignore server certificate errors(unsafe) 时,

弹出两个对话框,直接选择是/yes!

重点:~配置完成后,一定要重启Fiddle!

一定要重启Fiddle!一定要重启Fiddle!一定要重启Fiddle!~

三、移动app端抓包

=============================================================================

前置条件


1、手机与电脑在同一局域网

2、完成fiddler的基本配置,参照WEB端抓包

手机配置代理(以小米8手机为例)


设置 —> WLAN —> 选择wifi —> 点击右边的箭头 —> 代理(选择手动)

—> 主机名(输入电脑IP)—> 端口默认为8888 —> 点击右上角确定

完成上述操作后,Fiddler就可以抓取到手机APP的请求了。

用完之后记得关闭手机的代理设置!否则可能无法上网!

抓取移动APP端https


1、打开手机浏览器输入:http://本机IP地址:8888(端口号根据自己实际设置情况进行输入)

2、在打开的页面中找到FiddlereRoot certificate字样的超级链接,点击即可。

四、模拟低速网络(限速)

===============================================================================

为什么要模拟网络限速?


日常我们的网络状况都比较好,有时候经常忽略在低速或者网络不好的情况下系统的页 面表现,而Fiddler就可以帮助我们限速进而达到模拟低速网络的状态。

自定义限速


根据自己的需求做一个限速的设置

点开 Rules ---> Customize Rules,在弹出的页面搜索“Delay sends by 300ms per KB uploaded”

将参数修改需要的值。(单位:毫秒)

代码解读:

发送数据每 KB 延迟 300 毫秒

接收数据每 KB 延迟 150 毫秒

修改完之后一定要保存 【 CTRL + S 】


在这里插入图片描述


启用限速功能


开启方法:

Rules ---> Performances ---> Simulate Modem Speeds

当 Simulate Modem Speeds 前面出现 “√”,即表示已经启用限速。

不用的时候记得关闭 限速的功能!


图片好像被我改变形了[抱歉]

在这里插入图片描述


在这里插入图片描述


五、如何篡改请求数据

=============================================================================

什么是篡改请求数据?

可以理解为针对请求数据的修改,修改完成之后发送至服务器端,然后根据修改之后的 请求数据给出一个响应。

此处以登录51cto为例进行讲解,登录地址为 home.51cto.com/index

大致步骤如下:

用IE打开上面的登录页面

然后在Fiddler的命令行中输入

dpu home.51cto.com/index

bpu + url :当访问url时,对该url 进行一个拦截,bpu 就相当于一个拦截命令(如果想取消该命令,则在命令行中再次输入bpu 即可)

输入错误的用户名和密码,点击登录

Fiddler能中断这次会话,选择被中断的会话,点击Inspectors下的WebForms,然后修改用户名密码都为正确的,然后点击Run to Completion即可。


在这里插入图片描述


在这里插入图片描述


在这里插入图片描述


学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

一、Python所有方向的学习路线

Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

二、学习软件

工欲善其事必先利其器。学习Python常用的开发软件都在这里了,给大家节省了很多时间。

三、全套PDF电子书

书籍的好处就在于权威和体系健全,刚开始学习的时候你可以只看视频或者听某个人讲课,但等你学完之后,你觉得你掌握了,这时候建议还是得去看一下书籍,看权威技术书籍也是每个程序员必经之路。

四、入门学习视频

我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。

五、实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

六、面试资料

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

了解详情:docs.qq.com/doc/DSnl3ZG…