Fiddler抓取https数据包

Wireshark和Fiddler的优缺点:
①Wireshark是一种在网络层上工作的抓包工具,不仅自带大量的协议分析器,而且可以通过编写Wireshark插件来识别自定义的协议。虽然Wireshark功能强大,但是却并不能解决所有的抓包问题,其原因在于:Wireshark工作在网络层;如果计算机配置了IPSec传输层加密,则在网络层的流量都已经被加密,什么也看不到。当今大量网络接口使用HTTPS加密,Wireshark不能抓取到HTTPS流量的明文内容。
Fiddler工作在应用层上,作为其他程序的HTTP代理服务器。它可以直接抓取并分析HTTP流量,也可以作为“中间人”抓取并分析HTTPS流量。
 
Fiddler抓取HTTPS数据包过程原理:
->fiddler接到客户端的https请求,fiddler将请求转发给服务器
->服务器生成公钥证书,返回给fiddler;fiddler拦截下真的公钥证书,并生成伪造的公钥证书给客户端;
->客户端使用伪造的公钥证书加密共享密钥发送给fiddler,fiddler使用伪造的私钥解密获取共享密钥
->fiddler将解密后的共享密钥,使用真正的公钥加密发送给服务器端,服务器使用共享密钥与fiddler通信
->fiddler使用共享密钥与客户端通信
 
 
HTTPS没有解密返回的数据内容,非明文:
 
 
步骤一:设置抓取HTTPS,PC机安装根证书
Tools->fiddler options->https->capture https connects->decrypt https traffic->ignore server certificate errors(unsafe)->actions->trust root certificate->确定->OK
 
 
备注:如果电脑开启了fiddler且配置勾选了以上decrypt https traffic进行了安装证书之后,火狐浏览器打开百度等页面,会提示错误,无法正常打开页面。要关闭fiddler或将上述配置取消,才能正常访问。
 
 
 
安装根证书后,可以点击Actions->open windows certificate manager查看安装到系统的根证书
 
 
 
 
 
步骤二:手机安装Fiddler根证书信任
手机上用浏览器打开代理页面(输入IP地址和监听端口号),页面标题为Fiddler Echo Service。页面最下方有个根证书的链接,点击安装证书信任,证书名称自定义。
 
 
                   
 
 
根证书都安装成功后,用手机访问应用,抓取的HTTPS数据包解密成功
 
 
 
资料来源:
fiddler手机https抓包:
fiddler PC https抓包:
fiddler解析ssl:
利用Fiddler 解SSL加密 数据包:
posted @ 2018-02-12 17:29 kristin_n 阅读(...) 评论(...) 编辑 收藏