HttpCanary 在 Android 11 上的使用 |
您所在的位置:网站首页 › 安卓端抓包软件 › HttpCanary 在 Android 11 上的使用 |
前言
HttpCanary 是一款不错的 Android 手机端抓包软件,相比 Packet Capture 而言视图更加友好,更加方便复制数据,窗口模式抓包,还可以 json 格式化、实现注入拦截等操作。如果无 root 则需要安装平行空间来抓取 SSL/TLS 加密数据包。 目前 Android 11 收紧了 APP 安装 CA 证书的权限,只能用户手动安装。而 HttpCanary 已经很长一段时间没有更新了,导致 Android 11 上面无法正常安装证书抓包。 本文通过简单的逆向分析,解决了证书安装问题,实现了 Android 11 下 HttpCanary 的正常使用。 2020-11,纯手机端 MT 管理器分析的,并不难。 过程我们需要看看 HttpCanary 是如何判断证书是否安装的。
刚开始,尝试使用 android 内证书管理的相关关键字代码搜索,没有找到。绕了一圈,最后还是从经典的 UI 入手,查看 APP 安装证书的时候是怎么操作的。
定位到安装证书 activicty,反编译查看,APP 混淆了,控制流平坦化,变量名也很恶心。
但是为了准确判断是这个起作用,我们继续查找关键词“.jks”,查看这个文件在哪里被创建的。最后追溯到了证书安装的 Activity 了。
通过暴力修改 app,让它无论证书安装成功与否都生成 .jks 也是可行的,但是不是很好。前提都是你要手动安装了证书。 下面就手动改吧,正版盗版都适合。 1. 获取证书较新的版本未安装证书是无法导出证书的,所以需要在 /data/data/com.guoshi.httpcanary/cache/ 目录下找到 HttpCanary.pem。 没有上述文件的话,请到设置里尝试安装证书生成证书。有一些盗版的包名是不一样的,目录也就不同。 将 HttpCanary.pem 复制到内部储存空间上,更名为 87bc3517.0,这便是证书文件了 【别人的证书,你不一定能用,试试看就知道了】 2. 安装证书应该没人会安装为用户证书吧? 安装为系统证书:将证书移到 /system/etc/security/cacerts/ 目录下设置好权限,或者自己弄一个 Magisk 模块替换。这个 Magisk 模块不难,就是模板压缩包里添加一个文件而已。 3. 修改数据在 /data/data/com.guoshi.httpcanary/cache/ 目录下新建一个 HttpCanary.jks 无内容的文件,改好权限 600,就是改得跟旁边的文件一样的权限就行了。 其他改法说到底,就是安装证书后需要创建 .jks 文件来使得 APP 识别为已安装证书。至于安装为系统证书都可以自行安装。比如通过手机设置里的安装证书安装为用户证书,再在 Magisk 库里搜索安装 Move Certificates 模块将用户证书迁移为系统证书也是可以的。 最后 HttpCanary 就可以在 Android 11 上愉快地抓包了。
|
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |