什么是抓包?

抓包(packet capture)就是将网络传输发送与接收的数据包进行截获、重发、编辑、转存等操作,也用来检查网络安全。抓包也经常被用来进行数据截取等。当然,我知道你的想做的还有更多……

163556qluouplglhzasaq2.gif 


什么是 Fiddler?

说到抓包的工具,FireBug 可能是程序猿用得最多的插件,而 Wireshark 或许是最强大的……而对于 HTTP 的调试, Fiddler 可能是最适合的。

Fiddler 是一个 HTTP 调试代理,以代理服务器的方式,监听系统的 HTTP 网络数据流动。说白了 Fiddler 就是使用所谓的 man-in-the-middle(中间人)方式“劫持”并分析你的网络数据。

原理如下图:

165240txueuze5eeg99aeh.jpg 


Fiddler 下载地址

官方下载地址:http://www.telerik.com/download/fiddler

为了防止被墙,小甲鱼帮大家先搬过来……

Win8 以后(Version 4.6.1.5)-> 链接:http://pan.baidu.com/s/1dDsfXc9 密码:55ou

Win8 以前(Version 2.6.1.5)-> 链接:http://pan.baidu.com/s/1dDCyOqX 密码:x9y3

Mac(Version 4.4.5.0)-> 链接:http://pan.baidu.com/s/1qklP0 密码:1zdz

Linux(4.4.8.4)-> 链接:http://pan.baidu.com/s/1pJIQb5D 密码:zti4

注1:这个工具还是在 Windows 用起来比较屌屌的!

注2:Linux 和 Mac 是利用 Mono 框架提供 .NET 的运行环境(需先安装 Mono 框架),因此性能和稳定就不如 Windows 酸爽啦~

161348bfbnv81pv8612fc8.gif 


安装 Fiddler

Fiddler 的安装很容易,只需要点击“我愿意”,然后听天由命就行了:

165708ak6lwpkkl7n1461p.png 

第一次打开会提醒你这个:

233909coxbosustllljsoc.png 

大概意思就是说 Windows 使用了一种称为“AppContainer”的隔离技术,使得一些流量无法正常的捕获。打开程序后点击工具栏上的 WinConfig 按钮可以解除这个“魔咒”。然后问你是否想要了解更多?点“否(N)”让它闭嘴即可。


为 Fiddler 配置浏览器

1. 清空浏览器缓存

为了确保所有的请求都被发送和捕获,那么请在开工前清空一下浏览器的缓存。

什么???你不知道怎么清空????

好吧,自己百度吧~

很容易的, 搜索“你的浏览器名字 + 清空缓存”即可,比如“Chrome 清空缓存”

020016mxjo8vmvrmp6rpfs.gif 

2a. 对于 IE,Chrome,Safari 和 Opera 浏览器

无需做预处理, Fiddler 会自动帮你设置好。

其实打开 Fiddler 那一刹那,它就帮你把这些浏览器的代理设置为 127.0.0.1:8888,如下图:

021112z2k0wekp1tfgmtm2.png 

然后关闭 Fiddler 那一刹那,它又会恢复原样……

又是屌屌的~

021253inhz3njtf1jh1jkz.gif 

2b. FireFox 浏览器

默认情况下,FireFox 浏览器是没有启用代理的,你有三种选择:

一、安装 FiddlerHook 插件,依次点击:Tools > Monitor with Fiddler > Use Fiddler automaticall,通过 FiddlerHook 插件设置;

二、手动设置,依次点击:Tools > Options > Advanced > Network > Settings > Use System Proxy Settings

022426pzp5fpifpl00q00v.png 

同样将代理设置为:127.0.0.1:8888

三、先在 Fiddler 中依次点击:Tools > Fiddler Options > Connections

023053xbkilkopebyh1pyb.jpg 

对头,点击上图红圈的那个链接:Copy Browser Proxy Configuration URL

然后打开 FireFox 浏览器,依次点击:Tools > Options > Advanced > Network > Settings

023155tihi03t939097i0m.png 

在最下边粘贴即可!


解密 HTTPS 的网络数据

你以为用了 HTTPS 就安全了?

年轻人,Too young too simple 啊~~~

Fiddler 仍然可以通过伪造 CA 证书来欺骗浏览器和服务器。大概原理就是在浏览器面前 Fiddler 伪装成一个 HTTPS 服务器,而在真正的 HTTPS 服务器面前 Fiddler 又假装成浏览器,从而实现解密 HTTPS 流量的目的。

解密 HTTPS 需要你手动开启,依次点击:Tools > Fiddler Options > HTTPS

勾选 Decrypt HTTPS Traffic:

031605j6nalyhy6vnoahny.png 

点击 OK 按钮。

这时会生成伪造证书,系统基于安全的因素会提醒你是否允许?

032028mvvs3wqd33h32lv3.png