[Android 抓包] 1. 抓包浏览器HTTPS请求

1,344 阅读2分钟

1.简介

浏览器的https抓包算是在抓包中比较简单的,原因是相比于apk,浏览器请求无法使用 SSL Pining 。

SSL Pining(证书锁定):我们需要将APP代码内置仅接受指定域名的证书,而不接受操作系统或浏览器内置的CA根证书对应的任何证书,通过这种授权方式,保障了APP与服务端通信的唯一性和安全性,因此我们移动端APP与服务端(例如API网关)之间的通信是可以保证绝对安全。

接下来会记录如何使用 charles 抓取 Android https 请求包。

Tips: 为了使操作更清晰,所以图比较多。

抓包也算MITM吧,文章开始之前可以看看这个 你连 HTTPS 原理都不懂,还讲“中间人攻击”?,看完这个标题有点心虚。

2.将Android的代理设置为 charles

注:Android 和 charles 位于同一wifi下

第一步,打开charles,help-> SSL proxy -> install Charles Root Cerificate on Mobile Dervice Remote Browser


在Android wifi 中设置代理,截图的时候截错了,端口根据上边的charles提示应该是8888

先不安装 charles 的证书,在Android的浏览器访问一下我的博客,看一下情况

charles 抓包情况

3. 将证书安装到 Android

Android 浏览器打开网址:chls.pro/ssl,保存即可

安装证书后,访问一下博客,一切正常

抓包可见一切正常

4. 总结

至此,浏览器https抓包完成。

在apk抓包时,这个方法不一定奏效,下一篇应该是如何绕过 SSL Pining 进行抓包。

当《Android抓包》系列结束时,大部分市面上的app都可以通过本系列的方法抓取。

如果觉得本文对你有帮助,可以点个赞 OR 关注😯