Bootstrap

使用Fiddler对手机App抓包

目录

一、查看 Fiddler 的 ip 地址

二、设置 Fiddler 允许远程连接

三、进行手机端 App 的抓包

3.1.准备工作

3.2.手机设置

3.3.安装根证书

四、可能会遇到的问题


一、查看 Fiddler 的 ip 地址

有两种方法可以查询到。

第一种方法:

打开 Fiddler,鼠标悬停在工具栏最右边的 Online,出现在提示信息最末尾的就是 ip 地址(记住,一定是最末尾的 ip 地址);

第二种方法:

1.通过命令提示符。

1.1.使用快捷键 Win + R,在 打开(O):输入 cmd,点击 确定

或者

1.2.在桌面左下角搜索栏搜索 命令提示符 -> 打开

2、输入命令:ipconfig 查询,在 无线局域网适配器 WLAN: 中的 IPv4 地址 对应的就是 ip 地址。

注意,不要写成 ifconfig 了,那是在 Linux 内查询 ip 地址的命令;

我有时候也会搞混淆,哈哈哈. . .哈

 

 

二、设置 Fiddler 允许远程连接

1.点击 Tools,选择 Options...

2.选择 Connections,勾选 Allow remote computers to connect(允许远程连接);

注:

Fiddler listens on port:里面的是 Fiddler 的端口号,默认为 8888,不用更改。

三、进行手机端 App 的抓包

3.1.准备工作

1.保证电脑和手机连接的是同一个网络;

如下,这是我的电脑连接网络:

这是我的手机连接网络:

2.电脑上的网络如果是专用的必须设置为公用;

2.1.点击 属性

2.2.把 专用 切换为 公用 就可以了

3.2.手机设置

1.点击手机所连接的网络;

2.勾选 手动代理

代理服务器主机名输入:在 Fiddler里面的 Online 查出来的 或者 命令提示符使用命令 ipconfig 查出来的 电脑 ip 地址

代理服务器端口输入 :Fiddler 默认端口号 8888

进行到这里就可以进行手机端的 App 抓包了。但是此时只能抓到 Http 的包,如果想要抓到 Https 的包就跟着我继续往下3.3的操作吧!!!不想的话,就请你止步于此吧,我们的缘分已尽,你已经不是一个爱学习的乖宝宝了,哼╭(╯^╰)╮~

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,网页会自动帮你补全前面的 http:// 协议)。

2.输入网址后会进入到该页面,点击 FiddlerRoot certificate 进行 下载 Fiddler 根证书(注意注意哇:每换一个网络都要重新下载一次根证书);

 友情提示:如果你在这一步就出现问题了,根本访问不了浏览器的话,就请你看目录 四、可能会遇到的问题解决完再进行接下来的操作(这里面我有详细说明如何解决)。

3.打开手机中的 设置 -> 安全与隐私

2.找到 更多安全设置

3.找到 受信任的凭据

注:不同型号的手机设置的方法都不同,还需要你们自己去找,最主要的是能够找到 受信任的凭据 这个选项,这个步骤我只能给你们提供参考。

4.在受信任的凭据内点击 用户,此时用户里面是没有任何证书的,需要进行安装根证书;

5.找到你下载好的根证书的位置,点击该证书,会弹出对话框让你选择打开方式,选择 证书安装程序

6.弹出 为证书命名 对话框,输入 证书名称:,点击 确定

7.再次回到受信任的凭据,点击 用户,就会看到 Fiddler 根证书已经安装成功啦;

8.然后就可以打开 Fiddler 进行抓取手机 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.在 Fiddler2 中鼠标右键 新建(N) -> QWORD (32 位)值(D)

6.名称那一行填入 80

🐁第二个,要修改 Fiddler 里的 Fiddler ScriptEditor

1.打开 Fiddler,点击 Rules,选择 Customize Rules....(自定义规则)进入 Fiddler ScriptEditor 界面;

或者

输入键盘快捷键 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,解决啦!!! 

 

完。。。

;