Mac 下配置Charles踩坑之旅

1、参考文章

具体可以参考下面几个同学的文章,几位同学写的已经很详细了,但是他们的坑没填完

https://blog.csdn.net/weixin_44462377/article/details/90322323

https://blog.csdn.net/jiegeniuboyi/article/details/141831764

https://blog.csdn.net/jiegeniuboyi/article/details/141831764

https://cloud.tencent.com/developer/article/2427128

2、踩的坑

我主要是想记录下我踩的坑,很久没配置了,都忘完了

首先激活,我从第一个文章处的百度网盘下载后,版本为4.0.6,我mac版本已经是15.1.1

安装后,首先输入根据下面提示去激活:

将 Charles.app 拖至 应用程序 文件夹

打开后:在菜单------help菜单下---register Charles下,输入下列序列码

Registered Name: https://zhile.io

License Key: 48891cf209c6d32bf4

第一个坑 无法生成证书

成功激活后,按照下图指引点击安装证书,奈何钥匙串中怎么搜不到添加的这个证书,无奈只能去官网下了最新的5.03版本,点击下载mac版本,最新版本点击这个install后又能找到,这里如果碰到坑的小伙伴,建议反复试一下,我是老版本新版本翻来覆去的卸载安装了好多遍才安装上的,记得时不时重启下Charles与钥匙串。

幸好上面的序列码也能激活,下载最新版本后,继续按照下面生产生成证书,

第二个坑 手机连接电脑代理(必须处于同一个网络)

ios、小米手机都能正常在wifi设置中设置手动代理,荣耀手机得长按连接的那个wifi,然后点击修改网络,每个手机添加域名与端口号,并保存后,都要注意电脑会弹框,记得点允许。

下面把ios与小米的截图贴上:

第三个坑 手机安装证书,手机无法打开下载地址

我生成的地址如下图,不管用ip+端口还是手机打开自带的浏览器输入chls.pro/ssl,一直提示打不开,不管怎么尝试,不知道什么原因。后面搜索了下其他同学的文章,采用了这个备用地址,尝试访问 charlesproxy.com/getssl,突然就成了,一时之间不知道该说啥,到处都是坑。

附图小米与荣耀成功打开的截图吧,ios的忘截图了,跟其他小伙伴文章里面的一样(一定记得要自带的浏览器打开,荣耀我用的UC,怎么都无法打开,换自带的一下就可以了,哎):

这里到现在为止荣耀手机无法打开下载地址下载证书,小米手机能打开,但是要么下载下来的不全要么就卡住。。。。还在持续填坑中。

第四个坑 ios手机安装后,还要信任设置

如下图所示,ios 10以后,去设置,通用,关于手机,证书信任设置里面,打开信任才行。

以防有些小伙伴找不到,截个图吧:

附带一个拦截电鸭app接口成功的截图吧:

(话说抖音、懂车帝的接口都抓不到,他们安全性做的这么好吗)

豆包回答:

不同 App 抓包成功率的差异,核心原因是App 的网络安全防护策略不同。像电鸭这类 App 可能未做特殊防护,而抖音、懂车帝等大厂 App 会通过多重技术手段阻止抓包,具体差异点如下:

一、基础原因:是否启用 "证书校验" 和 "代理检测"

1. 电鸭等易抓包的 App:几乎不做防护
  • 不校验证书合法性:当手机安装了 Charles 等工具的根证书后,App 会默认信任该证书,允许 HTTPS 流量被解密,抓包工具能直接解析内容。
  • 不检测代理环境:即使手机开启了代理(指向抓包工具),App 也不会拒绝连接,网络请求正常通过代理传输,抓包工具能捕获完整流量。
2. 抖音、懂车帝等难抓包的 App:多重防护拦截
  • 强制校验系统根证书:大厂 App 会内置 "证书锁定(SSL Pinning,又称证书钉扎)" 机制,只信任 App 自带的官方根证书,拒绝信任用户手动安装的 Charles 证书。此时即使手机安装了抓包证书,App 的 HTTPS 请求也会因 "证书不被信任" 而中断,或返回加密 / 无效数据,抓包工具只能看到乱码或失败响应。
  • 检测代理环境并阻断连接:App 会通过代码检测手机是否开启了代理(如检查系统代理设置、查看网络连接的 IP / 端口是否指向抓包工具),一旦发现代理,会直接关闭当前网络请求,或切换到不经过代理的 "直连模式",导致抓包工具完全捕获不到流量。
  • 使用私有协议或加密传输:部分核心接口(如登录、支付、IM 消息)会采用非标准 HTTP/HTTPS 协议(如自定义 TCP 协议、基于 gRPC 的私有加密),或在数据传输前用 App 自研的算法加密,即使抓包工具捕获到流量,也无法解析出真实内容。

二、深层原因:大厂对数据安全和反爬的强需求

  • 保护用户隐私:抖音、懂车帝等 App 涉及大量用户行为数据、聊天记录、地理位置等隐私信息,通过阻止抓包可降低数据被恶意获取的风险。
  • 防止接口滥用:其核心接口(如推荐算法、内容分发)是商业核心资源,若被轻易抓包分析,可能被竞争对手模仿,或被恶意调用(如批量爬取内容、刷数据),导致服务器负载过高或商业利益受损。
  • 合规性要求:金融、社交类功能(如抖音的直播打赏、懂车帝的交易咨询)需符合监管对数据传输安全的要求,强制加密和防抓包是必要的安全措施。

三、如何突破防护(仅供学习,需遵守合规)

如果是合法的开发调试场景(如自家 App),可尝试以下技术手段(大厂 App 的防护会持续升级,方法可能失效):

  1. 绕过证书锁定
    • Android:通过 Xposed 框架(如 LSPosed)安装 "JustTrustMe" 模块,禁用 App 的证书校验;或对 App 进行反编译,移除证书锁定相关代码后重新打包。
    • iOS:需要越狱设备,通过工具(如 SSL Kill Switch 2)禁用证书校验。
  2. 隐藏代理环境
    • 使用 "透明代理" 技术(如通过路由器设置全局代理),让 App 无法检测到代理存在;或修改抓包工具的端口、伪装成正常网络连接。
  3. 分析私有协议:若 App 使用自定义协议,可通过逆向工程(如反编译 App 的二进制文件)分析加密算法和协议格式,再针对性解码抓包数据。

但需注意:未经授权对他人 App 进行抓包、逆向等操作,可能违反《网络安全法》和平台用户协议,存在法律风险,仅建议在自己开发的 App 或获得授权的场景下操作。

总结来说,抓包成功率的差异本质是 "App 安全防护强度" 的差异 ------ 防护弱的 App 容易被抓包,防护强的 App 会通过技术手段主动阻止,这是大厂保障数据安全的必然选择。

相关推荐
寒水馨19 小时前
macOS下载、安装openclaw-v2026.7.1(附安装包OpenClaw-2026.7.1.dmg)
macos·大模型·github·开源软件·ai助手·openclaw·gpt-5.6
白玉cfc1 天前
【iOS】MRC和ARC
macos·ios·cocoa
飞雪金灵1 天前
mac电脑 Maven下载安装和配置环境变量
macos·maven·maven下载安装·mac电脑环境
雨声不在1 天前
macos 12使用docker
macos·docker·容器
一叶龙洲1 天前
ubuntu26.04 xfce美化成mac
服务器·ubuntu·macos
李小白杂货铺1 天前
Oh My Zsh 简记
macos·macbook·zsh·主题·插件·oh my zsh·omz
fukai77222 天前
macOS防止休眠的菜单栏小工具
macos
web守墓人2 天前
【go语言】gotar:使用go语言复刻tar命令,并加入7z支持,可独立运行在windows、linux、macos上
linux·macos·golang
之歆3 天前
从 Mac 回到 Windows:用 PowerToys + AutoHotkey 找回熟悉手感
windows·macos
星辰即远方3 天前
字符串合法性检验
macos·ios·cocoa