抓包操作
第1章 截取HTTP请求
Fiddler是通过改写HTTP代理,让数据从它那通过,来监控并且截取到数据。
打开Fiddler后,它就已经设置好了浏览器的代理了(IEàInternet选项à连接à局域网设置à代理服务器)。当关闭Fiddler后,它又把代理还原了。
简单操作:
1、启动Fiddler之后,在浏览器中输入http://www.baidu.com 的请求地址回车进行访问。
2、在Fiddler的左侧请求列表里可以看到捕获到的HTTP请求数据。
3、如果想查看单个请求地址详细数据,点击此请求地址,右侧可以查看请求与返回的相关数据。
第2章 截取HTTPS请求
Fiddler可以通过伪造CA证书来欺骗浏览器和服务器。
原理:在浏览器面前Fiddler伪装成一个HTTPS服务器,而在真正的HTTPS服务器面前Fiddler又装成浏览器,从而实现解密HTTPS数据包的目的。
解密获取HTTPS需要手动开启,依次点击:
1、ToolsàOptions
2、选择HTTPS选项卡,选中"Decrypt HTTPS traffic",Fiddler就可以截获HTTPS请求数据了;选中"Ignore server certificate errors(unsafe) ",为忽略服务器证书错误(不安全)。
第3章 截取手机App请求(Android/IOS)
在测试过程中,抓包是必不可少的测试分析手段,Fiddler不但能抓取PC端数据包, 也可以抓取移动端的。设置如下:
1、打开Fiddler,开启监听开关
2、安装CA证书
ToolsàOptions,选择Connections选项卡,选中"Allow remote computers to connect",允许别的机器把HTTP/HTTPS请求发送到Fiddler上来。端口号默认是:8888,之后重启Fiddler才会生效。
3、检查证书是否安装成功
打开IEàInternet选项à内容à证书,点击证书如看到有DO_NOT_TRUST_FiddlerRoot字样,表示设置成功了。
4、手机端配置
确认PC端IP,手机端要和PC端同网络,假设获取到的PC端的IP是10.106.29.208,设置手机端代理IP与端口,端口是Fiddler的代理端口8888。
Android、IOS都要打开设置,找到WIFI设置,代理服务器设置为手动,输入IP和端口号。
4.1、Android:
4.1、IOS:
手机浏览器输入代理IP和端口,如:10.106.29.208:8888,下载Fiddler的证书,点击FiddlerRoot certificate进行安装。
4.2、Android:
4.2、IOS:
设置-通用-描述文件与设备管理。
设置-通用-关于本机-证书信任设置,找到Fiddler证书,打开信任开关。
安装完证书,可以用手机访问应用,此时Fiddler就可以看到截取到的数据包了。
第4章 Firefox截取HTTPS请求
当Fiddler已经设置开启截获HTTPS请求,如图所示。
操作Chrome、IE浏览器是可以捕获HTTPS会话的,但是使用Firefox浏览器只能捕获HTTP会话,HTTPS会话无法捕获到。
例如:打开Fiddler,开启会话监听,之后打开Firefox,访问百度首页 https://www.baidu.com/
Firefox提示:您的连接并不安全
此时Fiddler没有监听到百度首页的HTTPS会话信息。
该如何设置,Firefox才可以获取HTTPS会话呢?
设置步骤:
1、打开Fiddler,菜单栏ToolsàOptions,选择HTTPS选项卡,点右上角Actions按钮,选择”Export Root Certificate to Desktop”,将证书导出到桌面。
2、证书导出到桌面,证书为FiddlerRoot.cer。
3、打开Firefox浏览器,菜单栏选择工具à选项à高级à证书à查看证书à证书机构à导入,将FiddlerRoot.cer证书导入进去。
4、导入证书会弹出个确认信任框,勾选三个信任选项,点击确定保存。
设置完成后,再次打开Fiddler,开启会话监听,之后打开Firefox浏览器,访问百度首页 https://www.baidu.com/,如图所示页面正常访问。
此时Fiddler可以监听到百度首页的HTTPS会话信息。