游戏客户端 Steam 被曝严重 0day,影响一亿多用户
编译:奇安信代码卫士团队
流行的游戏客户端 Steam(Windows 版)被曝存在一个 0day 权限提升漏洞,可导致权限有限的攻击者以管理员身份运行程序。
提权漏洞是指能够使权限有限的用户以提升后的或管理员权限启动可执行文件。由于 Steam 的注册用户超过一亿,其中数百万用户会同时玩游戏,因此这类漏洞的风险很严重,可被恶意软件滥用于实施一系列恶意活动。
提权漏洞
Valve 公司认为该缺陷“不适用”,因此两名研究员公开了这个 0day 漏洞。该公司拒绝支付漏洞赏金,也未表示将修复该漏洞,而是禁止研究员公布该漏洞。
安全研究员Felix 分析了和Steam 相关的一款Windows 服务“Steam客户端服务”,它以系统权限启动可执行文件。Felix 还注意到该服务可由“用户”组启动并停止,而这个“用户组”基本上相当于登录计算机的任何用户。
尽管这款服务的注册表键无法由“用户”组编写,因此无法被修改为启动另外一个可执行文件并将权限提升为管理员权限。
然而,这名研究员确实发现一些奇怪的事情。当该启动或停止该服务时,它可给予HKLM\Software\Wow6432Node\Valve\Steam\Apps Registry 键下子键的完整写入权限。
这名研究员之后尝试将这些子键之一的符号链接配置到另一个键,但由于他并没有足够的权限,而且意识到也可修改该密钥。他之后从HKLM\Software\Wow6432Node\Valve\Steam\Apps 下的子键创建符号链接来修改任意注册表键。这就导致可允许以系统权限运行的服务遭修改,以便启动具有提升权限的其它程序。
PoC 已公开
Fliex 在 write up 中公开了该漏洞后,另外一名擅长挖掘权限提升漏洞的研究员 Matt Nelson(昵称 enigma0x3)创建并在 GitHub 上公开了利用该缺陷的 PoC (https://gist.github.com/enigma0x3/03f065be011c5980b96855e2741bf302)。
该 PoC 创建了一个返回 HKLM:\SYSTEM\CurrentControlSet\Services\Steam客户端服务的符号链接,这样修改重启该服务时启动的可执行文件。可通过在后台以管理员权限在后台启动 Windows 命令提示符的方式实现这一点。
Nelson 表示已将问题告知 Valve。
Valve 公司目前尚未置评。
原文链接
题图:Pixabay License
本文由奇安信代码卫士编译,不代表奇安信观点,转载请注明“转自奇安信代码卫士 www.codesafe.cn”
奇安信代码卫士 (codesafe)
国内首个专注于软件开发安全的产品线。