Descargitas

来自中国的最新突发新闻。

缺点 CUPS 使得在 Linux 上执行远程代码成为可能,但有一个问题

操作系统

在某些情况下,攻击者可以链接开源CUPS打印系统多个组件中的一组漏洞,在易受攻击的设备上远程执行任意代码。

跟踪为 CVE-2024-47076 (libcupsfilters)、CVE-2024-47175 (libppd)、CVE-2024-47176 (cups browser)、CVE-2024-47177 (cupsfilters) 和 由西蒙娜·玛格丽特利发现这些安全缺陷不会影响默认配置的系统。

CUPS(Common UNIX Printing System 的缩写)是 Linux 系统上使用最广泛的打印系统,也是… 一般支持 在运行类 Unix 操作系统(例如 FreeBSD、NetBSD、OpenBSD 及其衍生版本)的计算机上。

它的组件之一是 cup 守护程序,它在本地网络中搜索广告或共享打印机,并使它们可在设备上进行打印。这类似于 Windows 和 Mac 在网络中搜索要打印的远程网络打印机的方式。

Margaritelli 发现,如果启用了 cup 浏览守护进程(大多数系统上并未启用),它将侦听 UDP 端口 631。默认情况下,它还允许来自网络上任何计算机的远程连接以创建新打印机。

他发现他可以创建一个恶意的 PostScript 打印机描述 (PPD),该描述可以手动发布到在 UDP 端口 631 上运行的暴露的 cup 浏览服务。

这会导致远程设备自动安装恶意打印机并使其可用于打印。如果该暴露服务器上的用户使用新打印机进行打印,PPD 文件中的恶意命令将在计算机本地执行。

从文件添加打印时将执行的命令 fomatic-rip 过滤器,它在设备上执行命令,以便正确显示打印作业。

添加使用 foomatic-rip 过滤器的命令
使用 foomatic-rip 过滤器添加的命令 (Simone Margaritelli)

全球影响有限

虽然这是一个远程代码执行系列,但从一开始就应该注意,攻击者必须克服一些障碍才能利用漏洞并真正实现远程代码执行。

首先,目标系统必须启用 cup 浏览守护程序(默认情况下通常不启用该守护程序)以在网络上公开其 UDP 端口。然后,攻击者必须诱骗用户从突然出现在其设备上的本地网络上的恶意打印机服务器进行打印。

“这是一系列依赖于欺骗本地网络中的打印机的错误,如果它们运行的​​话,这些错误会通过网络发现自动添加 – 通常不在默认配置中,然后使用未经检查的变体来利用网络中的其他漏洞。 CUPS 系统执行代码。”,但仅限于运行打印作业时。” 他说 Ilkka Turunen,Sonatype 现场首席技术官。

“那么好消息是——这是 RCE,但有几个缓解因素,包括攻击者需要能够通过 UDP 连接到计算机,而 UDP 在进入网络时被广泛禁用,并且该服务通常默认情况下不运行。 “现实世界的影响很小。”

由于这些原因, 红帽已经评估了这些缺陷 具有“重大”严重影响,而不是至关重要。

虽然我们的 BleepingComputer 测试表明我们的大多数 Linux 服务器默认情况下都没有启用该服务,但我们的一台 Ubuntu 虚拟机却启用了该服务。。其他人有 他还指出 在 Twitter 上,冲浪杯是 默认启用 在他们的 Linux 设备上

没有补丁,但可以采取缓解措施

虽然补丁仍在开发中,但红帽已共享缓解措施,要求管理员使用以下命令停止 Cup Browsing 服务运行并防止其在重新启动时启动,以破坏漏洞利用链:


sudo systemctl stop cups-browsed
sudo systemctl disable cups-browsed

Red Hat 用户还可以使用以下命令来查看其系统上是否正在运行 cup-browsed:


sudo systemctl status cups-browsed

如果结果显示“Active: Inactive (Dead)”,则漏洞利用线程将被停止,系统将不再容易受到攻击。如果结果显示“正在运行”或“已启用”,并且“BrowseRemoteProtocols”指令在 /etc/cups/cups-browsed.conf 配置文件中的值为“cups”,则系统容易受到攻击。