Shadowrocket HTTPS解密配置教程

重要提示:HTTPS解密(SSL/TLS解密)属于中间人攻击(MITM)技术,仅可用于分析自己设备的网络流量、开发调试或学习目的,请勿用于窃取他人数据、破解商业软件或任何违法用途,部分应用(如银行类)检测到代理可能会拒绝服务。

准备工作

  1. 已安装Shadowrocket(需美区/外区Apple ID购买)
  2. iOS系统版本建议iOS 13+(证书管理位置有变化)
  3. 明确目标:确定需要解密的域名(不建议全局解密,耗电且风险高)

生成并安装CA证书

步骤1:生成证书

  1. 打开Shadowrocket → 点击底部"配置"(Config)
  2. 点击"证书"(Certificate)→ "生成新的CA证书"
  3. 点击"安装证书"(Install Certificate)

步骤2:系统安装描述文件

  1. 系统会自动跳转到设置 → 顶部出现"已下载描述文件"
  2. 进入设置通用VPN与设备管理(或"描述文件")
  3. 点击Shadowrocket的证书 → 安装 → 输入锁屏密码

步骤3:信任证书(关键步骤)

  1. 进入设置通用关于本机证书信任设置
  2. 找到Shadowrocket的证书,开启"完全信任"(iOS 13+必须步骤)

配置解密规则

方法A:针对特定域名解密(推荐)

  1. 在Shadowrocket主界面 → 点击"配置" → 编辑当前配置
  2. 找到"解密"(Decryption)或"HTTPS解密"选项
  3. 开启开关,在主机名(Hostname)中添加目标域名,
    *.example.com
    api.target.com
  4. 保存配置

方法B:使用模块(Module)解密

  1. 配置页面 → "模块" → 添加解密模块
  2. 或使用脚本自动配置:
    [MITM]
    hostname = *.example.com, api.target.com
    enable = true

验证是否成功

  1. 开启Shadowrocket代理
  2. 访问目标HTTPS网站或使用目标App
  3. 在Shadowrocket的"最近请求"(Recent Requests)中查看:
    • 如果能看到URL明文内容(而非乱码),说明解密成功
    • 如果显示"CONNECT"隧道或加密内容,说明未解密

常见问题解决

问题 解决方案
证书安装后无法上网 检查是否开启"完全信任";尝试重启Shadowrocket
部分App无法联网 该App可能使用SSL Pinning,需添加到"跳过代理"列表
iOS提示证书不受信任 iOS 13+必须在"关于本机"→"证书信任设置"中手动开启
仍为乱码 目标可能使用双向认证或证书固定技术,无法通过常规MITM解密
电池消耗快 解密会增加CPU负载,建议仅对必要域名开启,用完及时关闭

安全建议

  1. 及时清理:调试完成后,在"证书信任设置"中关闭信任,并在Shadowrocket中删除证书
  2. 精准配置:避免使用通配符解密所有流量,只针对需要分析的域名
  3. 隐私保护:生成的CA证书私钥存储在设备本地,不要导出分享给他人
  4. 应用兼容性:银行、支付、政务类App通常有严格的证书校验,强行解密可能导致账号风险或法律问题

高级技巧(可选)

  • 配合抓包工具:将Shadowrocket与Thor、HTTP Catcher等工具配合使用
  • 脚本处理:使用JavaScript脚本对解密后的请求进行修改(需开启脚本功能)
  • 分流规则:在解密的同时配置分流,避免国内常用App走代理

注意:iOS 15+系统对证书管理更加严格,部分企业级应用可能检测到自定义CA证书后拒绝运行,这是正常安全机制。

您可以还会对下面的文章感兴趣: