抓包工具:Fiddler 2-强大功能之三 综合
?
2、接着给 Mac 配置 HTTP 代理,IP 填 Windows 的 IP,端口就是上图中 Fiddler 监听的端口。
?
浏览器或应用无法被监听:
请检查相关程序的代理设置是否是Fiddler的IP和端口号,或者浏览器有没有使用具有代理功能的其他插件。
?
缓冲模式 VS 流模式:
Buffering Mode:内容先由Fiddler缓存,全部返回后再发送到客户端。
Streaming Mode:Fiddler收到内容立即就转发给客户端。
?
Fiddler捕获HTTPS会话:
1、默认下,Fiddler不会捕获HTTPS会话,打开Fiddler菜单:Tool->Fiddler Options->HTTPS tab。设置如下图:
?
2、点击“OK”按钮后,确认弹出的两提示窗口即可开始捕获HTTPS会话了。
?
原理:
TLS是一种端到端的传输层加密协议,是HTTPS协议的一个组成部分。访问HTTPS站点时,HTTP请求、响应都通过TLS协议在浏览器和服务器之间加密传输,并且通过数字证书技术保证数据的保密性和完整性;任何“中间人”、包括代理服务器都只能转发数据,而无法窃 听或者篡改数据。
?
要抓取HTTPS流量的明文内容,Fiddler必须解密HTTPS流量。但是,浏览器将会检查数字证书,并发现会话遭到窃 听。为了骗过浏览器,Fiddler通过使用另一个数字证书重新加密HTTPS流量。Fiddler被配置为解密HTTPS流量后,会自动生成一个名为DO_NOT_TRUST_FiddlerRoot的CA证书,并使用该CA颁发每个域名的TLS证书。若DO_NOT_TRUST_FiddlerRoot证书被列入浏览器或其他软件的信任CA名单内,则浏览器或其他软件就会认为HTTPS会话是可信任的、而不会再弹出“证书错误”警告。
?
开启HTTPS流量解密功能后,Fiddler将会提示用户将DO_NOT_TRUST_FiddlerRoot证书列入IE浏览器的信任CA名单。用于调试客户端时,这已经足够了;Firefox用户也可以很方便的手动导入DO_NOT_TRUST_FiddlerRoot证书。但是,若要在服务器上抓取ASP.Net发出的HTTPS请求,这是不够的——你必须将DO_NOT_TRUST_FiddlerRoot证书导入“机器帐号”的信任CA名单。
?
如果你使用linux服务器,请将Fiddler安装在一台Windows计算机上并在Tools - Fiddler Options - Connections勾选Allow remote computers to connect,并手动将FiddlerRoot.cer导入linux服务器的信任CA名单,最后将代理服务器设置成Fiddler所在IP的8888端口。
?
如何过滤会话:
右边的Filters tab中,里面有很多选项,看看就明白了。
?
编码小工具:
Fiddler 工具栏上的TextWizard, ?这个工具可以Encode和Decode string,自已看看。
?
低速摸拟和禁用缓存:
?
?