PS5六年防线告破:普通缺陷拼出的穿透链

PS5六年防线告破:普通缺陷拼出的穿透链

安全漏洞利用系统工程

数据源:GitHub + HN 讨论

2026 年 9 月末,一份名为 Relapse 的漏洞利用链代码在 GitHub 上公开发布。这份项目达成了一个罕见的破坏范围:它穿透了 PS5 从 7.00 到 13.60 的全部固件防线。在这长达六年的系统演进里,索尼不断修补底层组件,但这条链路并没有去硬磕坚固的加密层。它把两个看似普通的逻辑错误拼接到一起,直接拿到了整机的读写权限。

污染一个数组就能撕开入口

突破口发生在一个原本受限的浏览器环境里。Relapse 链的第一步,是利用浏览器 JavaScript 引擎的信息泄露,配合结构化克隆过程中的对象池错配,去污染一个特定的数据结构。

可以把这个过程理解为存包柜管理系统出现了逻辑错位。系统把一个刚刚退回来的柜子立刻分配给了新客人,但旧客人的凭证居然还能打开这扇门。在内存层面,攻击者通过这种错配精准覆盖了一个类型化数组(typedarray)的内部状态。控制了这个数组,就相当于在浏览器的沙盒内部拿到了一把可以任意改写周围数据的钥匙。

PS5主机实拍 图:PS5 主机与 DualSense 手柄。来源:Wikimedia Commons

一次单纯的内存污染不足以击溃整台主机。但当这种污染发生在系统边界的跳板上,防线最外层的围栏就已经被拆除。利用这段被污染的内存,攻击者开始在浏览器空间内部署后续的执行环境。

抢下微秒级时间差打穿内核

浏览器里的越界只给了攻击者第一块垫脚石,要拿到整机的完整控制权,还需要一次向下的越权。Relapse 链的第二步,指向了系统内核里的并发等待机制(aio_multi_wait)。

攻击者通过前一步拿到的内核地址泄露,在系统底层触发了一次「释放后使用」(UAF)竞态。系统刚刚把一块重要区域清理出来准备回收,攻击者卡在极短的时间差里,抢在系统收回控制权前重新占用了它。两次独立的、原本只会引发程序崩溃的机制错误,被严丝合缝地拼接在了一起。

PS5主板拆解细节 图:PS5 主板,攻击面最终落在系统管理与内核一侧。来源:Wikimedia Commons

防御体系从来不怕单一节点的强攻,但复杂系统内部的状态转移过程,往往是最难做到全封闭的区域。两个普通缺陷的叠加,绕过了底层所有严密的加解密验证模块。

十几个节点接力拼出底层通路

这条能够穿透六年固件防线的利用链,并非出自个人的孤立发现。在项目的致谢名单中,密密麻麻列着十几位在这个研究谱系中贡献过关键碎片的开发者。从初期的浏览器漏洞挖掘,到中期的内核地址探测,再到最后整合 ELF 加载器,整条链的每一个环节都由不同的研究者在不同时期跑通。

防守方面对的不再是一个固定的破解节点,而是一个分布式的开源堆栈。一个人找到了结构化克隆的错配机制,另一个人在数月后把它和内核的并发问题连了起来。系统防御只要在一处逻辑上留下缝隙,就会被社区的接力研究持续撕扯,直到拼凑出一条直达底层的完整通路。

用无限重启对抗系统级封堵

在 Relapse 的项目文档里,作者毫不掩饰这条利用链的高失败率。在浏览器阶段,页面可能会卡死,唯一的解决办法是刷新重试。进入内核阶段,主机有一定概率直接发生严重错误并切断电源,用户只能硬重启再来一遍。

攻击者可以承受无数次失败,只要一次重启后撞中那个正确的内存地址,链条就能走通,并在主机上拉起一个 ELF 加载器等待后续指令。对于防御方来说,一百万次成功拦截只要漏掉一次时序条件,整机权限就会脱手。索尼逐年收紧的固件防线,面对的是一个建立在概率学之上、允许反复试错的利用框架。

漏洞产出变轨逼退前沿老兵

技术社区对这条链的反馈,剥离了另一个维度的攻防现实。在社区讨论中,一位资深场景研究者坦言自己已经退出这个领域,原因直指现今漏洞挖掘生态的变轨。

大量新进人员开始依赖自动工具模型批量化发现此类浅层逻辑漏洞,并在验证后立刻公之于众。这种高频的曝光导致防守方在漏洞被真正用于深度研究前,就快速下发补丁封堵路径。一条靠时间积累的深潜研究路径,被这种短平快的快餐式产出直接打断。

这并不是社区第一次面临这种生态冲击。更早时候负责将 Linux 移植到 PS5 环境的核心人员离开时,也曾抱怨过类似的人员结构变化。六年的固件防线被两个机制漏洞击穿,安全边界输在了复杂系统的状态管理上。把两个普通的内存错位拼在一起打穿防线,这种堆叠战术正在改变安全攻防的演进节奏。

参考链接:

  • GitHub Relapse-Exploit
  • HN 讨论
  • Wikimedia Commons