Fiddler是一款非常好用的抓包工具,同类软件还青花瓷,miteproxy, 但刚开始时真不太会用,这里是一些从网络上学来的使用技巧,作为记录,方便以后查看,也方便其他人学习.
特点:
- 同 Httpwatch、Firebug 这些抓包工具一样,Fiddler 够记录客户端和服务器之间的所有 HTTP 请求,可以针对特定的 HTTP 请求,分析请求数据、设置断点等。
- 但 Fiddler 更为强大的是,它还可以修改请求的数据,甚至可以实现请求自动重定向,从而修改服务器返回的数据。
- Fiddler 使用也十分方便。在打开 Fiddler 的时候,它就自动设置好了浏览器的代理,通过改写 HTTP 代理,让数据从它那通过,来监控并且截取到数据。当关闭 Fiddler 的时候,它又自动帮你把代理还原。
抓取请求:
默认情况下,fiddler启动后就自动开始工作,并且是将所有请求代理过来了. 是否通过fiddler抓包,可以通过F12快捷键来打开和关闭.
如果开启了,左下角会有显示
查看某个请求的内容:
双击即可:
右侧的 Inspectors 选项卡中可以查看该会话的内容,上半部分是请求的内容,下半部分是响应的内容,向右的箭头表示post请求。
过滤请求
因为默认是会抓取所有请求,而且默认是自动滚动的,使用很不方便,所以需要过滤我们需要抓包的请求.
勾选右侧filger选项卡,接着是useFilters, 下面可以选择是过滤互联网,局域网的,只显示某个主机域名的.比如我只想抓取www.jingang.ga这个网站的包.那么按上图的形式选择,注意,不要只写:jingang.ga这样是不行的.填写完了,只有保存了之后都会生效,最后是Run filterset now.
解密Https的数据:
https的流量都是经过证书加密的,正常情况下是无法显示内容的,也就是说你虽然抓取到包了,但是会显示乱码.要想显示Https包的内容,我们需要启动https功能:
tools ---> options --> Https 分别勾选图中选项,最后在actions处点击Trust root certificat, 会让你确认几次.一路yes之后,再看https请求就可以正常显示https数据包的内容了.
抓取移到端的数据包(比如Iphone)
想要 Fiddler 抓取移动端设备的数据包,其实很简单。只要设置代理,让这些数据通过 Fiddler 即可.前提是:手机 pc在同一局域网下.
tools ---> options --> connetions 勾选;“Allow remote computers to connect”勾选后要求重启.重启一下.
例如我的iphone, Pc都连在同一wifi下:
在手机上打开连接的wifi, 点击配置代理,选择手动.
服务器处填写:pc端的ip地址, 端口填写 fiddler中的端口,默认为8888
然后手机端访问代理的地址,即:192.168.43.198:8888
它会提示下载fiddler的证书,一路确认.此时pc端可能提示,确认即可. (如果连不上大概是因为没重启fiddler)
安装完证书后,手机app访问的流量就可以抓包了.
其它功能待更新.....