查尔斯代理在SSL连接方法上失败

use*_*504 36 ssl proxy iptables charles-proxy

我有Android 4.3强制通过IPTABLES使用Charles代理.查尔斯证书安装在手机上.我能够在浏览器中捕获正常的SSL流量,如https网站.所有POST和GET方法似乎都能正常工作.在特定应用程序中,使用SSL CONNECT方法时失败.

  • 网址:https://XX.XX.XXX.XXX/
  • 状态:失败
  • 失败:SSLHandshake:收到致命警报:unknown_ca
  • 响应代码: - 协议:HTTP/1.0
  • 方法:CONNECT

请帮忙!

Tom*_*ven 49

从iOS 10.3开始,您还需要转到设置>常规>关于>证书信任设置并信任Charles证书.

在此输入图像描述


Ber*_*dız 16

您可以在Facebook或Instagram等应用程序中遇到此问题.Charles证书在某些新应用程序中不起作用,因为它们使用的是名为SSL-PINNING的技术.首先,你必须打破应用的SSL-钉扎系统也可以安装装配旧版本的应用程序,然后它有时工作,但我们需要有关SSL为了记录流量,这种应用寄托新的解决方案.


bsa*_*ner 9

有些人我最终在这里使用Android N设备即使安装了证书也不会对查尔斯进行SSL - 现在在http://chls.pro/ssl上

在N中 - 您还需要添加xml文件和安全配置.这篇文章详细介绍了:如何使用Android 7 nougat获取charles代理工作?

  • 如果添加安全 xml 规则后不起作用,那是因为您没有在调试中构建。您应该构建调试或添加: `android:debuggable="true"` 到 AndroidManifest 中的 <application> 标记 (4认同)
  • @Wikkle_A 你太棒了。 (2认同)

zhu*_*wei 6

我遇到了同样的问题。并且安装最新的证书后,就解决了。 在此处输入图片说明


cri*_*fan 6

正如@Berkay Y?ld?z所说,它可能使用ssl /证书固定。

如何修复/避免/禁用SSL固定?

整个逻辑是:

等级1:为了normal http?核心逻辑?

  • PC?Mac / Windows
    • 查尔斯设置HTTP代理
    • 设置端口
  • 应用使用Charles代理
    • 在Wifi内,设置
      • 主机IP
      • 港口

注意?在计算机端,必须使用wired network不能无线使用,否则无法使用移动端网络

第2级encrypted https为什么?

  • 个人电脑
    • 安装查尔斯根证书
      • Mac Key Chain用来信任Charles Root CA
    • 查尔斯
      • Enable SSL Proxying
        • 为您的特定api地址设置位置过滤器
  • 电话
    • 应用程式
      • 安装Charles Root CA
        • 注意:类型应选择: VPN and Application
          • 不选择?WLAN
        • makeure证书安装成功
          • Trusted Credentials -> User,可以看到已安装的查尔斯证书

LEVEL 3:特殊https其使用ssl pinning


更详细的摘要,请参阅我的帖子(中文):12


Leo*_*Lei 5

在您的手机上,访问http://charlesproxy.com/getssl以下载证书。在android中下载证书后,它会提示您安装证书,为证书命名并继续。它现在应该可以工作了。

注意:在 iPhone 上应该是类似的


man*_*gos -1

在此链接http://www.charlesproxy.com/documentation/using-charles/ssl-certificates/上,您拥有正确安装 Charles 证书所需的所有信息。

安装后,您将摆脱“SSLHandshake:收到致命警报:unknown_ca”错误。