影响 Linux、Unix 系统的 CUPS 漏洞可导致 RCE

在经过大量炒作和第三方过早泄露信息之后,安全研究员 Simone Margaritelli 公布了有关通用 UNIX 打印系统 (CUPS) 中的四个零日漏洞的详细信息。

这些漏洞可被远程、未经身份验证的攻击者滥用,在易受攻击的 Linux 和类 Unix 系统上实现代码执行。

CUPS 漏洞

CUPS 是一个开源打印系统,允许安装了 的计算机充当打印服务器。

它由 Linux 基金会旗下的自由软件组织 OpenPrinting 开发。

CUPS 通过互联网打印协议 (IPP) 重定向并管理客户端计算机提交到本地或网络连接打印机的打印作业。

Margaritelli(又名 EvilSocket)发现的漏洞影响多个 CUPS 组件/包:

CVE-2024-47176,位于cups-browsed(最高版本 2.0.1)辅助守护进程中,允许攻击者通过 IPP 默认端口(UDP 631)提交数据包,并诱骗其请求任意的、攻击者控制的 URL

libcupsfilters (最高版本 2.1b1)中存在CVE-2024-47076,允许攻击者将恶意数据传递给其他 CUPS 组件

CVE-2024-47175,存在于libppd (最高版本 2.1b1)中,允许攻击者在临时PPD 文件中注入恶意数据,并将其传递给 CUPS 组件

cups-filters (最高版本 2.0.1)中存在CVE-2024-47177,允许攻击者通过FoomaticRIPCommandLine PPD 参数执行任意命令

通过串联这些缺陷,远程未经身份验证的攻击者可以悄悄地用恶意的 IPP URL 替换现有打印机的 IPP URL(或安装新的打印机)。

从而导致在启动打印作业时(从该计算机)在计算机上执行任意命令。

但是,要触发命令执行,用户必须在恶意打印机上启动打印作业。

研究人员指出:"根据研究人员的披露博客,如果 UDP 端口 631 暴露且易受攻击的服务正在监听,则受影响的系统可以从公共互联网或跨网段被利用。

谁受到影响以及该怎么办?

大多数 Linux 发行版和一些 BSD 发行版都使用CUPS 。

有些默认启用它,有些则不启用。(macOS 和 iOS 也附带了CUPS 版本。)

OpenPrinting 发布了针对 CVE-2024-47176 的一些修复和临时解决方法,各个发行版正在致力于移植它们。

在等待更新的 CUPS 软件包时,Margaritelli 建议禁用和/或删除cups-browsed服务。

如果您的系统无法更新,并且由于某种原因您依赖此服务,请阻止所有到 UDP 端口 631 的流量以及可能的所有 DNS-SD 流量。

Red Hat 解释了其客户如何检查cups-browsed是否在其系统上运行以及如何阻止其运行并在重启时重新启动。

Margaritelli 表示,他发现了数十万台可能存在漏洞的设备。

Tenable 的研究人员尝试使用 Shodan 和 FOFA(互联网连接设备搜索引擎),发现"大量主机似乎可以访问互联网,大多数结果都使用默认端口 631。"

到目前为止,尚无关于这些漏洞被野外攻击者利用的报告,但概念验证(PoC)漏洞 -- 包括 Margaritelli 的漏洞 -- 是公开的。

Tenable 高级研究工程师表示:"从我们掌握的信息来看,这些漏洞的级别还不及 Log4Shell 或 Heartbleed。"

对于正在研究这些最新漏洞的组织来说,必须强调的是,最具影响力和最令人担忧的漏洞是已知漏洞。

这些漏洞继续被与民族国家有联系的高级持续性威胁团体以及勒索软件附属组织所利用,这些勒索软件附属组织每年从企业窃取数百万美元。

相关推荐
云和数据.ChenGuang10 分钟前
运维面试题之oracle和mysql单表最大容量
运维·mysql·oracle
岁岁的O泡奶13 分钟前
DVWA_Vulnerability: Command Injection
经验分享·安全·web安全
偶像你挑的噻18 分钟前
12-Linux驱动开发- SPI子系统
linux·驱动开发·stm32·嵌入式硬件
酷柚易汛智推官24 分钟前
Fastlane赋能移动研发:从全流程自动化到工程效能升级
运维·自动化·酷柚易汛
落798.30 分钟前
Genlogin × Bright Data,一键解锁自动化采集的高成功率方案
运维·自动化·数据采集·亮数据
羑悻的小杀马特40 分钟前
轻量跨云·掌控无界:Portainer CE + cpolar 让远程容器运维像点外卖一样简单——免复杂配置,安全直达对应集群
运维·网络·安全·docker·cpolar
松涛和鸣43 分钟前
16、C 语言高级指针与结构体
linux·c语言·开发语言·数据结构·git·算法
L***86531 小时前
Failed to restart nginx.service Unit nginx.service not found
运维·nginx
念风1 小时前
[lvgl]如何优雅地向lv_port_linux中添加tslib支持
linux
自由的好好干活2 小时前
使用Qoder编写ztdaq的C#跨平台示例总结
linux·windows·c#·qoder