前边几篇宏哥介绍了 Fiddler 界面内容以及作用。今天宏哥就讲解和分享如何设置 Fiddler 后,我们就可以捕获会话,进行抓包了。
常见的捕获会话的设备分为 PC(电脑)端和手机(Android 和 IOS 苹果)端。
电脑端我们一般抓取的都是 web 网站请求和响应信息。那么我们看一下如何设置进行抓包。
1.手动设置方法:Tools--->WinINET Options--->连接--->局域网设置--->代理服务器勾选后 “高级”--->服务器地址:127.0.0.1,端口 8888;如下图所示:
1.手动设置方法:①、File--->勾选 Capture Traffic; 如下图所示:
②、点击左下角Capturing进行选择或取消;如下图所示:
2.自动设置步骤:Tools---> Options--->Connections--->勾选 Act as system proxy on startup(作为系统启动代理),如下图所示:
1.打开 IE,点击右上角的” 工具 “,选择” Internet 选项 “。如下图所示:
2.连接--->局域网设置。如下图所示:
3.代理服务器勾选后 “高级”--->填写服务器地址:127.0.0.1,端口 8888。如下图所示:
1.点击右上角三点标志->点击设置->高级->打开您计算机的代理设置(进入代理设置页),如下图所示:
2.设置代理【输入代理地址:127.0.0.1 端口:8888(若设置了其他端口,输入自己设置的端口号)】,如下图所示:
1.点击设置->选项->网络设置(设置)>进入代理设置页,如下图所示:
2.勾选手动代理配置,设置代理【输入代理地址:127.0.0.1 端口:8888(若设置了其他端口,输入自己设置的端口号)】,如下图所示:
3.浏览器设置好代理后,访问页面,fiddler 便会抓取访问请求,访问淘宝为例,fiddler 抓取请求,如下图所示:
手机端我们一般抓取的都是 APP 请求和响应信息。那么我们看一下如何设置进行抓包。
1.设置步骤一:Tools---> Options--->Https--->勾选 Decrypt Https traffic--->选择…from remote clients only(从远程客户端),如下图所示:
2.设置步骤二:Tools---> Options--->Connections--->设置 Fiddler listens on port:8888--->勾选 Allow remote computers to connect(允许远程设备连接),如下图所示:
3.设置步骤三:①.查看 fiddler 所在计算机的 IP(cmd---> ipconfig 或者点击 fiddler 右上角 Online),如下图所示:
或者查看电脑 ipv4 地址,打开 cmd 窗口输入:ipconfig。如下图所示:
②.手机上进行设置:同一个 wifi 下设置代理,服务器地址:计算机的 IP(192.168.0.163),端口 8888;如下图所示:
方法:因为有些APP对安全上要求没有那么高时候,不需要下载证书,但是有的APP对安全要求比较高,就需要下载证书,下载证书步骤:在手机浏览器输入网址:[http://[FIDDLERSERVER]:[Port]/FiddlerRoot.cer](http://[fiddlerserver]:[port]/FiddlerRoot.cer)或者[FIDDLERSERVER]:[Port],例如:[http://192.168.0.163:8888/FiddlerRoot.cer或者192.168.0.163:8888](http://192.168.0.163:8888/FiddlerRoot.cer%E6%88%96%E8%80%85192.168.0.163:8888)
安装的证书在手机的位置如下,可以进行删除、重新安装;
方法:1.启动 Fiddler,然后 Rules---> Customize Rules 打开代码编辑器,如下图所示:
2.按 Ctrl+F--->打开 Find and Replace--->输入查询关键字:OnBeforeResponse。如下图所示:
3.在函数 OnBeforeResponse 中添加如下代码:
苹果手机:
if (oSession.oRequest["User-Agent"].indexOf("iPhone/9.2.1")> -1 && oSession.HTTPMethodIs("CONNECT")){
oSession.oResponse.headers["Connection"] = "Keep-Alive";
}
安卓手机:
if (oSession.oRequest["User-Agent"].indexOf("Android")> -1 && oSession.HTTPMethodIs("CONNECT")){
oSession.oResponse.headers["Connection"] = "Keep-Alive";
}
好了,今天就简单的说明一些配置和技巧,后边关于手机端,宏哥会单独列出章节进行详细讲解。小伙伴或者童鞋们在这里先入入门有个印象就好。