博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Fiddler之——Fiddler抓包分析
阅读量:4052 次
发布时间:2019-05-25

本文共 1931 字,大约阅读时间需要 6 分钟。

本文主要针对Fiddler的抓包处理。

Fiddler抓取HTTP请求。

抓包是Fiddler的最基本的应用,以本博客为例,启动Fiddler之后,在浏览器中输入http://blog.csdn.net/shandong_chu键入回车之后,在Fiddler的web session界面捕获到的HTTP请求如下图所示:

各字段的详细说明如下。需要注意的是#号列中的图标,每种图标代表不同的相应类型,具体的类型包括:

 

右键单击其中的一条请求。可以选择的操作有:save(保存请求的报文信息,可以是请求报文,可以是响应报文)。例如,我们保存的一条请求头信息如下:

不仅是单条session,Fiddler还支持保存所有抓取到的session(并支持导入),这对于抓取可疑请求然后保存,并在之后随时分析这些请求是很有帮助的。

如果想要重新发送某些请求,可以选中这些请求,然后点击工具栏中的reply.就可以重新发送选中的这些请求。

左键点击单条HTTP请求,可以在右侧的tab面板中看到如下信息:

1、Statistic 关于HTTP请求的性能和其他数据分析:我们可以从中看出一些基本性能数据:

DNS解析的时间消耗建立TCP/IP连接的时间消耗、发送/接收的数据包

2、Inspectors

分为上下两个部分,上半部分是请求头部分,下半部分是响应头部分。对于每一部分,提供了多种不同格式查看每个请求和响应的内容。

JPG 格式使用ImageView 就可以看到图片,

HTML//CSS 使用TextView 可以看到响应的内容

Raw标签可以查看原始的符合HTTP标准的请求和响应头。

Auth则可以查看授权Proxy-Authorization Authorization的相关信息。

Cookies标签可以看到请求的cookie和响应的set-cookie头信息。

3、AutoResponder

Fiddler比较重要且比较强大的功能之一。可用于拦截某一请求,并重定向到本地的资源,或者使用Fiddler的内置响应。可用于调试服务器端代码而无需修改服务器端的代码和配置,因为拦截和重定向后,实际上访问的是本地的文件或者得到的是Fiddler的内置响应。当勾选allow autoresponser 并设置相应的规则后(本例中的规则是将的请求拦截到本地的文件layout.html,如下图所示

然后在浏览器中访问,得到的结果实际为本地的HTML文件,说明请求已经成功被拦截到本地.当然也可以使用Fiddler的内置响应。下图是Fiddler支持的拦截重定向的方式:

因此,如果要调试服务器的某个脚本文件,可以将该脚本拦截到本地,在本地修改完脚本之后,再修改服务器端的内容,这可以保证,尽量在真实的环境下去调试,从而最大限度的减少bug发生的可能性。

不仅是单个urlFiddler支持多种url匹配的方式:

I. 字符匹配

baidu可以匹配 http://baidu.comhttp://baidu.com.cn

II. 完全匹配

EXACT开头表示完全匹配,如上边的例子

EXACT:http://blog.csdn.net/test

III. 正则表达式匹配

以regex: 开头,使用正则表达式来匹配URL

如:regex:(?insx).*\.(css|js|php)$  表示匹配所有以css,js,php结尾的请求url

4. Composer。

老版本的fiddler中叫request-builder.顾名思义,可以构建相应的请求,有两种常用的方式构建请求:

(1)Parsed 输入请求的url之后executed即可,也可以修改相应的头信息(如添加常用的accept, host, referrer, cookie,cache-control等头部)后execute.

这个功能的常见应用是:“刷票”(不是火车票!!),如刷新页面的访问量(基于道德和安全原因,如果你真去刷票,刷访问量,本博客概不负责)

(2)Raw。使用HTTP头部信息构建http请求。

5. Filter

Fiddler另一个比较强大的功能。Fiddler提供了多维度的过滤规则,足以满足日常开发调试的需求。如下图示:

过滤规则有:

a、host和zone过滤。可以过滤只显示intranet或则internet的HTTP请求

也可以选择特定域名的HTTP请求

 

b、client process:可以捕获指定进程的请求。

c、request headers:请求的数据信息

d、response headers:接收的数据信息

以及其他的过滤条件

你可能感兴趣的文章
socket,accept函数解析
查看>>
今日互联网关注(写在清明节后):每天都有值得关注的大变化
查看>>
”舍得“大法:把自己的优点当缺点倒出去
查看>>
[今日关注]鼓吹“互联网泡沫,到底为了什么”
查看>>
[互联网学习]如何提高网站的GooglePR值
查看>>
[关注大学生]求职不可不知——怎样的大学生不受欢迎
查看>>
[关注大学生]读“贫困大学生的自白”
查看>>
[互联网关注]李开复教大学生回答如何学好编程
查看>>
[关注大学生]李开复给中国计算机系大学生的7点建议
查看>>
[茶余饭后]10大毕业生必听得歌曲
查看>>
gdb调试命令的三种调试方式和简单命令介绍
查看>>
C++程序员的几种境界
查看>>
VC++ MFC SQL ADO数据库访问技术使用的基本步骤及方法
查看>>
VUE-Vue.js之$refs,父组件访问、修改子组件中 的数据
查看>>
Vue-子组件改变父级组件的信息
查看>>
Python自动化之pytest常用插件
查看>>
Python自动化之pytest框架使用详解
查看>>
【正则表达式】以个人的理解帮助大家认识正则表达式
查看>>
性能调优之iostat命令详解
查看>>
性能调优之iftop命令详解
查看>>