| CVE 编号 | CVE-2026-12166、CVE-2026-12167、CVE-2026-12168 |
| 供应商 | Little Orbit |
| 产品 | GamersFirst 反作弊(GFAC)驱动程序(GFAC_Sys_x64.sys) |
| 受影响版本 | 驱动二进制文件中未嵌入版本信息。分析样本:SHA-256 b6748d7da5759dee7d5f2f32b0326b4edb7b2135a0e4a6d5ff26aef1e139d8b2 |
| 漏洞类型 | 空指针解引用(CWE-476)、不当的访问控制(CWE-284)、任意内核内存写入(CWE-787) |
| 影响 | 拒绝服务(BSOD)、权限提升至 SYSTEM |
| 攻击向量 | 本地 |
| 所需权限 | 低(任何本地用户) |
| 测试环境 | Windows 10/11 x64 |
| 研究人员 | Lucian Alexandru Necula |
GamersFirst 反作弊(GFAC)内核模式驱动程序 GFAC_Sys_x64.sys 通过微过滤器通信端口向用户态应用程序暴露了特权功能。对该端口接收的用户控制输入不安全的处理导致了多个本地漏洞,范围从拒绝服务条件到完全提升至 SYSTEM 权限。
共识别出三个不同的问题,并在本公告中一起追踪:
GFAC_Sys_x64.sys驱动程序的初始化和请求处理逻辑中包含一条代码路径,本地无特权调用者可触发该路径对空指针进行解引用。触发该路径会导致驱动程序通过空地址进行读取或写入,从而崩溃系统(BSOD),并允许攻击者反复破坏可用性。
微过滤器通信端口未强制执行足够严格的安全描述符。因此,低权限、非管理员用户可以打开到该端口的连接,并访问本应仅限可信进程使用的特权功能。这显著扩大了驱动程序的攻击面,并直接助长了本公告中其他问题的利用。
通过通信端口接收的消息在处理时,未充分验证用户提供的内存地址是否有效,随后便将其用作写入操作的目标。本地攻击者可提交一个精心构造的请求,其中包含攻击者控制的目标地址和数据值,导致驱动程序将任意数据写入内核内存。这种 write-what-where 原语可用于覆盖敏感的操作系统结构(例如进程的安全令牌),从而实现向 SYSTEM 权限的升级。
注意: 本公告中未发布任何概念验证漏洞利用代码。上述技术描述有意限于理解及修复问题所需的最低程度。
由于 GFAC 作为多款游戏附带的反作弊工具的一部分进行分发,受影响的驱动程序可能存在于——并可在——那些在利用时并非处于活跃游戏状态的系统上加载。
对于防御者/系统所有者:
GFAC_Sys_x64.sys 视为存在漏洞。对于供应商:
| 日期 | 事件 |
|---|---|
| 2026-04-01 |
由 Lucian Alexandru Necula 发现并报告。
| 直接联系供应商(Little Orbit)报告漏洞 |
| 2026-04-20 | 向 CERT/CC 提交案例以协调披露 |
| — | 在整个协调过程中未收到供应商的回复 |
| — | CVE-2026-12166 / -12167 / -12168 — 当前为保留状态,等待在 CVE.org/NVD 上公开分配 |
| 2026-07-02 | 发布公开公告(本文档) |