前言
之前借助过Fiddler来抓取微信公众号的文章和留言(Https协议的,下一篇介绍),所以安装https证书又是必不可少的,这里简单还原下安装步骤。如果没有正确安装证书,Fiddler抓包的时候会提示:HTTPS traffic decryption error: System.Security.Authentication.AuthenticationException
安装步骤
- 安装CertMaker插件:
由于默认的Fiddler证书是不符合抓包要求的,这里通过Fiddler插件扩展下载安装CertMaker插件解决该问题,安装完之后重启Fiddler即可;
- 配置Fiddler选型:
从左上角选择栏依次选择"Tools" -> "Options", 参考下面几张图配置好即可:
- 手机端安装证书
Https认证是双向的,因此手机端也必需要安装这个证书,获取该证书有以下两种方法参考:
- 方法一
在手机浏览器输入http://ip:port (表示代理ip和端口,不太懂的可以找找之前写的文章), 点击最下边的"FiddlerRoot certificate",先下载到SD卡根目录;
- 方法二
从左上角选择栏依次选择"Tools" -> "Options"-> "Https", 找到"Actions"里面的"Export Root Certificert to Desktop"(参考步骤2图2), 下载到桌面再传到手机根目录即可;
下面是在手机端按照该证书操作:
从手机"设置"中找到类似"安装证书"这一选项(不同手机不太一样,这里是在"安全与隐私"里面),点击后选择上面下载好的证书,接着进行安装即可。
参考说明
Fiddler抓包不支持Http2、TCP、UDP、WebSocket等协议;
Fiddler抓包类似于中间代理,可以理解成需要同时欺骗客户端&&服务器端。如果当前待抓包APP的Https证书是跟代码一起打包的,这时候再用上述方式配置是无效的;
WireShark抓包更专业更强大。