将本地 USB 设备重定向到远程系统的软件中未修补的漏洞可能通过添加伪造设备来帮助攻击者提升目标计算机上的特权。
该漏洞被标识为 CVE-2020-9332,位于 FabulaTech 开发的“用于远程桌面的 USB”的总线驱动程序中。该公司拥有来自各行各业的知名组织,其客户名单令人印象深刻。其中包括谷歌、微软、宝马、万事达卡、美国宇航局、路透社、英特尔、雪佛龙、雷神、施乐、哈佛、通用电气和 Raiffeisen 银行。
USB 重定向解决方案的工作方式是通过客户端/服务器端软件使 USB 设备在网络上看起来就像连接到本地计算机一样。
客户端软件收集的有关重定向设备的信息将发送到远程计算机上运行的服务器。服务器使用总线驱动程序创建并指示虚拟对象重复来自真实设备的所有输入输出通信。
这样,欺骗了远程系统上的操作系统(OS),使他们相信已连接了真正的 USB 设备。
SentinelOne 研究人员发现,FabulaTech 的总线驱动程序调用了不安全的 IoCreateDevice 例程,该例程没有安全检查来阻止来自特权较低实体的访问。
“通常,驱动程序可以通过添加仅限制对系统和管理员访问权限的安全描述符来保护其设备对象,或者通过在驱动程序本身中实施安全检查来保护其设备对象”
SentinelOne
由于 FabulaTech 的驱动程序调用了 IoCreateDevice 例程,因此,非特权用户可以添加和控制 OS 信任的软件设备,SentinelOne 说。
研究人员还注意到 FabulaTech 服务在 LocalSystem 帐户下运行,该帐户在计算机上具有广泛的特权。
未来的概念验证
为了阐明自己的观点,SentinelOne 研究人员创建了概念证明。要点是 FabulaTech 的驱动程序充当 OS 与用户模式服务之间的中继,该服务从真实的重定向设备中获取数据。
公开报告指出,驱动程序公开了用于创建设备,从OS 获取URB [ USBRequest Block ]以及答复 URB 的控制代码。
“设备创建代码获取设备描述符作为输入,其他两个获取并返回 URB。输入和输出参数使得驾驶员的私有标头后面是 URB,然后是 HID 报告。”
在一份报告中,研究人员深入探讨了使 USB 和人机接口设备及其配置可被操作系统识别的技术细节。
研究人员描述的一种恶意场景涉及假鼠标指针,该鼠标指针可用于绕过 Windows 中的“用户帐户控制”安全功能。
但是,因为可以模拟任何 USB 设备,所以可能会进行更高级的攻击,例如添加以太网网卡以拦截流量。
还创建了另一个 PoC,它模拟了鼠标单击以同意 UAC 提示,但仍未发布,因为该问题尚未解决,并且完整的利用代码(即使具有示范性)仍可以为恶意行为者服务。
修复程序来了
SentinelOne 通过电子邮件将 FabulaTech 发送给两个地址,要求他们报告安全漏洞,首先是1月29日,然后是2月4日,但没有收到任何回复。研究人员补充说,他们还将问题发布在公司论坛上,但管理员删除了该消息。
BleepingComputer 已与 FabulaTech 联系,以征询有关修补漏洞计划以及客户在此期间可以采取的措施的评论。公司代表回答说:“我们看不到你或任何名为 SentinelOne 的客户的技术要求。”
获得更多详细信息并检查问题是否存在后,该公司确认了问题。FabulaTech 的业务运营副总裁 ladimir Mostovoy 告诉 BleepingComputer,将在尽可能短的时间内解决该问题。预计在不久的将来将发布包含该补丁的软件的新版本。