目录
(一)Fiddler的安装:
(二)使用Fillder进行抓包。
(三)如何开启、关闭抓本机上的包
(四)清除会话列表
(五)过滤域名
(六)QuickExec命令行的使用
(七)设置断点
(八)Fiddler中创建AutoResponder规则
(九)模拟Get,Post请求
(十)会话比较功能:
(十一)Fiddler保存会话
(十二)Fiddler模拟简单并发。
首先我们要先下载下来Fillder 下载地址
下载好了之后我们解压出来安装包,然后按顺序点击IAgree→修改安装路径→Install,没什么要说的很简单。
(二)Fillder的配置:
安装好之后我们还不能监听我们的浏览器,我们要依次点击Tools>Options>HTTPS>勾选Decrypt HTTPS traffic option
勾选完成后会提示你安装根证书,点击yes安装根证书。如果没有提示点击Actions>Trust Root Certificate会提示你安装。点击yes即可。
Fillder默认抓取火狐、IE浏览器,如果你想要抓取别的浏览器的包,你需要设置浏览器代理,拿Google浏览器为例,我们在谷歌浏览器的设置中搜索>打开代理设置>局域网设置>点击高级,在高级中修改参数。
修改好确认保存以后打开浏览器随便点击一个网址就能抓包了。
并且fillder能够设置抓哪些终端的包
All Processes:代表抓取所有https程序包,包括本机、手机
web browser:只抓取浏览器中的https请求
non browser:只抓取除浏览器以外的https请求
remote clients:抓取远程客户端的https,可以代表手机
hide all:所有包都不抓取
这个设置也可以在Tools>fillder Options>Https下设置
作用:如果你想只抓取手机的https的时候,为了不让本机的https信息干扰。
开启、关闭抓本机https有三种:
第一种:点击红圈里的Cap就能开启关闭抓取本机包。
第二种:File>Capture traffic 勾选
第三种:如第二种上边图中提示。按下F12快捷键也是可以的。
作用:当无用的https请求太多的时候你可以选择清除会话列表,还能选择性的清除。
(四)快捷功能
这四个框分别代表:
Capturing:是否抓取本机请求
All Processes:是否抓取所有位置请求,包括浏览器,手机。
1/11:代表打开一个页面的点此操作下,产生了11个请求
https...:是对该包的详细描述
fiddler抓包可以完成我们开发者的调试测试需求。但是多余的网页请求和其他链接会影响我们的开发需求。所以我们要排除其他无用的包,只关注我们制定域名的请求包。
在fiddler中找到Filters选项并点击打开。然后勾选UseFilters
然后在Hosts中我们能够看到:
第一个选项框:
No Zone Filter:不作任何过滤
show only Intrance Hosts:只显示内部网络主机
show only Internet Hosts:只显示互联网主机
第二个选项框:
No Host Filter:不根据Host过滤,此时下方输入框不能输入
hide the following Hosts:隐藏下列Hosts列表
Show only the following Hosts:只显示下列Hosts列表
Flag the following Hosts:标记下列主机列表
然后输入框中输入host的时候,如果是多个,可用分号分隔,如果输入框是黄色的,说明输入内容有修改且没有保存,可以点击输入框右上角的“changes not yet saved”提示来保存修改。
也可以用Ctrl+F进行查找回话。
常见的命令有:
help 打开官方的使用页面介绍,所有的命令都会列出来
cls 清屏 (Ctrl+x 也可以清屏)
select 选择会话的命令
.png 用来选择png后缀的图片
bpu 截获request
Fiddler最强大的功能莫过于设置断点了,设置好断点后,你可以修改httpRequest 的任何信息包括host, cookie或者表单中的数据。设置断点有两种方法
第一种:打开Fiddler 点击Rules-> Automatic Breakpoint ->Before Requests(这种方法会中断所有的会话)
如何消除命令呢? 点击Rules-> Automatic Breakpoint ->Disabled
第二种: 在命令行中输入命令: bpu http://www.baidu.com (这种方法只会中断http://www.baidu.com)
如何消除命令呢? 在命令行中输入命令 bpu
在AutoResponder下加入规则,选择你想替换的。在下边设置成你想替换本地文件就可以了。
一、Composer简介
点开右侧Composer区域,可以看到如下界面,就是测试接口的界面了
1.请求方式:点开可以勾选请求协议是get、post等
2.url地址栏:输入请求的url地址
3.请求头:第三块区域可以输入请求头信息
4.请求body:post请求在此区域输入body信息
5.执行:Execute按钮点击后就可以执行请求了
6.http版本:可以勾选http版本
7.请求历史:执行完成后会在右侧History区域生成历史记录
二、模拟get请求
1.在Composer区域地址栏输入hao123:https://www.hao123.com/
2.选择get请求,点Execute执行,请求就可以发送成功啦
3.请求发送成功后,左边会话框会生成一个会话记录,可以查看抓包详情
4.右侧history区域会多一个历史请求记录
ur地址格式:
一个完整的url地址,基本格式如下:
https://host:port/path?xxx=aaa&ooo=bbb
--http/https:这个是协议类型,如图中1所示
--host:服务器的IP地址或者域名,如图中2所示
--port:HTTP服务器的默认端口是80,这种情况下端口号可以省略。
如果使用了别的端口,必须指明,例如:192.168.3.111:8080,这里的8080就是端口
--path:访问资源的路径,如图中3所示/s (图中3是把path和请求参数放一起了)
--?:url里面的?这个符号是个分割线,用来区分问号前面的是path,问号后面的是参数
--url-params:问号后面的是请求参数,格式:xxx=aaa,如图4区域就是请求参数
--&:多个参数用&符号连接
5.会话框选中该记录,查看测试结果:
--选中该会话,点开Inspectors
--response区域点开Raw区域
--Raw查看的是HTML源码的数据
--也可以点WebView,查看返回的web页面数据
四、模拟post请求
1.请求类型勾选post
2.url地址栏输入对应的请求地址
3.body区域写登录的json参数
4.header请求头区域,可以把前面抓包的数据copy过来
(注意,有些请求如果请求头为空的话,会请求失败的)
同样在测试完成后会在Inspectors中显示测试结果。
选中2个会话,右键然后点击Compare,就可以用WinDiff来比较两个会话的不同了(当然需要你安装WinDiff)
有些时候我们需要把会话保存下来,以便发给别人或者以后去分析。 保存会话的步骤如下:
选择你想保存的会话,然后点击File->Save->Selected Sessions
点击Fiddler面板上某个需要再次调试的URL,右键-》Replay -》Reissue Requests,如直接点它,会自动出现一个一样的连接。
如果按住Shift按扭再点Reissue Requests,会出现输入框让你输入要模拟多少次,这儿可以用来做简单的并发测试滴,我们就模拟一次
这样就模拟了五次。