Fiddler抓包(Android版教程)

一、下载Fiddler工具包

 1)在百度搜索“fiddler 下载” 安装最新版本,下载后的软件安装包是“XXX_setup.exe”格式的(如图1)

              (图1)

2)下载后双击安装;注:按照提示选择安装路径时,建议提前新建好目标路径目录(不要用中文路径及中文文件夹名,养成好习惯,这些测试工具应该是不必要放在C盘的,可以选择其余盘)

 

3)安装成功后,
a、可以在【开始】-【所有程序】中可以看到图标,若是经常用,建议桌面添加快捷方式;
b、在刚才安装的目标路径中找到

 

二、Fiddler手机抓包原理

在本机开启了一个http的代理服务器,然后它会转发所有的http请求和响应。Fiddler 是以代理web 服务器的形式工作的,它使用代理地址:127.0.0.1,端口:8888。网络请求走fiddler,fiddler从中拦截数据,由于fiddler充当中间人的角色,所以可以解密https。因此,它比一般的firebug或者是chrome自带的抓包工具要好用的多。不仅如此,它还可以支持请求重放等一些高级功能。它还可以支持对手机应用进行http抓包的。本文就是手机抓包。

浏览器的代理设置默认是关着的,win7谷歌浏览器“设置--高级--系统--打开代理服务器--局域网设置--代理服务器”勾上。代理开关为开:可以抓到包,代理开关为关:抓不到包。

前置条件
1)电脑安装好Fiddler工具
2)被测手机或设备需要能支持WIFI
3)被测手机或设备需要与电脑连接相同网络
4)被测APP需要支持设置代理
5)被测手机或设备应能支持“证书”下载
6)本文强烈建议被测手机或设备应为Android系统

 

三、Fiddler相关设置

1)电脑上运行Fiddler工具,如图双击运行(注:或可通过双击桌面快捷方式图标运行)

 

 2)启动后,在上方功能菜单栏中打开Tools-Options(如图)

 

 3)操作完成后,设置HTTPS(如图)

 

 

 

4)操作完成后,Connection设置如下图,端口号设为8888;(如图)

 

 

 

5)完成设置后点击ok,再将手机端或Android设备端添加代理;注:电脑联网和手机联网在一个局域网,手机和电脑都是连的公司网络

电脑的IP地址查询,可以通过运行CMD,在命令行中敲“ipconfig”回车后查看当前连接的IP

 

 

 

 以上操作完成后,在手机或Android设备端 设置-WLAN中给网络设置代理,选中并长按连接的WiFi,对该网络进行编辑,代理中选择手动,主机名填写电脑的ip地址(电脑cmd-ipconfig),端口写刚刚fiddler写的端口:8888;

 

6)完成上述操作后,我们再来用手机端浏览器访问http://IP:端口,用电脑的端口和fiddler设置的端口访问安装证书;在手机上需要安装Fiddler根证书,因为Fiddler是通过自己生成的证书对网络请求重新签名进行https会话解密的,如果不安装证书的话只能抓取HTTP请求。

 

7)手机和电脑连接同一个网络,打开手机浏览器,输入Fiddler Server地址http://ipv4.fiddler:8888/(因为fiddler装在PC上,所以Fiddler Server地址就是PC的IP地址,带上端口号8888,我的是http://192.168.1.106:8888/), 跳转到 Fiddler Echo Service 证书下载页,点击FiddlerRoot certificate下载并安装(注:为证书命名后确定,要求设置一个手机密码,随便设置一个就行,后面不需要了可以在系统-安全-密码中去掉)

 

 

8)抓包结束后,需要手动还原手机状态,方法如下(不同机型可能有些微差别):
(1) 停止电脑对手机的网络监控:系统设置-WLAN,长按wifi修改网络,高级选项找到代理,去掉手动代理即可;
(2)删除手机中证书:安卓系统设置 系统 设备安全 受信任的凭据 用户 ,点击证书删除即可;
(3) 删除手机上密码:手机系统—安全—密码,删除系统密码即可。

 

posted @ 2021-09-08 09:03  自身闲鱼  阅读(7318)  评论(0编辑  收藏  举报