V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
zzzzzzk
V2EX  ›  Android

charles 抓其他应用的 https 请求 7.0 以后 有什么好方法吗?

  •  
  •   zzzzzzk · 2019-01-20 18:12:08 +08:00 · 4500 次点击
    这是一个创建于 1221 天前的主题,其中的信息可能已经有所发展或是发生改变。
    5 条回复    2019-01-21 12:41:36 +08:00
    locoz
        1
    locoz  
       2019-01-20 20:29:56 +08:00 via Android   ❤️ 2
    之前写的,看看能不能帮上你。https://zhuanlan.zhihu.com/p/46433599
    7lsu
        2
    7lsu  
       2019-01-20 20:51:45 +08:00
    是指抓不到吗?安卓 7.0+的话要配置系统证书才行
    letitbesqzr
        3
    letitbesqzr  
       2019-01-20 22:23:27 +08:00   ❤️ 4
    我猜楼主是说的如何绕过 android 7.0+ 以后的 SSL Pinning 吧。

    比如微信 7.0 在 android 7.0+以上的版本,就会有 SSL Pinning, 只信任系统内置的证书。
    "客户端在收到服务器的证书后,对该证书进行强校验,验证该证书是不是客户端承认的证书,如果不是,则直接断开连接。"

    可以尝试以下几个方案:

    1. xposed 及其插件 JustTrustMe (可以配合 virtualxposed)
    JustTrustMe 是一个用来禁用、绕过 SSL 证书检查的基于 Xposed 模块。JustTrustMe 是将 APK 中所有用于校验 SSL 证书的 API 都进行了 Hook,从而绕过证书检查。

    2. 将证书安装到系统证书中(需要 root )
    系统证书的目录是:/system/etc/security/cacerts/
    每个证书的命名规则为:<Certificate_Hash>.<Number>
    Certificate_Hash 表示证书文件的 hash 值,Number 是为了防止证书文件的 hash 值一致而增加的后缀;
    证书的 hash 值可以由命令计算出来,在终端输入 openssl x509 -subject_hash_old -in <Certificate_File>,其中 Certificate_File 为证书路径,将证书重命名为 hash.0 放入系统证书目录,之后你就可以正常抓包了。

    3. VirtualApp (最简单的)
    大概的介绍,VirtualApp 是一个开源的 Android App 虚拟化引擎,允许在其中创建虚拟空间,并在这个虚拟空间中运行其他应用。
    我不是很清楚这个东西的原理,看介绍感觉应该是 VirtualApp 代理运行了程序,然而代理程序后并没有带 SSL Pinning 的功能?
    实际测试,VirtualApp 直接把微信 7.0 在里面运行,直接按照以前的方法就可以进行抓包。
    raphael008
        4
    raphael008  
       2019-01-21 12:38:23 +08:00
    建议用备用手机号注册账号去抓,某些 APP 会针对破解 SSL Pinning 封账号的,比如:饿了么🤣
    coolmint
        5
    coolmint  
       2019-01-21 12:41:36 +08:00
    @letitbesqzr 感谢,试试那个 xposed 模块去,方法 2 我之前直接用复制粘贴的形式失败了,但我同事成功了,看来还是我想的太简单了
    关于   ·   帮助文档   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2524 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 45ms · UTC 00:48 · PVG 08:48 · LAX 17:48 · JFK 20:48
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.