Unix CUPS打印服务远程代码执行漏洞(CVE-2024-47076/CVE-2024-47175/CVE-2024-47176/CVE-2024-47177)通告

一、漏洞概述

近日,绿盟科技CERT监测到网上披露了Unix CUPS打印服务远程代码执行漏洞的细节,当系统启用cups-browsed进程监听(默认631端口)接收UDP数据包时,未经身份验证的攻击者通过构造恶意的IPP服务器诱导受害者进行配置,当使用打印服务时可构造恶意请求在受害者机器上执行任意命令,从而控制目标服务器。漏洞实际是否可利用需要依赖目标具体环境(例如存在打印任务等)。目前漏洞细节与部分PoC已公开,请相关用户尽快采取措施进行防护。

CVE-2024-47076:libcupsfilters库中存在输入验证不当漏洞,攻击者可以发送恶意数据至CUPS系统,导致攻击者控制的数据与CUPS系统的其余部分进行交互。

CVE-2024-47175:libppd库中存在输入验证不当漏洞,未经验证的IPP数据可能被写入临时PPD文件,导致攻击者注入恶意数据。

CVE-2024-47176:由于cups-browsed服务在处理网络打印任务时,会通过UDP 631端口绑定INADDR_ANY地址。未经身份验证的攻击者可以发送特制的数据包到被控制的URL,从而在目标系统上执行任意命令。

CVE-2024-47177:cups-filters库中存在命令注入漏洞,攻击者可以通过FoomaticRIPCommandLine PPD参数执行任意命令。

CUPS(Common UNIX Printing System)是一个通用的开源Unix打印系统,主要使用IPP(Internet Printing Protocol)等协议来管理打印工作及队列。 cups-browsed是一个开源的打印服务组件,是CUPS的一部分。

 

参考链接:

https://github.com/OpenPrinting/cups-browsed/security/advisories/GHSA-rj88-6mr5-rcw8

https://github.com/OpenPrinting/libcupsfilters/security/advisories/GHSA-w63j-6g73-wmg5

https://github.com/OpenPrinting/libppd/security/advisories/GHSA-7xfx-47qg-grp6

https://github.com/OpenPrinting/cups-filters/security/advisories/GHSA-p9rh-jxmq-gq47

 

二、影响范围

受影响版本

CVE-2024-47176

  • cups-browsed <= 2.0.1
    CVE-2024-47076
  • libcupsfilters <= 2.1b1
    CVE-2024-47175
  • libppd <= 2.1b1
    CVE-2024-47177
  • cups-filters <= 2.0.1

注:上述漏洞影响Ubuntu、Debian、Red Hat/Fedora、Arch Linux、openSUSE、Slackware等基于Unix且具有CUPS服务的系统。

 

三、漏洞检测

  • 人工检测

相关用户可通过使用以下命令查看主机上cups-browsed服务的状态:

systemctl status cups-browsed 或 service cups-browsed status

若结果显示“Active: inactive (dead)”,则系统不受上述漏洞影响。如果服务正在“运行”或“已启用”,则系统存在相应安全风险。

 

四、漏洞防护

  • 官方升级

目前官方暂未发布新版本修复漏洞,请相关用户持续进行关注:

https://github.com/OpenPrinting/cups-browsed/releases

Canonical(Ubuntu开发商)、Debian、Red Hat及其他发行版的开发公司已针对上述漏洞发布了安全通告,建议受影响的用户及时采取相应措施进行防护:

https://www.redhat.com/en/blog/red-hat-response-openprinting-cups-vulnerabilities

https://security-tracker.debian.org/tracker/CVE-2024-47176

https://ubuntu.com/security/notices/USN-7043-1

  • 其他防护措施

若相关用户暂时无法进行升级操作,也可使用下列措施进行临时防护:

  • 设置cups-browsed(默认631端口)禁止接收UDP数据包,或者限制白名单访问;
  • 若无业务需要,建议关闭cups-browsed进程。

声明

本安全公告仅用来描述可能存在的安全问题,绿盟科技不为此安全公告提供任何保证或承诺。由于传播、利用此安全公告所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,绿盟科技以及安全公告作者不为此承担任何责任。

绿盟科技拥有对此安全公告的修改和解释权。如欲转载或传播此安全公告,必须保证此安全公告的完整性,包括版权声明等全部内容。未经绿盟科技允许,不得任意修改或者增减此安全公告内容,不得以任何方式将其用于商业目的。

Spread the word. Share this post!

Meet The Author