
两名安全研究人员今天发表了有关Windows打印服务中漏洞的详细信息,他们说这些漏洞会影响最早在1996年发布的Windows NT 4的所有Windows版本。
他们将该代号为PrintDemon的漏洞位于Windows Print Spooler中,Windows Print Spooler是负责管理打印操作的主要Windows组件。
该服务可以将要打印的数据发送到物理连接的打印机的USB /并行端口;到位于本地网络或Internet上的打印机的TCP端口;或到本地文件,在极少数情况下,用户希望保存打印作业以备后用。
可利用的本地特权提升
安全研究人员Alex Ionescu和Yarden Shafir 在今天发布的一份报告中说,他们在这个旧组件中发现了一个漏洞,可以利用该漏洞劫持Printer Spooler内部机制。
该错误不能用于通过Internet远程入侵Windows客户端,因此它不能被用来通过Internet随机破解Windows系统。
研究人员将PrintDemon称为“本地特权升级”(LPE)漏洞。这意味着,即使攻击者甚至在具有用户模式权限的情况下,甚至在应用程序或Windows机器中拥有最小的立足点,攻击者都可以运行像一个无特权的PowerShell命令一样简单的操作,从而获得整个操作系统的管理员级特权。
Ionescu和Shafir说,这可能是因为后台打印程序服务的设计工作方式。
由于此服务旨在供所有想要打印文件的应用程序使用,因此该服务可不受限制地用于系统上运行的所有应用程序。攻击者可以创建打印到文件的打印作业,例如,操作系统或其他应用程序使用的本地DLL文件。
攻击者可以启动打印操作,有意使Print Spooler服务崩溃,然后让作业恢复,但是这次打印操作以SYSTEM特权运行,从而允许它覆盖OS上任何位置的任何文件。
攻击者可以通过一个PowerShell命令利用CVE-2020-1048:
Add-PrinterPort -Name c:\ windows \ system32 \ ualapi.dll
在未修补的系统上,这将安装一个持久的后门,即使在你打补丁*。
有关更多详细信息,请参见https://t.co/9yMSWNM8VG。
-Alex Ionescu(@aionescu)2020年5月13日
Ionescu在今天的一条推文中说,对当前OS版本进行的开发需要一行PowerShell。在较旧的Windows版本上,这可能需要进行一些调整。
Ionescu说:“在未打补丁的系统上,这将安装一个持久的后门,即使您进行了打补丁,该后门也不会消失。”
可用补丁
好消息是,此问题已得到修补,因此Ionescu和Shafir已公开披露。昨天已发布PrintDemon的修复程序,星期二是Microsoft 2020年5月补丁。
在CVE-2020-1048标识符下跟踪PrintDemon。来自SafeBreach Labs的两名安全研究人员也独立报告了同一问题。
Ionescu还在GitHub上发布了概念验证代码,目的是帮助安全研究人员和系统管理员调查漏洞并准备缓解和检测功能。
对于威胁猎人:
使用PowerShell中的Get-PrinterPorts扫描任何基于文件的端口,或转储HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \ Ports。任何具有文件路径的端口(尤其是以DLL或EXE结尾的端口)都应进行调查。https://t.co/wYZn296Gwm-兰迪·帕格曼(@rpargman)2020年5月13日
上个月,Ionescu和Shafir还发布了有关他们名为FaxHell的类似漏洞的详细信息和概念验证代码。
FaxHell与PrintDemon的工作原理相似,但研究人员利用Windows Fax服务覆盖和劫持本地(DLL)文件,以在Windows系统上安装外壳程序和后门程序。
*编译:Domino
*来自:ZDNET