2024 年 9 月 26 日,披露了与CUPS(通用Unix打印系统)相关的四个漏洞(根据 RedHat 的说法,为“重要”级别而不是严重) ,该系统用于管理 UNIX 和 Linux 上的打印机,由 Simone“ EvilSocket ” Margaritelli发现并报告。
这些漏洞被识别为
CVE-2024-47076、
CVE-2024-47175、
CVE-2024-47176、
CVE-2024-47177,
允许未经身份验证的远程攻击者利用libcupsfilters、libppd等组件在易受攻击的设备上执行任意代码、cups-browsed 和 foomatic-rip。
CUPS:它是什么以及它如何工作
CUPS 是一种基于 Internet 打印协议 (IPP) 的打印系统,可以管理本地和远程打印机。与最近的发现相比,其管理 IPP 请求和 PPD 文件的机制暴露了漏洞,如果利用这些漏洞,
攻击者可以通过控制服务器来操纵打印机并发送命令。
发现的漏洞如下:
-
CVE-2024-47176 :cups-browsed组件接受来自任何来源的 IPP 数据包,允许使用攻击者控制的 URL 发送Get-Printer-Attributes请求。RedHat 给 CVSSv3 的评分为 7.5。
-
CVE-2024-47076:在libcupsfilters中,cfGetPrinterAttributes5函数不验证 IPP 数据,从而允许恶意属性注入。RedHat 指定的 CVSSv3 分数为 8.2。
-
CVE-2024-47175:在libppd中,ppdCreatePPDFromIPP2函数将无效的 IPP 属性写入临时文件,从而允许代码注入。RedHat 给 CVSSv3 的评分为 7.7。
-
CVE-2024-47177:foomatic-rip过滤器允许通过PPD 文件中的FoomaticRIPCommandLine参数执行任意命令。RedHat 指定的 CVSSv3 分数为 6.1。
攻击和影响
这些漏洞结合在一起,允许攻击者发送恶意 IPP 数据包,通过受控链接修改打印机的 URL。
一旦启动打印,攻击者就可以在目标系统上执行任意代码。
由于 CUPS 默认启用并侦听 UDP 端口 631,因此如果该端口可公开访问,许多系统可能会暴露。
根据 Tenable 在 Shodan 上进行的快速搜索,互联网上大约有 75,000 个公开暴露的主机,增加了大规模漏洞利用的风险。
这使得这些漏洞成为一个严重的问题,即使它不被视为其他历史威胁(例如Log4Shell)的级别。
在等待官方补丁的同时,可以通过遵循一些最佳实践来降低风险:
-
禁用或删除cups-browsed:从而显着减少攻击面。
-
阻止 UDP 端口 631 上的流量:通过防止暴露到互联网来限制对此端口的访问。
-
尽快应用补丁:红帽和其他供应商正在开发补丁来解决这些漏洞;当系统可用时对其进行更新至关重要。
要检查cups-browsed服务是否处于活动状态(例如,由于默认情况下 RedHat 上不存在该服务),您可以通过 CLI 运行以下命令:
sudo systemctl status cups-browsed >
影响 CUPS 的漏洞对 Linux 和 UNIX 系统构成重大威胁,特别是在公开暴露的情况下。
虽然目前还没有已知的活跃漏洞,但技术细节和PoC(概念验证)的可用性强烈表明漏洞很快就会出现。
因此,必须立即采取预防措施来保护各种环境。
如需了解更多信息,我们发布了漏洞撰写的 EvilSocket 博客文章的链接:
https://www.evilsocket.net/2024/09/26/Attacking-UNIX-systems-via-CUPS-Part-I/
-
红帽咨询:
-
https://access.redhat.com/security/vulnerability/RHSB-2024-002
-
规范咨询:
https://ubuntu.com/blog/cups-remote-code-execution-vulnerability-fix-available
原文始发于微信公众号(网络研究观):CUPS 实用程序使系统遭受任意代码执行,UNIX 系统面临风险!
- 左青龙
- 微信扫一扫
- 右白虎
- 微信扫一扫
评论