1.抓包数据解析
# :HTTP Request的顺序,从1开始,按照页面加载请求的顺序递增。
Result : HTTP响应的状态
Protocol:请求使用的协议(如HTTP/HTTPS)
HOST:请求地址的域名/ip
URL:请求的服务器路径和文件名,也包含GET参数
BODY:请求的大小,以byte为单位
Content-Type:请求响应的类型
Caching:请求的缓存过期时间或缓存控制header的值
Process:发出此请求的Windows进程及进程ID
Comments :用户通过脚本或者菜单给此session增加的备注
custom:用户可以通过脚本设置的自定义值
或者下个中文版的FIdder
2.功能界面
(1)Statistics统计页签
通过该页签, 用户可以通过选择多个会话来得来这几个会话的总的信息统计,比如多个请求和传输的字节数。选择第一个请求和最后一个请求, 可获得整个页面加载所消耗的总体时间。从条形图表中还可以分别出哪些请求耗时最多, 从而对页面的访问进行访问速度优化。
(2)inspectors检查器页签
它提供headers、textview、hexview,Raw等多种方式查看单条http请求的请求报文的信息,它分为上下两部分:上部分为HTTP Request(请求)展示,下部分为HTTPResponse(响应)展示。
请求参数显示区
headers: 主要显示选择的请求的信息,包含、请求头、请求体、body等信息。
textView: 以文本的形式显示请求参数以及body值。
SyntaxView: 以脚本的形式显示请求参数以及body值(需要安装Syntaxview插件)。
WebForms: 以列表的形式显示请求参数以及body值。
HexView: 以16进制形式显示请求参数以及body值。
Auth: 显示header中Proxy-Authorization和Authorization值。
Cookies: 以直观的界面显示header中的cookies的值。
Raw: 将整个请求以纯文本的形式显示。
Josn: 以josn串形式显示请求参数以及body值。
XML: 以XML的形式显示请求参数以及body值。
响应结果显示区
Transformer: 响应信息的压缩编码格式,对响应信息进行编码、解码、转码操作。
Headers: 响应信息,包含响应状态、响应头、响应体。
textView: 以文本的形式展示响应结果。
SyntaxView: 以脚本的形式展示响应结果(需要安装插件)。
ImageView: 当响应中包含图片时可以用此功能进行查看图片以及图片信息。
HexView: 以16进制展示响应结果。
WebView: 以列表形式展示响应结果。
Auth: 展示响应结果中部分信息。
Caching: 响应的缓存过期时间或者缓存
Cookies: 展示响应中的cookies信息。
Raw: 以纯文本形式展示响应头。
json: 以JSON形式展示响应结果。
XML: 以XML形式展示响应结果。
(3)AutoResponse自动响应页签
Fiddler最实用的功能, 它可以抓取在线页面保存到本地进行调试, 大大减少了在线调试的困难, 可以让我们修改服务器端返回的数据, 例如让返回都是HTTP404或者读取本地文件作为返回内容。可设置打开某网页显示自己想要的内容。
(4)composer组合器页签
支持手动构建和发送HTTP, HTTPS和FTP请求, 我们还可以从web session列表中拖曳session, 把它放到composer选项卡中, 当我们点击Execute按钮, 把请求发送到服务器端。
(5)log日志页签: 打印日志
(6)Filters过滤器页签
过滤器可以对抓包的数据流列表进行过滤, 我们可以标记、 修改或隐藏某些特征的数据流。
3.命令行工具
截图最下面黑色框内
help : 打开官方的使用页面介绍, 所有的命令都会列出来
cls : 清屏 (Ctrl+x 也可以清屏)
select : 选择会话的命令, 选择所有相应类型select image、select css、select html
?sometext : 查找字符串并高亮显示查找到的会话列表的条目,?http://qq.com
>size : 选择请求响应大小小于size字节的会话
=status/=method/@host:查找状态、方法、主机相对应的session会话,=504,=get,@http://www.qq.com
quit:退出fiddler
Bpafter,Bps, bpv, bpm, bpu这几个命令主要用于批量设置断点
Bpafter xxx: 中断 URL 包含指定字符的全部 session 响应
Bps xxx:中断 HTTP 响应状态为指定字符的全部 session 响应。
Bpv xxx:中断指定请求方式的全部 session 响应
Bpm xxx:中断指定请求方式的全部 session 响应,等同于bpv xxx
Bpu xxx:与bpafter类似。
4.手机抓包
①启动Fiddler, 打开菜单栏中的 Tools > Fiddler Options, 打开“FiddlerOptions” 对话框
②在“Fiddler Options”对话框切换到“Connections” 选项卡, 然后勾选“Allowromote computers to connect” 后面的复选框, 然后点击“OK” 按钮
③在本机命令行输入: ipconfig, 找到本机的ip地址。
④打开android设备的“设置” ->“WLAN”,找到你要连接的网络,在上面长按,然后选择“修改网络”,弹出网络设置对话框,然后勾选“显示高级选项”(不同的手机,设置方法有所不同)
⑤在“代理” 后面的输入框选择“手动”,在“代理服务器主机名”后面的输入框输入电脑的ip地址,在“代理服务器端口”后面的输入框输入8888, 然后点击“保存” 按钮
⑥然后启动android设备中的浏览器,访问百度的首页,在fiddler中可以看到完成的请求和响应数据
备注: 如果是Android模拟器中ip要填写10.0.2.2,genymotion模拟器中ip要填写:10.0.3.2,手机实机中ip填电脑的ip,端口就是burp或者fiddler监听的端口 ,要处于同一网络下
只过滤手机接口且不影响电脑网络设置:
1.在电脑运行窗口中,输入Cmd 查找到电脑的Ip地址和计算机名。查找Ip:Ipconfig ,查看计算机名:set computername
2.在 Fiddler 的 QuickExec 区块,输入以下指令,并按下 Enter 确认。
prefs set fiddler.network.proxy.registrationhostname +你的电脑名称(刚才查询的)