Fiddler抓包工具总结
序章
提琴手是一个蛮好用的抓包工具,可以将网络传输发送与接受的数据包进行截获,重发,编辑,转存等操作。也可以用来检测网络安全。反正好处多多,举之不尽呀!当年学习的时候也蛮费劲,一些蛮实用隐藏的小功能用了之后就忘记了,每次去网站上找也很麻烦,所以搜集各大网络的资料,总结了一些常用的功能。
Fiddler下载地址:https://www.telerik.com/download/fiddler
Fiddler 离线下载地址:https://bianchenghao.cn/s/1bpnp3Ef密码:5skw
下载提琴手要FQ,我费了好大得劲才翻出去下载到...
win8之后用“Fiddler for .NET4”而win8之前用“Fiidler for .NET2”比较好
1. Fiddler抓包简介
的Fiddler是通过改写HTTP代理,让数据从它那通过,来监控并且截取到数据。当然提琴手很屌,在打开它的那一瞬间,它就已经设置好了浏览器的代理了。当你关闭的时候,它又帮你把代理还原了,是不是很贴心?
1)字段说明
Fiddler想要抓到数据包,要确保捕获流量是开启,在文件 - >捕获流量。开启后再左下角会有显示,当然也可以直接左下角的图标来关闭/开启抓包功能。
提琴手开始工作了,抓到的数据包就会显示在列表里面,下面总结了这些都是什么意思:
名称 |
含义 |
---|---|
# |
抓取HTTP请求的顺序,从1开始,以此递增 |
结果 |
HTTP状态码 |
协议 |
请求使用的协议,如HTTP / HTTPS / FTP等 |
主办 |
请求地址的主机名 |
网址 |
请求资源的位置 |
身体 |
该请求的大小 |
高速缓存 |
请求的缓存过期时间或者缓存控制值 |
内容类型 |
请求响应的类型 |
处理 |
发送此请求的进程:进程ID |
评论 |
允许用户为此回话添加备注 |
习惯 |
允许用户设置自定义值 |
图标 |
含义 |
请求已经发往服务器 |
|
已从服务器下载响应结果 |
|
请求从断点处暂停 |
|
响应从断点处暂停 |
|
请求使用HTTP的HEAD方法,即响应没有内容(Body) |
|
请求使用HTTP的POST方法 |
|
请求使用HTTP的CONNECT方法,使用HTTPS协议建立连接隧道 |
|
响应是HTML格式 |
|
响应是一张图片 |
|
响应是脚本格式 |
|
响应是CSS格式 |
|
响应是XML格式 |
|
响应是JSON格式 |
|
响应是一个音频文件 |
|
响应是一个视频文件 |
|
响应是一个SilverLight |
|
响应是一个FLASH |
|
响应是一个字体 |
|
普通响应成功 |
|
响应是HTTP / 300,301,302,303或307重定向 |
|
响应是HTTP / 304(无变更):使用缓存文件 |
|
响应需要客户端证书验证 |
|
服务端错误 |
|
会话被客户端,Fiddler或者服务端终止 |
2)。统计请求的性能数据分析
好了,左边看完了,现在可以看右边了
随意一个请求,就可以看到统计关于HTTP请求的性能以及数据分析了(不可能安装好了提琴手一条请求都没有...):
3)。检查员查看数据内容
检查员是用于查看会话的内容,上半部分是请求的内容,下半部分是响应的内容:
4)。AutoResponder允许拦截指定规则的请求
自动回复允许你拦截指定规则的求情,并返回本地资源或提琴手资源,从而代替服务器响应。
看下图5步,我将“baidu”这个关键字与我电脑“f:\ Users \ YukiO \ Pictures \ boy.jpeg”这张图片绑定了,保存保存后勾选启用规则,再访问百度,就会被劫持。
这个玩意有很多匹配规则,如:
1.字符串匹配(默认):只要包含指定字符串(不区分大小写),全部认为是匹配
字符串匹配(百度) 是否匹配 http://www.baidu.com 匹配 http://bianchenghao.cn 匹配 http://tieba.baidu.com 匹配
2.正则表达式匹配:以“regex:”开头,使用正则表达式来匹配,这个是区分大小写的
字符串匹配(正则表达式:。+。(jpg | gif | bmp)$) 是否匹配 http://bbs.fishc.com/Path1/query=foo.bmp&bar 不匹配 http://bbs.fishc.com/Path1/query=example.gif 匹配 http://bbs.fishc.com/Path1/query=example.bmp 匹配 http://bbs.fishc.com/Path1/query=example.Gif 不匹配
4)。Composer自定义请求发送服务器
作曲家允许自定义请求发送到服务器,可以手动创建一个新的请求,也可以在会话表中,拖拽一个现有的请求
解析模式下你只需要提供简单的URLS地址即可(如下图,也可以在RequestBody定制一些属性,如模拟浏览器用户代理)
5)。过滤器请求过滤规则
Fiters是过滤请求用的,左边的窗口不断的更新,当你想看你系统的请求的时候,你刷新一下浏览器,一大片不知道哪来请求,看着碍眼,它还一直刷新你的屏幕。这个时候通过过滤规则来过滤掉那些不想看到的请求。
勾选左上角的使用过滤器开启过滤器,这里有两个最常用的过滤条件:Zone和Host
1,Zone指定只显示内网(Intranet)或互联网(Internet)的内容:
2,主机指定显示某个域名下的会话:
如果框框为黄色(如图),表示修改未生效,红圈里的文字即可
6)。时间线请求响应时间
在左侧会话窗口一个或多个(同时按下Ctrl键),Timeline便会显示指定内容从服务端传输到客户端的时间:
2. Fiddler设置解密HTTPS的网络数据
提琴手可以通过伪造CA证书来欺骗浏览器和服务器.Fiddler是个很会装逼的好东西,大概原理就是在浏览器面前提琴手伪装成一个HTTPS服务器,而在真正的HTTPS服务器面前提琴手又装成浏览器,从而实现解密HTTPS数据包的目的。
解密HTTPS需要手动开启,依次:
1.工具 - >提琴手选项 - > HTTPS
2.勾选解密HTTPS流量
确定
3. Fiddler抓取Iphone / Android数据包
想要的Fiddler抓取移动端设备的数据包,其实很简单,先来说说移动设备怎么去访问网络,看了下面这张图,就明白了。
可以看得出,移动端的数据包,都是要走的WiFi出去,所以我们可以把自己的电脑开启热点,将手机连上电脑,提琴手开启代理后,让这些数据通过提琴手,提琴手就可以抓到这些包,然后发给路由器(如图):
1.打开Wifi热点,让手机连上(我这里用的360wifi,其实随意一个都行)
2.打开Fidder,菜单栏中的[工具] - > [提琴手选项]
3.[连接],设置代理端口是8888,勾选允许远程计算机连接,确定
4.这时在Fiddler可以看到自己本机无线网卡的IP了(要是没有的话,重启Fiddler,或者可以在cmd中ipconfig找到自己的网卡IP)
5.在手机端连接PC的wifi,并且设置代理IP与端口(代理IP就是上图的IP,端口是Fiddler的代理端口8888)
6.访问网页输入代理IP和端口,下载Fiddler的证书,下图FiddlerRoot证书
【注意】:如果打开浏览器碰到类似下面的报错,请打开Fiddler的证书解密模式(Fiddler设置解密HTTPS的网络数据)
7.安装完了证书,可以用手机访问应用,就可以看到截取到的数据包了。(下图选中是布卡漫画的数据包,下面还有邮箱的)
4. Fiddler内置命令与断点
菲德勒还有一个藏的很深的命令框,就是眼前,我用了几年的提琴手都没有发现它,偶尔在别人的文章发现还有这个小功能,还蛮好用的,整理下记录在这里。
提琴手断点功能就是将请求截获下来,但是不发送,这个时候你可以干很多事情,比如说,把包改了,再发送给服务器君。还有BALABALA一大堆的事情可以做,就不举例子了。
命令 |
对应请求项 |
介绍 |
示例 |
---|---|---|---|
? |
所有 |
问号后边跟一个字符串,可以匹配出包含这个字符串的请求 | ?谷歌 |
> |
身体 |
大于号后面跟一个数字,可以匹配出请求大小,大于这个数字请求 | > 1000 |
< |
身体 |
小于号跟大于号相反,匹配出请求大小,小于这个数字的请求 | <100 |
= |
结果 |
等于号后面跟数字,可以匹配HTTP返回码 | = 200 |
@ |
主办 |
@后面跟主机,可以匹配域名 | @ www.baidu.com |
选择 |
内容类型 |
选择后面跟响应类型,可以匹配到相关的类型 | 选择图像 |
CLS |
所有 |
清空当前所有请求 | CLS |
倾倒 |
所有 |
将所有请求打包成SAZ压缩包,保存到“我的文档\ Fiddler2 \捕捉”目录下 | 倾倒 |
开始 |
所有 |
开始监听请求 | 开始 |
停 |
所有 |
停止监听请求 | 停 |
断点命令 | |||
bpafter |
所有 |
bpafter后边跟一个字符串,表示中断所有包含该字符串的请求 | bpafter baidu(输入bpafter解除断点) |
BPU |
所有 |
跟bpafter差不多,只不过这个是收到请求了,中断响应 | bpu baidu(输入bpu解除断点) |
BPS |
结果 |
后面跟状态吗,表示中断所有是这个状态码的请求 | bps 200(输入bps解除断点) |
bpv / bpm |
HTTP方法 |
只中断HTTP方法的命令,HTTP方法如POST,GET | bpv get(输入bpv解除断点) |
g / go |
所有 |
放行所有中断下来的请求 | G |
示例演示:
?
>
<
=
@
选择
CLS
倾倒
断点命令:
断点可以直接提琴手下图的图标位置,就可以设置全部请求的断点,断点的命令可以精确设置需要截获那些请求如下示例:
命令:
bpafter
BPS
BPV
g / go
今天的文章 Fiddler抓包工具总结分享到此就结束了,感谢您的阅读。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/bian-cheng-ji-chu/4202.html