charles 抓包提示「连接不安全」?(macOS)

一、问题背景

在使用 Charles Proxy 抓取 HTTPS 请求时,浏览器访问站点(如 CDN、接口域名)突然出现如下提示:

  • Chrome / Edge 地址栏显示 「不安全」

  • 弹窗提示:

    您与此网站之间建立的连接不安全

  • HTTPS 请求无法正常抓取或被浏览器拦截

即使:

  • 已开启 Charles

  • 已配置系统代理

  • HTTPS 之前是可以正常抓包


二、问题根因分析

1️⃣ HTTPS 抓包的本质

Charles 抓取 HTTPS 请求,本质是一个 中间人(MITM)代理

浏览器 → Charles → 真实服务器

因此:

  • Charles 会动态签发站点证书

  • 前提是:Charles Root CA 必须被系统信任


2️⃣ 真正的问题:Charles Root 证书过期

在 macOS 的「钥匙串访问」中,可以看到:

  • Charles Proxy CA

  • 该证书 存在

  • 但:

    • ❌ 已过期

    • 或 ❌ 仍存在但未被完全信任

一旦 Root CA 过期或不被信任:

  • 浏览器会直接判定 HTTPS 不安全

  • 与具体访问的网站无关

  • Charles 也无法正常解密 HTTPS 流量


三、如何确认 Charles Root CA 是否过期

Step 1:打开钥匙串访问

应用程序 → 实用工具 → 钥匙串访问

Step 2:查看系统根证书

  • 左侧选择:系统

  • 上方切换到:证书

  • 搜索:Charles

Step 3:检查证书状态

重点查看:

  • 是否存在 Charles Proxy CA

  • 是否显示:

    • ❌ 已过期

    • ❌ 未标记为「始终信任」

如果已过期,必须更新


四、正确更新 Charles Root 证书

⚠️ 不建议手动下载证书或从别人电脑拷贝
一定要通过 Charles 自身生成


✅ Step 1:删除旧的 Charles 证书

在「钥匙串访问」中:

  1. 选中 Charles Proxy CA

  2. 右键 → 删除

  3. 输入系统密码确认

如果有多个 Charles Proxy CA,全部删除


✅ Step 2:通过 Charles 重新安装 Root CA

打开 Charles Proxy,依次点击:

Help → SSL Proxying → Install Charles Root Certificate

  • macOS 会弹出证书安装提示

  • 自动安装到系统钥匙串


✅ Step 3:将证书设置为「始终信任」

  1. 回到 钥匙串访问

  2. 双击 Charles Proxy CA

  3. 展开 信任

  4. 设置为:

使用此证书时 → 始终信任

  1. 关闭窗口,输入系统密码

✅ Step 4:重置 Charles 的站点证书缓存

在 Charles 中:

Help → SSL Proxying → Reset SSL Certificates

然后:

  • 退出 Charles

  • 重新打开


✅ Step 5:重启浏览器

  • Chrome / Edge:完全退出(⌘Q)再打开

  • Safari 同样建议重启


五、验证是否修复成功

  1. 打开 Charles

  2. 确保:

    Proxy → SSL Proxying → Enable SSL Proxying

  3. 访问 HTTPS 网站(接口 / CDN / 业务页面)

  4. 观察:

    • 浏览器 🔒 恢复正常

    • Charles 中能看到 HTTPS 请求明文


六、常见补充问题

Q1:Chrome 还是提示不安全?

可额外尝试:

chrome://net-internals/#hsts

  • 删除对应域名的 HSTS 记录

  • 再重启浏览器


Q2:什么时候需要重新更新证书?

  • macOS 大版本升级

  • Charles 升级

  • Root CA 过期

  • 钥匙串异常

相关推荐
哆啦code梦4 小时前
2024 OWASP十大安全威胁解析
安全·系统安全·owasp top 10
网络安全研究所6 小时前
AI安全提示词注入攻击如何操控你的智能助手?
人工智能·安全
海心焱6 小时前
安全之盾:深度解析 MCP 如何缝合企业级 SSO 身份验证体系,构建可信 AI 数据通道
人工智能·安全
程序员哈基耄8 小时前
纯客户端隐私工具集:在浏览器中守护你的数字安全
安全
darkb1rd10 小时前
五、PHP类型转换与类型安全
android·安全·php
中科三方11 小时前
域名转移详细指南:流程、材料、注意事项和常见问题全解析
网络·安全
云小逸14 小时前
【nmap源码学习】 Nmap 源码深度解析:nmap_main 函数详解与 NSE 脚本引擎原理
网络协议·学习·安全
迎仔14 小时前
04-网络安全基础:数字世界的防盗门与守卫
网络·安全·web安全
MicroTech202515 小时前
微算法科技(NASDAQ :MLGO)量子测量区块链共识机制:保障数字资产安全高效存储与交易
科技·安全·区块链
意法半导体STM3215 小时前
【官方原创】FDCAN数据段波特率增加后发送失败的问题分析 LAT1617
javascript·网络·stm32·单片机·嵌入式硬件·安全