Fiddler基础知识
- Fiddler是强大的抓包工具,它的原理是以web代理服务器的形式进行工作的,使用的代理地址是:127.0.0.1,端口默认为8888,我们也可以通过设置进行修改。
- 代理就是在客户端和服务器之间设置一道关卡,客户端先将请求数据发送出去后,代理服务器会将数据包进行拦截,代理服务器再冒充客户端发送数据到服务器;同理,服务器将响应数据返回,代理服务器也会将数据拦截,再返回给客户端。
- Fiddler可以抓取支持http代理的任意程序的数据包,如果要抓取https会话,要先安装证书。
HTTP协议
- 要分析Fiddler抓取的数据包,我们首先要熟悉HTTP协议。HTTP即超文本传输协议,是一个基于请求与响应模式的、无状态的、应用层的协议,绝大多数的Web开发,都是构建在HTTP协议之上的Web应用。
- HTTP的工作过程:当我们请求一个超链接时,HTTP就开始工作了,客户端先发送一个请求到服务器,请求内容包括:协议版本号、请求地址、请求方式、请求头和请求参数;服务器收到请求后做相应的处理,并将响应数据返回到客户端,响应内容包括:协议版本号、状态码和响应数据。前端根据响应数据做相应的处理,就是最终我们看到的内容。这些过程是HTTP自动完成的,我们只是输入或点击请求地址,然后查看前端给我们展示的内容。更多关于HTTP协议的介绍请参考:http://blog.sunf.top/detail.html?tid=25
- 请求方式常用的有:GET、PUT、POST、DELETE。
- HTTP状态码主要分为5类:以1开头的代表请求已被接受,需要继续处理;以2开头的代表请求已成功被服务器接收、理解、并接受;以3开头的代表需要客户端采取进一步的操作才能完成请求;以4开头的代表了客户端看起来可能发生了错误,妨碍了服务器的处理;以5开头的代表了服务器在处理请求的过程中有错误或者异常状态发生,也有可能是服务器意识到以当前的软硬件资源无法完成对请求的处理。
- 常见的主要有:200:服务器成功处理了请求;404:未找到资源;500:内部服务器错误;503:服务器目前无法为请求提供服务;302:请求的URL已临时转移;304:客户端的缓存资源是最新的,要客户端使用缓存。
Fiddler的使用
一、安装设置
- 官网下载地址:http://www.telerik.com/fiddler
- 下载完成后安装,安装完成后打开
- 如下图设置Fiddler代理:
二、设置手机代理
- 打开手机【设置】开启【wlan】-->连接路由器的wifi网络-->长按该wifi名称-->勾选【显示高级设置】,代理设置选择【手动】-->服务器处输入电脑ip,输入端口-->端口为:8888
- 连接后,fiddler就会显示手机上的相关浏览信息了
- 不同型号手机代理设置可能不太相同,基本都在设置中可找到(如魅族:长按wifi名称-->代理设置,进行连接设置;华为:长按wifi名称-->名称-->修改网络-->输入wifi密码,代理选择手动,输入服务器ip和端口号,点击连接即可)
三、Fiddler使用
1)工具栏快捷按钮介绍
1.气泡图标:增加备注
点击一条会话,点击此按钮(或者右键Comment),弹出增加备注弹窗,点击OK后,备注就显示在Comment下
2.Replay:回放按钮,对捕捉到的某条会话进行回放操作
点击一条会话,点击Replay按钮(或者右键Replay),会话重新回放
3.X:清空监控面板
Remove all:清空所有
Images:过滤图片请求
Non-200s:过滤非200的请求
Non-Browser:过滤非浏览器的请求
4.Go:相当于调试Debug功能,请求断点的时候,让断点继续向下走
结合状态栏使用,点击底部状态栏,箭头朝上是请求发出时产生断点,箭头朝下是请求回来时产生断点
设置断点后,选中某条会话à使用Replay按钮,请求发送不出去,然后点击Go,请求成功
5.Stream:模式切换,两种模式;默认是缓冲模式,按下去就是流模式
流模式:
缓冲模式:一个http请求全部返回给fiddler的时候才会展示出来
6.Decode:解压请求
7.Keep:保持会话,默认保持All sessions,保持会话越多fiddler占用内存越大
xxx sessions:保持xxx个会话
8.靶心按钮:过滤请求,可以过滤掉不想看到的请求
鼠标按住此处,变为十字号显示,按住后移动到想要捕获的进程页面,此处变为红色显示,且只捕获此页面相关进程;再次点击后变为Any Process
9.Find:查找
点击Find,Find Sessions弹窗-->Find 输入想要查找的Host名称,下面选择某种标示颜色-->点击Find Sessionsàfiddler页面中即标示查找的会话请求
10.Save:保存,便于清空会话后可从保存的文件中查看
Save把当前会话保存到一个地方-->清空所有会话-->左上角工具栏 点击File-->Recent Archives-->选择最近的文件,fiddler中即可显示之前所有会话
11.保存截图
保存后在fiddler底部出现一条图片会话,点击后右侧出现图片,可进行保存到桌面的操作
12.计时器
13.Browse:快速启动浏览器
选中一条会话,可以快速启动已安装的浏览器
14.Clear Cache:清除IE浏览器缓存
15.TextWizard:编码/解码文本内容
复制内容-->点击TextWizardàURLDecode
16.Tearoff:分离面板
点击后单独显示View窗口,点击x关闭分离面板
17.MSDN Search:搜索MSDN
2)底部命令行工具
1.help:打开官方的使用页面介绍,所有的命令都会列出来
2.cls:清屏(Ctrl+X效果相同)
3.select:选择会话的命令
4.?.png:用来选择png后缀的图片
5.bpu:截获request
四、抓取https协议
fiddler默认只能抓http请求,如果要抓https还需要进行一下设置:
--通过Tools>Options>https>勾选Dectypt https traffic和Ignore server certificate errors(unsafe)
将证书导入浏览器中