纯前端运行 FairPlay 密码学:深入 AssppWeb 零信任 App Store 协议与跨端侧载架构
在 iOS 侧载(Sideloading)与正版应用归档领域,跨区获取未上架应用或回退历史版本始终是极客与安全研究员的高频刚需。长期以来,社区的主流解决方案主要分为两类:一类是依赖本地终端的命令行工具(如基于 Go 的 ipatool 或基于 Swift 的 ApplePackage),另一类是必须运行在物理机上的原生客户端(如秋星桥开源的 iOS / macOS 原生应用 Asspp)。然而,这两类方案对普通用户而言都有不低的使用门槛——要么需要配置本地开发环境与包管理器,要么需要借助签名证书将客户端自身侧载安装到 iPhone 上。
如果将这套流程搬到 Web 浏览器中,提供一个“开箱即用、随时随地在任何设备上登录并分发 IPA”的网页应用,就会立刻遭遇一个致命的安全悖论:凭据信任危机。在传统 Web 架构下,用户在网页输入的 Apple ID、密码与双重验证码(2FA)必须由服务端代为发起通信,这意味着服务端能够轻而易举截获用户的明文密码与会话凭据。为了从根本上破除这一安全死局,秋星桥(Lakr233)开源了全新的 AssppWeb(源码仓库:Lakr233/AssppWeb)。它创新性地将 libcurl 与 Mbed TLS 1.3 编译为 WebAssembly 运行在浏览器沙箱内,将后端完全降级为盲 TCP 代理(Wisp 协议),并罕见地在浏览器纯 TypeScript 环境中逆向完整重构了苹果 FairPlay SAP 密码学握手与请求签名状态机,真正实现了“服务端永不可见苹果凭据”的零信任架构。