Fiddler抓包快速实战(小强出品)笔记

前言:Fiddler是一款通过HTTP协议调试代理工具,能够抓取本机所有的HTTP和HTTPS请求。其运行机制就是在本机127.0.0.1上监听8888端口的HTTP代理。

一、Fiddler基本配置

打开fiddler的tools-options-connections进行如下配置
fiddler基本配置

二、fiddler包过滤

打开fiddler右侧filters页签,勾选use filters。
在这里插入图片描述
最常用的为request headers的Show only if URLcontains,后面输入URL或URL部分内容,表示仅显示URL包含该输入框内容的请求。
例如,输入baidu.com,点击remove all,然后在浏览器中访问www.baidu.com,那么fiddler抓取的包仅为URL包含baidu.com的内容。如图所示。
在这里插入图片描述
除此之外还可以使用hosts进行包过滤
Show only intranet hosts:仅显示内网的请求。
Show only internet hosts:仅显示外网的请求。
Hide the following hosts:隐藏包含以下host的请求。
Show only the following hosts:仅显示包含以下host的请求。
Flag the following hosts:标记包含以下host的请求,对目标请求进行重点标记

注:hosts中的输入框如需输入多项应用分号隔开。

三、如何查看该请求的响应信息

双击左侧请求列表的一条请求,在右侧inspectors中上面显示请求相关信息,下面显示响应的相关信息。如图所示。
在这里插入图片描述
如果下面的响应信息为乱码,不要着急,可以点击response body is encoded,click to decode.如图所示。
在这里插入图片描述
图中几个View的页签都是用不同格式去看内容。

四、捕捉Web中HTTPS请求

进行fiddler-tools-options进行如下设置,如果弹出对话框,都点击确定就行了。
在这里插入图片描述
配置完成后重启fiddler。

注:左侧抓到的请求列表中如果全是灰色的请求和黑色的请求,灰色代表走的缓存,此时需要Ctrl+F5强刷页面就正常了。

五、fiddler抓移动app的HTTP包

如果想用fiddler抓取app的包,必须保证手机和电脑在同一局域网。
配置手机代理:
①查看本地电脑ip。
②在手机WiFi设置的代理设置中输入主机名为本地电脑ip,端口为8888,保存。

这样fiddler上就可以抓到手机的相关请求了。Fiddler既可以抓安卓系统手机的包,也可以抓苹果手机的包,操作是一样的,使用完成后一定要记得关闭手机上的代理,否则手机可能无法上网。

六、Fiddler抓移动app的HTTPS包

打开手机浏览器,输入URL:http://电脑ip:8888,在打开的页面最底端点击FiddlerRoot certificate的超链接,然后根据链接内容一步步操作就可以了。它主要是在手机上安装一个fiddler的安全证书,安装完成后就可以抓取HTTPS的包了。另外苹果手机可能需要在通用-关于本机-证书信任设置中选择信任该证书,然后重启fiddler。

七、Fiddler模拟低速网络

点击fiddler-rules-customize rules,在弹出的customRules.js文件中搜索300,然后修改参数。如图所示就是关于网络延迟设置的函数
在这里插入图片描述
默认设置为上传速度300ms每kb,下载速度150ms每kb。此时根据个人需求修改参数300或150即可,比如修改300为30000,然后保存该文件,并勾选上fiddler-rules-performance-simulate module speeds,这样该文件就会生效,对请求延时进行限制。此时访问目标网页,该网页加载速度就会很慢甚至无法显示。测试完成后需要取消勾选。

八、Fiddler篡改数据请求

Fiddler拦截目标网页发出的请求,并篡改数据后发出。
访问目标网页,在fiddler的命令行输入bpu 目标网页网址并回车,然后在目标网页输入数据发送请求,fiddler拦截到请求,双击该请求,在请求的表单页签修改数据,然后点击run。
示例:
①命令行中输入bpu https://home.51cto.com/index并回车。Fiddler底部如图所示,说明命令生效。
在这里插入图片描述
网页访问该网址,是一个登录页面。
在这里插入图片描述
输入正确的账号密码后点击登录如图所示,显示该页面正在加载中,而与此同时,fiddler表示收到一条消息。没错,发出的登录请求被拦截下来了。
在这里插入图片描述
在这里插入图片描述
上图所示,有红色标记的就是刚刚被拦截下来的登录请求,双击显示该请求。选中webform表单页签,可以清楚地看到我提交的登录信息。
在这里插入图片描述
此时我们修改password,然后点击绿色按钮run to completion,这条被篡改后的请求就发出去了并收到了响应。网页端如图所示,提示账号密码错误。
在这里插入图片描述
测试完成后,需要退出请求包拦截模式,只需在命令行中输入bpu回车即可,输入后如图
在这里插入图片描述

九、Fiddler利用auto responder替换源资源

Fiddler的auto responder是一种重定向功能,拦截会话中的资源并进行替换。
例如,我们把网页上的图片显示替换一下,注意,这边不是真的替换该资源,而是显示成别的资源。(使用该功能前要关闭filter过滤功能)。
以http://xqtesting.sxl.cn/该网页为例,我们要替换掉红框中的图片
在这里插入图片描述
①找到需要替换的图片资源
右键点击图片检查,谷歌浏览器很轻易放出了图片资源,或者直接右键该图片,点击复制图片地址。
在这里插入图片描述
②打开fiddler并强制刷新该页面,此时fiddler抓取了该页面的请求包,点击fiddler中的find,将该图片资源地址复制进去找到该图片请求包
在这里插入图片描述
在这里插入图片描述
③将fiddler右侧切换到auto responder页签,将该请求包用鼠标左键拖动到右侧,并勾上顶部的三个勾
在这里插入图片描述
点击最底端的一栏小三角,选择find a file,然后在弹出来的文件选择页面选择你想替换成的图片,然后在空白处点击一下锁定。
在这里插入图片描述
④强制刷新网页,就能看到原始图片资源被替换了
在这里插入图片描述
此时我们检查该图片地址,会发现其源资源并没有被改变,只是显示变了,可以理解为这里的替换是一种障眼法,只是给你看看效果。
在这里插入图片描述
⑤取消勾选请求包,网页就能恢复原来的样子
在这里插入图片描述

注意:该操作只对没有链接的图片有效

十、Fiddler快速模拟mock(这边我不是很懂,等接触了接口测试再来补充)

Mock是测试桩,能按照你想制定的规则模拟请求对应的响应,操作和上面的一样,只是把选择的图片文件换成json代码的txt文件,页面就会显示文件中的内容。一般在接口测试中用得比较多。
在这里插入图片描述
在这里插入图片描述

十一、Fiddler发送自定义请求(接口测试用到比较多)

将fiddler页签切换到Composer页面,一般用GET和POST比较多,如图所示,框中填写你的接口地址,然后点击execute
在这里插入图片描述
例如,访问dev.intersky.com.cn,点击execute后左侧给出了一个200的返回,该返回显示的是一个登陆页面,这是正确的。
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值