前言
哈哈哈,只负责讲解Fiddler
话不多说直接走起。
简单说下fiddler配置及使用教程
注意:Fiddler 用作代理 Web 服务器。 它使用的代理地址:127.0.0.1,端口:8888。当Fiddler退出时,会自动注销,以免影响其他程序。
但是,如果Fiddler异常退出,此时由于Fiddler不会自动退出,网页将无法访问。 解决办法是重启Fiddler。
就这么win怎么安装 Fiddler 就不说了,不会的自己百度下。
Fiddler配置
我们安装完 Fiddler 后打开 Fiddler ,找到Fiddler Tool->Fiddler Options->HTTPS 。
(配置完后记得要重启Fiddler,要不然不会生效).
注释:
选中”Decrpt HTTPS traffic“, Fiddler就可以截获HTTPS请求,第一次会弹出证书安装提示,若没有弹出提示,勾选Actions-> Trust Root Certificate
另外,如果您要监控的程序访问的HTTPS站点使用了不受信任的证书,请把下面的“Ignore servercertificate errors忽略服务器证书错误”打上勾。
安装证书提示:
这里直接点击 YES 就行了,意思就是问你是否安装https证书。
DO_NOT_TRUST_FiddlerRoot ,这个就是证书的名称。 我们这一步直接点击 是 就好了
最后找到这个,字面意思就是把证书放到桌面。
手机端抓包配置
这里代理端口看你自己需要是默认8888,还是说你需要修改。
“Allow remote computersto connect” ,远程连接的话如果有CCP代理这里可以不用开,防止被人扫描你端口,直接使用,具体看个人用途。
手机端(客户端)设置
首先查看电脑的 IP 地址,确保手机和电脑在同一个局域网内
这一步如果是本地抓包,自己查下自己的ip
如果是服务器的话填写公网ip就可以了。
Android 手机上的配置
将 Fiddler 代理服务器的证书导入手机,即可抓取这些 APP 包。
导入过程:首先就是手机设置wifi代理,然后打开浏览器,在地址栏输入代理服务器的IP和端口(即电脑的IP加上fiddler的端口),会看到一个fiddler提供的页面,然后确认安装 .具体操作看图:
手机上设置好代理,然后下载证书。
ios手机上的配置
苹果手机上操作的也是很简单,上述办法是一个,还有一个就是直接把刚刚导出在桌面上的证书下载到iCloud安装就行
到这里的话fiddler已配置完成。
Fiddler的使用
接着说下怎么抓包使用,具体用途看你自己操作,违法事情不教。
视图功能区域
在快捷功能区挑几个常用的说明,自己试试其他功能:
快捷功能区
1:给会话添加备注信息
2:重新加载当前会话
3:删除会话选项
4:放行,和断点对应,后面详细讲解
5:响应模式。也即是,当Fiddler拿到远程的response后是缓存起来一次响应给客户端还是以stream的方式直接响应。
6:解码。有些请求是被编码的,点击这个按钮后可以根据响应的编码格式自动解码。
7:查找会话。
8:保存会话。
9:截屏。截屏后,会以会话的方式返回一个截图。
接着来看看会话列表
#栏图标说明
快捷键
要删除对话,您可以在选择对话后按 del。 如果要清除列表,可以使用 Ctrl X
左键单击单个 HTTP 请求,可以在右侧的选项卡面板中看到以下信息:
- 1. Statistic
关于HTTP请求的性能和其他数据分析:
我们可以看到一些基本的性能数据:比如DNS解析耗时8ms,建立TCP/IP连接耗时8ms等等。
2. Inspectors
提供headers、textview、hexview、Raw等方式查看单个http请求请求报文的信息,分为两部分,上半部分是请求头部分,下半部分是响应头部分。 对于每个部分,提供了多种不同的格式来查看每个请求和响应的内容。
a、ImageView标签
可以使用ImageView查看JPG格式的图片,选择Content-Type为image/jpeg的响应,点击TextView
b、TextView 标签
HTML/JS/CSS 使用 TextView 查看响应的内容。 选择 Content-Type 为 text/html 的响应,然后单击 TextView
c、Raw标签
Raw标签可以查看响应消息和响应正文,但不包含请求消息
d、Auth标签
Auth可以查看Proxy-Authorization和Authorization的相关信息
e、Cookies标签
Cookies选项卡可以看到请求的cookie和响应的set-cookie头信息。
3.AutoResponder标签
Fiddler 的 AutoResponder 选项卡允许您在本地返回文件,而无需向服务器发送 http 请求。
直接说一下他的使用方式:
使用了百度手机助手在手机端的桌游界面。
1.先看图(先来个欢乐斗地主的图)
2.打开Fiddler,然后点击棋盘游戏进入上层界面,会发现当前显示的五张图片会被请求
这时候我们切换到AutoResponder界面,点击鼠标左键,拖动要重定向的session到AutoResponder界面
选择好我们要返回的图片后,点击保存。
然后关掉,清除应用缓存,再打开,点击棋牌游戏,可以看到
这是为了替换其中一个,也许你会说,本来就是这样,那么我们引入了基于其他规则的重定向。
我们使用重定向将百度手机助手中的图片全部替换为刚才的小头像。
之前的操作是一样的。 拖过去后,我们可以点击Save前边的倒的小三角,然后可以看到里面有很多规则,现在我们选择
第一个:这是一个正则表达式。
然后选择刚才的头像图片,然后保存。
清除缓存并重新打开,可以看到下图:
可以看到,所有的jpg格式都变成了我们的头像。
关于重定向还有很多,剩下的需要慢慢研究。
4.Composer 自定义请求发送服务器
Composer 允许将自定义请求发送到服务器,您可以手动创建新请求,也可以将现有请求拖放到会话表中
Parsed模式下,只需要提供一个简单的URLS地址即可(如下图所示,也可以在RequestBody中自定义一些属性,比如模拟浏览器User-Agent)
5.断点请求/响应
如图所示,可以点击箭头所指的位置。 共有三种状态:
空白:未设置断点。
向上箭头:表示断点请求。 此时客户端的请求无法直接到达目标服务器,需要手动控制。
向下箭头:表示断点响应。 此时目标服务器的响应无法直接到达客户端,需要手动控制
还有一种打断点的方式,在命令行中输入命令:
bpu www.baidu.com (断点请求)
bpuafter www.baidu.com(断点响应)
这种方法只会中断www.baidu.com
- 断点请求并修改
操作步骤如图:
- 设置断点请求,访问网页
- 点击对应的对话
- 查看请求消息信息
- 修改请求内容
- 完成断点,放行,将请求发送到目标服务器。
图中的Break On Response表示向服务器发送请求,但是服务器的响应被fiddler拦截了,此时可以修改响应内容(类似于断点响应)。
与断点请求操作类似,只需修改响应区的消息信息即可。
响应断点时,请注意超时时间。
6.过滤域名
Fiddler 捕获包来完成我们移动开发者的调试和测试需求。 但是,冗余的网页请求和其他手机链接影响了我们的手机开发需求。 所以我们需要排除其他无用的包,只关注我们指定域名的请求包。
打开fiddler,找到Filters选项并点击打开。如图所示
默认情况下,这个页面是灰色的,代表默认不过滤任何请求。现在我们勾选 Use Filters
一般常用的有三种过滤条件:
1.域名过滤,只显示特定域名的记录:
2. 类型过滤。 一般情况下,如果不需要查看图片、CSS、JS等各种静态素材,直接过滤即可。
.*\.(bmp|css|js|gif|ico|jp?g|png|swf|woff)
需要过滤多少自己直接加入就好了
3.根据返回状态码,比如只想显示200的状态,其他的不显示
Fiddler 的内置命令
?
问号(?)后跟一个字符串,Fiddler会高亮所有session中匹配该字符串的所有匹配项(下图中输入的是?google.com)
温馨提示:匹配的字符串是 Protocol、Host 和 URL 中的任何子字符串。
> 和 <
大于号(>)和小于号(<)后跟一个数值,表示所有大于或小于该数值的会话都高亮显示。
比如我输入>5000,回车,结果如下:
温馨提示:你可以直接输入 >5k 表示你想高亮所有尺寸大于 5KB 的会话。
=
等号 (=) 后面可以跟 HTTP 状态代码或 HTTP 方法。 例如,=200 表示突出显示所有正常响应。
下图输入=POST,表示要高亮POST方法的所有会话:
@
@ 后边跟的是 Host,比如我想高亮所有鱼C论坛的连接,我可以 @bbs.fishc.com
温馨提示:下边 bpafter、bps、bpv、bpm 和 bpu 用于设置断点。
会话中断后,点击页面顶部的Go按钮释放当前中断的会话,但新的匹配内容仍会被中断。 输入不带参数的命令,取消之前设置的断点。
bpafter
bpafter 后跟一个字符串,表示所有包含该字符串的会话都被中断。
比如我想中断所有包含fishc的响应,那么我在fishc之后输入bp,然后在浏览器中输入bbs.fishc.com,发现没有收到服务器响应,于是我全部中断给Fiddler:
bps
HTTP 状态码后跟 bps,这意味着所有具有此状态码的会话都被中断。
bpv 或 bpm
bpv 或 bpm 后跟 HTTP 方法,表示该方法的所有会话都被中断。
bpu
与bpafter类似,区别在于:bpu在发起请求时中断,bpafter在收到响应后中断。
cls 或 clear
清除当前的所有会话。
dump
将所有session打包成.zip压缩包,保存在C盘根目录下。
g 或 go
放行所有中断下来的会话。
hide
将 Fiddler 隐藏。
show
将 Fiddler 恢复。
urlreplace
urlreplace 后跟两个字符串,表示替换 URL 中的字符串。 例如,urlreplace baidu fishc 表示将所有 URL 的 baidu 替换为 fishc。
温馨提示:不带任何参数直接输入urlreplace即可恢复原貌。
start
Fiddler 开始工作。
stop
Fiddler 停止工作。
quit
关闭 Fiddler。
select
Select 后跟响应类型(Content-Type),表示选择所有匹配的会话。
例如,如果您想让 Fiddler 选择所有图像,则可以使用 select image;
并且 select css 选择所有 css 文件;
当然,select htm 就是选择所有的html文件
allbut 或 keeponly
与 select 类似,但 allbut 和 keeponly 将删除所有不相关的会话。
比如我只想看图片,那么我可以keeponly image,意思是删除所有和图片无关的对话:
!dns
后边跟一个域名,执行 DNS 查找并在右边的 LOG 栏打印结果:
!listen
设置其他监听的端口,默认是 8888
暂无评论内容