使用Fiddler+安卓模拟器对app抓包,包含https

问题场景:

1、电脑安装Fiddler和安卓模拟器(我用的MuMu模拟器)

2、在模拟器中安装APP,配置模拟器的代理为Fiddler,实现抓包;

配置过程:

1、修改Fiddler的代理配置,允许远程的计算机连接

操作过程:Tools-Options..,在Connections界面,勾选"Allow remote computers to connect",点击OK,然后重启Fiddler,即可

使用Fiddler+安卓模拟器对app抓包,包含https

2、配置MuMu模拟器的网络代理

打开"设置"页面,点击"WLAN",在显示已连接的WIFI上长按鼠标左键,选择"修改网络",

使用Fiddler+安卓模拟器对app抓包,包含https

配置代理,选择手动,添加Fiddler所在机器的IP和端口号,然后保存即可;

使用Fiddler+安卓模拟器对app抓包,包含https

3、打开APP进行操作,你就能看到抓的包了,如果看不到注意看下Fiddler左下角,看看过滤的是不是选择的"All Processes"

使用Fiddler+安卓模拟器对app抓包,包含https

4、针对https的请求,需要在Fiddler中启用https,并把Fiddler的证书安装到模拟器中;方法如下:

1)Fiddler启用https:Options中勾选"Decrypt HTTPS traffic"和"Ignore server certificate errors(unsafe)",弹出的提示都选Yes

使用Fiddler+安卓模拟器对app抓包,包含https

弹出"Trust the Fiddler Root certificate?"是否信任Fiddler的根证书,选择"Yes"

使用Fiddler+安卓模拟器对app抓包,包含https

接下来会安装证书,提示是否安装,选择“是”

使用Fiddler+安卓模拟器对app抓包,包含https

然后会再次确认,选择“是”,证书就提示安装完毕,确定即可

使用Fiddler+安卓模拟器对app抓包,包含https使用Fiddler+安卓模拟器对app抓包,包含https

可以在IE,Internet选项-内容-证书查看按照完毕的证书

使用Fiddler+安卓模拟器对app抓包,包含https使用Fiddler+安卓模拟器对app抓包,包含https

2)然后再点击Actions,选择“Export Root Certificate to Desktop”,将Fiddler的根证书导出到桌面备用;

使用Fiddler+安卓模拟器对app抓包,包含https使用Fiddler+安卓模拟器对app抓包,包含https

3)将“FiddlerRoot.cer”文件直接拖到打开的MuMu模拟器中,然后进行下一步安装;

4)打开模拟器的设置,找到“个人”,然后点击“安全”,然后再选择“从SD卡安装”

使用Fiddler+安卓模拟器对app抓包,包含https使用Fiddler+安卓模拟器对app抓包,包含https

然后选择“$MuMu共享文件夹”,找到“FiddlerRoot.cer”,选择安装,这时需要设置下模拟器的加锁密码才可以进行下一步,直接到设置页面设置锁屏密码即可;然后再继续

弹出输入证书名称,这里输入Fiddler2

使用Fiddler+安卓模拟器对app抓包,包含https

确定安装完毕;在设置-个人-安全-信任的证书中,个人标签页可以看到安装的证书;

使用Fiddler+安卓模拟器对app抓包,包含https

接下来就可以打开Fiddler,在模拟器中打开浏览器测试下https的数据包是否可以正常抓到和解析了,以百度为例

打开MuMu模拟器默认带的浏览器,输入www.baidu.com,百度现在默认使用https,随便搜索一下,查看刚才的包

使用Fiddler+安卓模拟器对app抓包,包含https

用Fiddler查看,刚才抓的百度包

使用Fiddler+安卓模拟器对app抓包,包含https

接下里就可以用Fiddler对自己的APP进行抓包了

同时,其他模拟器配置方式是一样的,都是Android系统,差别不是很大