记一次 使用 charles 抓 app 包 的过程

1. 下载 charles 并安装

2. 设置代理端口

记一次 使用 charles 抓 app 包 的过程

3. 下载 ssl证书

记一次 使用 charles 抓 app 包 的过程

4. 设置手机代理,

记一次 使用 charles 抓 app 包 的过程

修改无线网络,设置代理为 “手动”,设置服务器主机名,端口 为显示的图中显示的 ip 端口。

5. 手机上下载证书并安装

手机浏览器访问: chls.pro/ssl 下载并安装证书

6. 设置ssl代理

记一次 使用 charles 抓 app 包 的过程

记一次 使用 charles 抓 app 包 的过程

  • 手机app测试访问时,可能会发生 unknown 的情况
    ios 手机
    可开启 用户安装证书信任 设置
    android手机

    方法一:在应用xml目录下新建一个名为​​network_security_config.xml​​,内容为

    <network-security-config>
      <debug-overrides>
          <trust-anchors>
              <!-- Trust user added CAs while debuggable only -->
              <certificates src="user" />
          </trust-anchors>
      </debug-overrides>
    </network-security-config>

    在AndroidManifest Application节点增加属性

    <?xml version="1.0" encoding="utf-8"?>
    <manifest ... >
      <application android:networkSecurityConfig="@xml/network_security_config"
                      ... >
          ...
      </application>
    </manifest>

    重启应该就能解决了。
    相关链接:blog.51cto.com/u_3987305/5842007

方法二:将证书安装到系统证书中(未测试)
相关链接:blog.csdn.net/weixin_37124805/arti...

本作品采用《CC 协议》,转载必须注明作者和本文链接
讨论数量: 7

我试过方法二, 应该是类似,先root,在安装证书。 不root ,不能吧证书设置成系统级别的,就会导致不信任,就不能成功抓包。

方法1 没看明白,
​network_security_config.xml​​ 和 AndroidManifest Application节点 有什么关联吗?

10个月前 评论
xiaoqicheng (楼主) 10个月前
kis龍 (作者) 10个月前
xiaoqicheng (楼主) 10个月前
kis龍 (作者) 10个月前

如果手机下载的.pem格式证书不能使用,可以在电脑上保存.cer格式证书,并传到手机上安装使用 file

10个月前 评论
长日将尽 10个月前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!