网络抓包 Fiddler

1. Fiddler 抓包简介

Fiddler是通过改写HTTP代理,让数据从它那通过,来监控并且截取到数据。当然Fiddler很屌,在打开它的那一瞬间,它就已经设置好了浏览器的代理了。当你关闭的时候,它又帮你把代理还原了,是不是很贴心。

1) 字段说明

Fiddler想要抓到数据包,要确保Capture Traffic是开启,在File –> Capture Traffic。开启后再左下角会有显示,当然也可以直接点击左下角的图标来关闭/开启抓包功能。

Fiddler开始工作了,抓到的数据包就会显示在列表里面,下面总结了这些都是什么意思:


名称


含义


#


抓取HTTP Request的顺序,从1开始,以此递增


Result


HTTP状态码


Protocol


请求使用的协议,如HTTP/HTTPS/FTP等


Host


请求地址的主机名


URL


请求资源的位置


Body


该请求的大小


Caching


请求的缓存过期时间或者缓存控制值


Content-Type


请求响应的类型


Process


发送此请求的进程:进程ID


Comments


允许用户为此回话添加备注


Custom


允许用户设置自定义值


图标


含义



请求已经发往服务器



已从服务器下载响应结果



请求从断点处暂停



响应从断点处暂停



请求使用 HTTP 的 HEAD 方法,即响应没有内容(Body)



请求使用 HTTP 的 POST 方法



请求使用 HTTP 的 CONNECT 方法,使用 HTTPS 协议建立连接隧道



响应是 HTML 格式



响应是一张图片



响应是脚本格式



响应是 CSS 格式



响应是 XML 格式



响应是 JSON 格式



响应是一个音频文件



响应是一个视频文件



响应是一个 SilverLight



响应是一个 FLASH



响应是一个字体



普通响应成功



响应是 HTTP/300、301、302、303 或 307 重定向



响应是 HTTP/304(无变更):使用缓存文件



响应需要客户端证书验证



服务端错误



会话被客户端、Fiddler 或者服务端终止

2). Statistics 请求的性能数据分析

好了。左边看完了,现在可以看右边了

随意点击一个请求,就可以看到Statistics关于HTTP请求的性能以及数据分析了(不可能安装好了Fiddler一条请求都没有…):

3). Inspectors 查看数据内容

Inspectors是用于查看会话的内容,上半部分是请求的内容,下半部分是响应的内容:

4). AutoResponder 允许拦截指定规则的请求

AutoResponder允许你拦截指定规则的求情,并返回本地资源或Fiddler资源,从而代替服务器响应。

看下图5步,我将“baidu”这个关键字与我电脑“f:\Users\YukiO\Pictures\boy.jpeg”这张图片绑定了,点击Save保存后勾选Enable rules,再访问baidu,就会被劫持。

这个玩意有很多匹配规则,如:

1. 字符串匹配(默认):只要包含指定字符串(不区分大小写),全部认为是匹配

字符串匹配(baidu) 是否匹配
http://www.baidu.com 匹配
http://pan.baidu.com 匹配
http://tieba.baidu.com 匹配

2. 正则表达式匹配:以“regex:”开头,使用正则表达式来匹配,这个是区分大小写的

字符串匹配(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 自定义请求发送服务器

Composer允许自定义请求发送到服务器,可以手动创建一个新的请求,也可以在会话表中,拖拽一个现有的请求

Parsed模式下你只需要提供简单的URLS地址即可(如下图,也可以在RequestBody定制一些属性,如模拟浏览器User-Agent)

5). Filters 请求过滤规则

Fiters 是过滤请求用的,左边的窗口不断的更新,当你想看你系统的请求的时候,你刷新一下浏览器,一大片不知道哪来请求,看着碍眼,它还一直刷新你的屏幕。这个时候通过过滤规则来过滤掉那些不想看到的请求。

勾选左上角的Use Filters开启过滤器,这里有两个最常用的过滤条件:Zone和Host

1、Zone 指定只显示内网(Intranet)或互联网(Internet)的内容:

2、Host 指定显示某个域名下的会话:

如果框框为黄色(如图),表示修改未生效,点击红圈里的文字即可

6). Timeline 请求响应时间

在左侧会话窗口点击一个或多个(同时按下 Ctrl 键),Timeline 便会显示指定内容从服务端传输到客户端的时间:

2. Fiddler 设置解密HTTPS的网络数据

Fiddler可以通过伪造CA证书来欺骗浏览器和服务器。Fiddler是个很会装逼的好东西,大概原理就是在浏览器面前Fiddler伪装成一个HTTPS服务器,而在真正的HTTPS服务器面前Fiddler又装成浏览器,从而实现解密HTTPS数据包的目的。

解密HTTPS需要手动开启,依次点击:

1. Tools –> Fiddler Options –>  HTTPS

2. 勾选Decrypt HTTPS Traffic

3. 点击OK

3. Fiddler 抓取Iphone / Android数据包

想要Fiddler抓取移动端设备的数据包,其实很简单,先来说说移动设备怎么去访问网络,看了下面这张图,就明白了。

可以看得出,移动端的数据包,都是要走wifi出去,所以我们可以把自己的电脑开启热点,将手机连上电脑,Fiddler开启代理后,让这些数据通过Fiddler,Fiddler就可以抓到这些包,然后发给路由器(如图):

1. 打开Wifi热点,让手机连上(我这里用的360wifi,其实随意一个都行)

2. 打开Fidder,点击菜单栏中的 [Tools] –> [Fiddler Options]

3. 点击 [Connections] ,设置代理端口是8888, 勾选 Allow remote computers to connect, 点击OK

4. 这时在 Fiddler 可以看到自己本机无线网卡的IP了(要是没有的话,重启Fiddler,或者可以在cmd中ipconfig找到自己的网卡IP)

5. 在手机端连接PC的wifi,并且设置代理IP与端口(代理IP就是上图的IP,端口是Fiddler的代理端口8888)

6. 访问网页输入代理IP和端口,下载Fiddler的证书,点击下图FiddlerRoot certificate

【注意】:如果打开浏览器碰到类似下面的报错,请打开Fiddler的证书解密模式(Fiddler 设置解密HTTPS的网络数据)

No root certificate was found. Have you enabled HTTPS traffic decryption in Fiddler yet?

7. 安装完了证书,可以用手机访问应用,就可以看到截取到的数据包了。(下图选中是布卡漫画的数据包,下面还有QQ邮箱的)

4. Fiddler 内置命令与断点

Fiddler还有一个藏的很深的命令框,就是眼前,我用了几年的Fiddler都没有发现它,偶尔在别人的文章发现还有这个小功能,还蛮好用的,整理下记录在这里。

FIddler断点功能就是将请求截获下来,但是不发送,这个时候你可以干很多事情,比如说,把包改了,再发送给服务器君。还有balabala一大堆的事情可以做,就不举例子了。


命令


对应请求项


介绍


示例


?


All

问号后边跟一个字符串,可以匹配出包含这个字符串的请求
?google


>


Body

大于号后面跟一个数字,可以匹配出请求大小,大于这个数字请求
>1000


<


Body

小于号跟大于号相反,匹配出请求大小,小于这个数字的请求
<100


=


Result

等于号后面跟数字,可以匹配HTTP返回码
=200


@


Host

@后面跟Host,可以匹配域名
@www.baidu.com


select


Content-Type

select后面跟响应类型,可以匹配到相关的类型
select image


cls


All

清空当前所有请求
cls


dump


All

将所有请求打包成saz压缩包,保存到“我的文档\Fiddler2\Captures”目录下
dump


start


All

开始监听请求
start


stop


All

停止监听请求
stop

断点命令 

bpafter


All

bpafter后边跟一个字符串,表示中断所有包含该字符串的请求
bpafter baidu(输入bpafter解除断点)


bpu


All

跟bpafter差不多,只不过这个是收到请求了,中断响应
bpu baidu(输入bpu解除断点)


bps


Result

后面跟状态吗,表示中断所有是这个状态码的请求
bps 200(输入bps解除断点)


bpv / bpm


HTTP方法

只中断HTTP方法的命令,HTTP方法如POST、GET
bpv get(输入bpv解除断点)


g / go


All

放行所有中断下来的请求  

示例演示:

select

cls

dump

断点命令:

断点可以直接点击Fiddler下图的图标位置,就可以设置全部请求的断点,断点的命令可以精确设置需要截获那些请求。如下示例:

命令:

bpafter

bps

bpv

g / go

原文地址:https://www.cnblogs.com/wlming/p/10400175.html

时间: 2024-11-10 21:34:05

网络抓包 Fiddler的相关文章

网络抓包工具 Fiddler

网络抓包工具 Fiddler 下载网址 http://www.telerik.com/fiddler 简单介绍 Fiddler是一个http协议调试代理工具,它能够记录并检查全部你的电脑和互联网之间的http通讯,设置断点.查看全部的"进出"Fiddler的数据(指cookie,html,js,css等文件,这些都能够让你胡乱改动的意思). Fiddler 要比其它的网络调试器要更加简单.由于它不只暴露http通讯还提供了一个用户友好的格式. 能够在调试HTTP中使用.也能够用来进行爬

网络抓包wireshark(转)

转自 网络抓包wireshark 抓包应该是每个技术人员掌握的基础知识,无论是技术支持运维人员或者是研发,多少都会遇到要抓包的情况,用过的抓包工具有fiddle.wireshark,作为一个不是经常要抓包的人员,学会用Wireshark就够了,毕竟它是功能最全面使用者最多的抓包工具. Wireshark(前称Ethereal)是一个网络封包分析软件.网络封包分析软件的功能是撷取网络封包,并尽可能显示出最为详细的网络封包资料.Wireshark使用WinPCAP作为接口,直接与网卡进行数据报文交换

iPhone上网络抓包方法详解

iPhone上网络抓包方法详解 Mac上常用抓包工具: Charles, Fiddler, Wireshark Wi-Fi环境下抓包 (以Charles为例) Mac和iPhone连接相同Wi-Fi 打开Charles,Help->Local IP Address 打开iPhone无线局域网设置, 选中连接的Wi-Fi, 配置代理,服务器输入步骤2中的ip地址,端口号默认8888 设置好之后,就可以在Charles中看到手机上的所有请求 Charles还有许多其他的功能,可以抓https请求,设

HttpWatch网络抓包工具的使用

HttpWatch网络抓包工具是专为IE浏览器集成的一款网络拽包工具. 是一款强大的网页数据分析软件,是最好用的抓包工具,httpwatch可以抓到上传视屏图片的包,一般的抓包软件是抓不到的.打开IE浏览器,选择工具“再选择“HttpWatch Professional”即可.建议用专业版进行网络数据抓取. 网络爬虫是捜索引擎抓取系统的重要组成部分.爬虫技术可以应用在很多方面,当然是好的方面.用HttpWatch结合网络爬虫技术就可以很轻松的实现网络数据的抓取. 然后实现一些应用. (1)下载H

iOS系统网络抓包方法

在进行iOS开发过程中,经常会遇到各种各样的网络访问问题,以前苦于没有抓包工具,很多网络问题解决起来很痛苦.现在终于好了,本文提供两种方式进行网络抓包: 1. 网络共享 + 可视化抓包工具 基本原理 原理比较简单,ios设备通过代理方式共享连接mac电脑的无线网卡,使用抓包工具抓包,然后进行分析(我们推荐使用Wireshark,在MAC系统上也可以使用Paros工具). 现在以MAC系统下Paros工具为例,详细描述下抓包过程: 操作步骤 1)  首先将MAC电脑的以太网共享给airport,使

工欲善其事,必先利其器 – 网络抓包

抓包(packet capture)就是将网络传输发送与接收的数据包进行截获.分析,甚至可以用来转发,重传等等,抓包可使用的场景很多,排错.验证.测试.核对等,我就举几个例子来说明吧. 场景一.在一台存储上启用了SNMP服务,随后想通过验证UDP161/162的侦听状态来确认服务是否确实启动了. 详情:最简单的方式就是用进入存储的OS运行类似netstat –anop查看UDP端口状态,还有些同学会条件反射的说telnet一下呗或者用nmap的工具做端口扫描,但是最后发现结果是Open | Fi

网络抓包指南

网络抓包指南 1.交换机配置流量镜像接口 1.1登录交换机备份相关配置,执行以下操作 mirroring-group 2 mirroring-port GigabitEthernet 1/0/4 to GigabitEthernet 1/0/14 GigabitEthernet 1/0/18 to GigabitEthernet 1/0/21 both mirroring-group 2 monitor-port GigabitEthernet 1/0/17 quit save ### Giga

CatchPacket网络抓包软件

CatchPacket网络抓包软件  qq  22945088431.技术特点:基于WinPcap库,c# winform2.实现获取机器所有网卡,可任意选择监听3.可以捕获常见网络协议arp dns http icmp igmp ftp pop3 smtp telnet udp tcp dhcp4.抓取数据包的信息内容,安装网络层,结构化展现数据信息5.16进制数据内容解析6.数据保存,方便下次分析7.网络数据统计,方便分析8.提供一些常见的网络协议测试工具 技术特点:基于WinPcap库,c

iOS开发——使用Charles进行https网络抓包详解

我在前面两篇博客中<网络抓包工具Charles的介绍与使用><iOS开发--使用Charles进行http网络抓包详解>对Charles的http抓包进行了详细的讲解.今天我们来实现一下进行https的抓包,比http抓包稍微麻烦一点. (1)https初级的配置请参考<网络抓包工具Charles的介绍与使用>中的https配置部分. (2)由于目前iOS9更改了对于https网络的安全机制,所以还需要在iPhone上安装一个证书,安装方式如下: 在iPhone的Saf