Fiddler简介
B/S架构
Apache-Tomcat:是web服务,用于部署资源
工作原理
HTTP
HTTP请求报文主要由 请求行、请求头部、空一行、请求正文(请求体)4部分组成。
Fiddler详细介绍
快捷键:
r :重新请求
shift+r :输入重复请求次数
ctrl+x :删除所有会话
重点工具:
统计(Statistics):请求的性能和其他数据分析
检查器(Inspectors):可以多种方式查看请求的请求报文和响应报文相关信息
自动响应器(AutoResponder):用于拦截某一请求,如以下操作:
-重定向到本地的资源
-使用Fiddler的内置响应
-自定义响应
组合器(Composer):设计请求报文
过滤器(Filters):多维度过滤
断点功能
请求之前、请求之后、网络中断(极限测试)
全局断点
方法1:
方法2:
局部断点
命令控制:
bpu 【字符串】:请求前断点【匹配字符串】;再次输入bpu取消
bpafter【字符串】:请求后断点【匹配字符串】;再次输入bpafter取消
弱网测试
自定义设置:
在FiddlerScript中查找simulate
HTTPS抓包
IE、谷歌浏览器:
火狐浏览器:
-在fiddler中导出证书
-火狐浏览器需要在浏览器中设置系统代理、导入fiddler证书原理:
首先fiddler截获客户端浏览器发送给服务器的https请求, 此时还未建立握手。
第一步, fiddler向服务器发送请求进行握手, 获取到服务器的CA证书, 用根证书公钥进行解密, 验证服务器数据签名, 获取到服务器CA证书公钥。
第二步, fiddler伪造自己的CA证书, 冒充服务器证书传递给客户端浏览器, 客户端浏览器做跟fiddler一样的事。
第三步, 客户端浏览器生成https通信用的对称密钥, 用fiddler伪造的证书公钥加密后传递给服务器, 被fiddler截获。
第四步, fiddler将截获的密文用自己伪造证书的私钥解开, 获得https通信用的对称密钥。
第五步, fiddler将对称密钥用服务器证书公钥加密传递给服务器, 服务器用私钥解开后建立信任, 握手完成, 用对称密钥加密消息, 开始通信。
第六步, fiddler接收到服务器发送的密文, 用对称密钥解开, 获得服务器发送的明文。再次加密, 发送给客户端浏览器。
第七步, 客户端向服务器发送消息, 用对称密钥加密, 被fidller截获后, 解密获得明文。
由于fiddler一直拥有通信用对称密钥, 所以在整个https通信过程中信息对其透明。
抓ios设备APP包
Android 设备抓包