研究人员披露 Windows SMB 服务器权限提升漏洞(CVE-2025-58726)

通过机器认证实现高权限远程命令执行 | 图片来源:Andrea Pierini

Semperis 公司研究员 Andrea Pierini 发现并披露了一个新型 Windows 漏洞(CVE-2025-58726),攻击者可利用 Kerberos 认证反射缺陷,以低权限账户远程获取 SYSTEM 级访问权限。该漏洞影响所有 Windows 版本,除非强制启用 SMB 签名功能。微软已在 2025 年 10 月的补丁星期二活动中发布修复程序。

Kerberos 反射攻击机制

Pierini 的研究表明:"即使已修复 CVE-2025-33073,Kerberos 认证反射仍可被滥用于远程权限提升。"该漏洞利用"Ghost SPN"(映射到无法解析主机名的服务主体名称),诱使 Windows 通过 SMB 向自身进行认证,从而将权限提升至 SYSTEM 级别。

利用注册的GHOST服务器请求TGS服务票据 | 图片来源:Andrea Pierini

Pierini 解释道:"当攻击者捕获受害者(机器或用户)的认证请求,并将该认证反射或重放回受害者自身服务时,就会发生认证反射。这种攻击诱使受害者向自身进行认证,使攻击者无需知晓凭证即可提升权限。"

Ghost SPN 的核心威胁

CVE-2025-58726 的核心在于 Ghost SPN 概念------这些服务主体名称引用的主机名已不存在于 DNS 记录中。在大型或老化的 Active Directory 环境中,此类"幽灵"记录普遍存在,通常源于系统退役、部署脚本拼写错误或混合环境中无法访问的主机。

Pierini 指出:"Ghost SPN 引入了攻击者可利用的攻击面。默认 Active Directory 设置允许标准用户注册 DNS 记录,从而促成此类攻击。"通过注册指向攻击者控制IP的DNS记录,低权限用户可诱使目标系统向攻击者主机进行认证。

攻击链实现条件

利用 CVE-2025-58726 的攻击链需要满足以下基本条件:

  • 拥有低权限域用户账户
  • 目标设备已加入域且禁用 SMB 签名
  • 目标设备配置了 HOST/... 或 CIFS/... 类型的 Ghost SPN
  • 具备注册 DNS 记录的能力(Active Directory 默认启用)

攻击实施流程包括:

  1. 识别与目标机关联的 Ghost SPN
  2. 注册将该 SPN 解析至攻击者 IP 的 DNS 记录
  3. 使用 Kerberos 中继工具(如 Pierini 开源的 KrbRelayEx)拦截认证
  4. 通过 PrinterBug 或 PetitPotam 等工具触发认证
  5. 将 Kerberos 票据中继回目标的 SMB 服务
  6. 通过 SMB 远程获取 SYSTEM 级访问权限

协议层安全缺陷

值得注意的是,该攻击绕过了微软此前针对 CVE-2025-33073 的补丁(该补丁修复了相关 SMB 客户端权限提升漏洞)。Pierini 强调:"CVE-2025-33073 的修复仅针对特定 SMB 客户端问题,而 Ghost SPN 攻击方法可绕过该修复。漏洞实质存在于 Kerberos 协议本身,其未能阻止认证反射行为。"

这表明漏洞存在于 Kerberos 协议处理机制内部,不仅限于 SMB 服务。这意味着其他依赖 Kerberos 的服务(如 RDP、WMI 或 RPC/DCOM)在特定条件下也可能存在风险。Pierini 对微软 2025 年 10 月补丁的逆向工程显示,修复措施实现在 SRV2.SYS 驱动程序中,该驱动负责服务端 SMB 逻辑处理。

相关推荐
带娃的IT创业者17 分钟前
WeClaw 日志分析实战:如何从海量日志中快速定位根因?
运维·python·websocket·jenkins·fastapi·架构设计·实时通信
杨云龙UP1 小时前
Oracle ASM磁盘组空间分配与冗余理解
linux·运维·数据库·sql·oracle
互成2 小时前
加密系统哪款最好用?2026年五款加密系统深度对比测评
运维·网络·安全
minji...2 小时前
Linux 库制作与原理(三)深入动静态链接原理
linux·运维·服务器·c++
CDN3602 小时前
游戏服稳定运行:360CDN SDK 游戏盾实测体验
运维·游戏·网络安全
问道飞鱼2 小时前
【Tauri框架学习】Windows 11 环境下 Tauri 开发环境安装与问题解决手册
windows·学习·tauri·开发环境
bukeyiwanshui2 小时前
Linux实践
linux·运维·服务器
ChoSeitaku2 小时前
NO.2|proto3语法|消息类型|通讯录|文件读取|enum类型
java·服务器·前端
守望时空333 小时前
使用NetworkManager替换当前网络管理器
linux·运维
MinterFusion3 小时前
如何在开放麒麟(openKylin)下安装FTP服务器(v0.1.0)
运维·服务器·网络·vsftpd·开放麒麟·明德融创·openkylin