MS13-001: 打印后台处理程序服务漏洞
MS13-001解决了Windows打印后台处理程序处理恶意构造打印作业方式中的一个漏洞。潜在的攻击场景与之前的后台处理程序服务漏洞有所不同,因此我们希望分享更多细节,以帮助您评估其在您环境中可能构成的风险。
潜在攻击场景
被授予向共享打印机队列打印作业权限的恶意攻击者可能利用此漏洞危害随后与同一打印队列交互的其他工作站。这与我们在以往打印后台处理程序案例中通常看到的攻击场景不同。在这种情况下,打印服务器本身不是目标;相反,潜在受害者是打印到或查询共享打印机状态的其他客户端。
其他工作站如何成为目标
当客户端使用第三方软件枚举远程打印服务器上排队的打印作业时,此漏洞可用于触发打印后台处理程序服务进程(以LocalSystem运行)使用的内存双重释放。要求用户在提交打印作业前进行身份验证的网络配置仅面临能够首先进行身份验证,然后能够将格式错误的打印作业发送到共享打印机的攻击者的风险。聪明的攻击者可以提交恶意打印作业,然后暂停该作业,允许恶意作业保留在共享打印队列中,供其他客户端枚举。
缓解因素
使用默认设置打印到共享打印机的Windows客户端不会以可能触发此漏洞的方式查询待处理的打印作业。默认情况下,除非客户端上安装了以不同于内置Windows组件的方式枚举打印作业的第三方软件,否则客户端打印到共享打印机不会触发此漏洞。甚至Windows设备和打印机“查看正在打印的内容”用户界面也无法用于触发此漏洞。
未打补丁的客户端上,此漏洞可能由打印机制造商提供的用于监视打印队列的附加软件触发。这些可选组件的一部分(有时包含在打印机驱动程序安装中)甚至可能在用户每次提交新打印作业时查询打印机队列。
使用内置组件与第三方附加软件打印时漏洞暴露的差异是由于客户端工作站枚举信息的“级别”。默认的Windows打印后台处理程序和“查看正在打印的内容”用户界面请求“级别4”信息。只有当打印后台处理程序服务处理“级别2”信息请求时,此漏洞才可能被触发。
利用漏洞进行本地权限提升
然而,我们应该注意,此漏洞也可能被恶意的低权限用户用作本地权限提升漏洞,其意图是在LocalSystem上下文中运行代码。能够排队打印作业的恶意低权限用户可以运行自定义工具,请求“级别2”打印作业信息,在本地触发漏洞以提升其登录机器上的权限。
结论
我们希望这些信息能帮助您评估此问题在您环境中可能构成的风险。如果您有任何疑问,请告知我们。
- Ali Rahbar和Jonathan Ness,MSRC工程团队