目录
一、查看 Fiddler 的 ip 地址
二、设置 Fiddler 允许远程连接
三、进行手机端 App 的抓包
3.1.准备工作
3.2.手机设置
3.3.安装根证书
四、可能会遇到的问题
一、查看 Fiddler 的 ip 地址
有两种方法都可以查询到。
第一种方法:
打开 Fiddler,鼠标悬停在工具栏最右边的 Online,出现在提示信息最末尾的就是 ip 地址(记住,一定是最末尾的 ip 地址);
第二种方法:
1.通过命令提示符,使用快捷键 Win + R 或者在桌面上搜索命令提示符打开,输入 cmd,点击 确定;
2.输入命令:ipconfig 查询,IPv4 地址对应的就是 ip 地址。
二、设置 Fiddler 允许远程连接
1.点击 Tools,选择 Options...;
2.选择 Connections,勾选 Allow remote computers to connect(允许远程连接);
注:
Fiddler listens on port 是 Fiddler 的端口号,一般默认为 8888,不用更改。
三、进行手机端 App 的抓包
3.1.准备工作
1.保证电脑和手机连接同一个网络;
如下,这是我的电脑网络:
这是我的手机网络:
2.电脑上的网络如果是专用的必须设置为公用;
点击 属性;
把 专用 切换为 公用 就可以了;
3.2.手机设置
1.点击手机所连接的网络;
2.勾选 手动代理;
代理服务器主机名输入:在 Fiddler 或者命令提示符查出来的电脑 ip 地址;
代理服务器端口输入 :Fiddler 默认端口号 8888;
进行到这里就可以进行手机端的 App 抓包了。但是此时只能抓到 Http 的包,如果想要抓到 Https 的包就跟着我继续往下操作吧!!!不想的话,就请你止步于此吧,我们的缘分已尽,你已经不是一个爱学习的乖宝宝了,哼╭(╯^╰)╮~
3.3.安装根证书
安装根证书步骤:
1.打开手机里的浏览器(随便哪个浏览器都可以,我打开的是百度),输入:http://Fiddler 的 ip 地址:Fiddler 的端口号
比如,我 Fiddler 的 ip 为 192.168.0.116、Fiddler 的端口号为 8888,那么我就可以这样来访问页面:http://192.168.0.116:8888(也可以简写为:192.168.0.116:8888,网页会自动帮你补全前面的协议);
2.输入网址后会进入到该页面,点击 FiddlerRoot certificate 进行 下载 Fiddler 根证书(注意注意哇:每换一个网络都要重新下载一次根证书);
3.打开手机的 设置 -> 安全和隐私;
2.找到 更多安全设置;
3.找到 受信任的凭证;
注:不同型号的手机设置的方法都不同,还需要你们自己去找,最主要的是能够找到 受信任的凭证 这个选项,这个步骤我只能给你们提供参考。
4.点击 用户,此时,此时用户里面是没有任何证书的,需要进行安装根证书;
5.找到你下载好的根证书的位置,点击该证书,会弹出对话框让你选择打开方式,选择 证书安装程序;
6.弹出为证书命名对话框,输入 证书名称:,点击 确定;
7.再次回到受信任的凭证,点击 用户,就会看到 Fiddler 根证书已经安装成功了;
8.然后就可以进行抓取手机 App 的 Https 的包了,以下,是从浏览器抓到的数据:
四、可能会遇到的问题
Fiddler 设置手机代理后,浏览器无法上网,也就不能进行下载 Fiddler 根证书这个操作。
如下:
用百度浏览器访问:
用 QQ 浏览器访问:
... ...
...
解决方案:
第一个,要修改注册表编辑器
1.在桌面上搜索编辑器,点击 注册表编辑器 进入;
或者
使用快捷键 Win + R 打开命令提示符,输入 regedit,点击 确定;
2.进入到该页面。
嫌麻烦的话,完整路径为:HKEY_CURRENT_USER -> Software -> Microsoft -> Fiddler2,然后直接看第 4 步。
不嫌麻烦的话,也可以根据我的步骤一步步来,1.点击 HKEY_CURRENT_USER 文件夹;
2.找到 Software 文件夹;
3.接下来找到 Microsoft 文件夹;
4.在 Microsoft 文件夹下找到 Fiddler2 文件夹;
5.鼠标右键 新建(N) -> QWORD (32 位)值(D);
6.名称那一行填入 80;
第二个,要修改 Fiddler 里的 Fiddler ScriptEditor
1.打开 Fiddler,点击 Rules,选择 Customize Rules....(自定义规则)或者按下快捷键 Ctrl+R,会弹出 Fiddler ScriptEditor 界面;
2. 按下快捷键 Ctrl+F,弹出 Find and Replace 对话框:
Find what:输入 OnBeforeRequest ,点击 Find Next (或者按下 enter 键);
定位到该位置:
3.复制该代码添加进去:
if (oSession.host.toLowerCase() == "webserver:8888") { oSession.host = "webserver:80"; }
然后重新启动 Fiddler,解决啦!!!
完。。。