web-app-v1/gezain_fsc2h_-0day_logic

GitHub: web-app-v1/gezain_fsc2h_-0day_logic

针对 Sony PS4/PS5 专有系统调用 FSC2H 中竞态条件引发的 UAF 零日漏洞进行技术分析与逻辑流重建的研究框架。

Stars: 2 | Forks: 1

# **FSC2H-GZ-0Day-Analysis:重构 Gezine 竞态条件引发的 UAF** ## **1. 研究简介** 本项目代表了开发者 **Gezine** 近期在 **PlayStation 4(固件 13.50)** 和 **PlayStation 5(固件 13.20)** 上演示的 **0-day 漏洞利用** 所采用方法的一项深度技术重构。作为一名独立研究员(**tHefishsop**),本项目的目标是在 Sony 专有的内核扩展中找出最合理的攻击面,以解释为何在现代经过安全加固的固件上能实现如此高稳定性的漏洞利用。 ## **2. 发现过程:为什么是系统调用 597?** 我们的分析首先将重点从核心 FreeBSD 内核(该部分已经过广泛的安全加固)转移到了 **Sony 自定义系统调用(Custom Syscalls)** 上。这些专有扩展通常负责管理与硬件相关的交互,并且缺乏与开源组件同等程度的公开审计。 通过演绎推理,我们将 **sys_fsc2h_ctrl(系统调用 597)** 确定为主要候选对象。该控制器负责文件系统和硬件相关的路径解析,极易出现同步异常。 ## **3. 漏洞技术分析** ### **3.1 漏洞原语:竞态条件引发的 UAF** 本研究的核心在于识别出一个 **竞态条件引发的 Use-After-Free (UAF)**。该漏洞发生在内核于共享对象状态转换期间未能保持原子性时,这允许一个线程释放该对象,而另一个线程仍然持有活动的、过时的引用(悬垂指针)。 ### **3.2 状态机逻辑缺陷** FSC2H 控制器利用内部状态机来管理对象的生命周期。我们分析了以下转换流程: **INITIAL → RESOLVED → WAITING → COMPLETED** * **关键窗口**:在 CMD_RESOLVE 和 CMD_WAIT 命令之间存在一个竞态窗口。 * **冲突点**:如果线程 A 正在向 WAITING 状态转换的过程中,线程 B 发出了 CMD_COMPLETE 或破坏性的清理命令,内核可能会对该对象执行 free()。 * **结果**:线程 A 恢复执行,对已被回收的内存进行操作,从而提供了一个 UAF 原语。 ## **4. 证据逻辑与实现** ### **4.1 概念验证逻辑 (src/poc.c)** 提供的模拟演示了如何使用两个并发线程来赢得竞态: 1. **线程 A(受害者)**:通过 CMD_WAIT 进入内核并让出执行权(例如,通过 tsleep)。 2. **线程 B(陷阱)**:发起 CMD_RESOLVE 以将其本地上下文绑定到共享路径对象。 3. **触发阶段**:广播信号 (CMD_COMPLETE) 唤醒两个线程。如果时机把握得当,内核的逻辑缺陷会导致“受害者”线程在恢复时使用的指针,已经被“陷阱”线程的退出或失败路径释放。 ### **4.2 堆喷射策略 (src/spray.c)** 为了将此 UAF 转化为功能完整的 exploit,我们利用了 **通用内存分配器 (Universal Memory Allocator, UMA)** 的行为。一旦内核对象被释放,我们会使用 sendmsg() 原语以受控数据(例如 ROP 链)对堆进行“喷射”。其目的是在受害者线程尝试重新使用该内存之前,确保腾出的内存槽位已被我们的 payload 填充。 ## **5. 安全缓解措施与克服障碍** 现代内核漏洞利用必须考虑到以下因素: * **SMEP/SMAP**:我们的模型假设使用了 **内核 ROP(Return-Oriented Programming)**,因为用户态代码的直接执行已被阻止。 * **KASLR**:本研究承认,需要一个独立的 **信息泄露(Information Leak)** 来确定内核基地址,以便准确计算 gadget 偏移量。 ## **6. 可测试的预测** 我们为研究人员设定了验证此假设的具体标志: 1. **线程扩展性**:增加线程并发数应会导致更高频率的系统不稳定或特定的 kernel panic。 2. **Panic 特征**:成功的触发应导致在内核模式下出现“Fatal trap 12: page fault”,且发生故障的地址指向受控的堆喷射 payload。本研究框架将严谨的工程规范与动手系统分析相结合,以推动对专有内核安全的理解。 *MIT License | Copyright (c) 2026 tHefishsop*
标签:0-day漏洞分析, CISA项目, dangling pointer, exploit开发, FSC2H, PlayStation 4, PlayStation 5, PS4 13.50, PS5 13.20, Syscall 597, UAF漏洞, UMA, Use-After-Free, Web报告查看器, 云资产清单, 内核内存异常, 内核漏洞, 客户端加密, 悬挂指针, 提权, 文件系统控制器, 游戏机破解, 漏洞复现, 状态机, 竞态条件, 索尼主机, 索尼定制系统调用, 线程同步失败, 网络安全, 逆向工程, 逻辑流重构, 隐私保护