
深度探索:探索 GNU-Linux 系统中的关键 CUPS 漏洞
Linux用户最近过得并不轻松,据报道,在过去的几年中,有几个高度严重的漏洞以各种方式影响了系统。安全研究人员现在还有另一组漏洞需要解开,所有这些漏洞都与针对GNU/Linux系统的通用UNIX打印系统(CUPS)功能有关,这些漏洞可能具有强大的远程代码执行(RCE)途径。
2024 年 9 月 27 日,evilsocket.net 的西蒙娜·玛加里泰利 已发布的关键信息 关于 CUPS 中有多个可利用的漏洞,随后为其中四个漏洞分配了 CVE。这个数字可能会增加,但在撰写本文时,安全界正在辩论这些发现的实际严重性。而其中一个 CVE, CVE-2024-47177,MITRE 当前的严重程度评级为 9.1,成功操纵此命令注入漏洞取决于启用了 CUPS 服务的服务器,此外,还需要访问 UDP 端口 631 或 DNS-SD。 红帽 但是请注意,可以将 CUPS 重新映射到其他端口。
玛格丽泰利对该事件的全面分析揭示了一系列阴险、复杂的攻击,尽管社区存在分歧,但不容忽视。它为我们提供了一个教训,即如果威胁行为者有足够的决心,如果不良的编码模式留下了很小的机会之窗,那么看似无害的依赖关系就会被深度利用。
CUPS 场景与许多开发人员和 AppSec 专业人员之前可能经历的情况略有不同,因此,让我们来看看并测试一下您的技能。
漏洞:通过 CUPS 远程执行代码 (RCE)
这个 Evilsocket 博客 为这些漏洞提供了无与伦比的详尽背景信息,我们将继续密切关注这一资源。Margaritelli还在他的文章中引用了一位不愿透露姓名的消息人士的话,他似乎对Linux的总体安全稳定性并不乐观:
”从通用的安全角度来看,如今的整个 Linux 系统只是无穷无尽的安全漏洞等待被利用。”
这清醒地提醒人们,开源环境中仍然普遍存在固有的安全风险,更不用说全球开发界迫切需要提高安全意识和安全编码技能了。
让我们来看看 CVE:
漏洞链非常普遍,目前影响以下软件包的所有当前和以前版本:
- distrotech/cups 过滤器
- OpenPrinting/CUPS-
- 杯子浏览
- libcupsfilters
- libppd
二十多年来,CUPS 一直是 UNIX 和 Linux 操作系统的传统组件。它作为打印服务依赖项的功能使其急于执行网络请求,使其成为 RCE 级漏洞的主要目标。
但是,在这种情况下,在如何将攻击结合起来提供成功结果方面存在一些独创性。这本质上是未经身份验证、未被发现的攻击者能够使用恶意 URL 替换互联网打印协议 (IPP) URL,此外还修改了可能导致在 “PPD(PostScript 打印机描述)” 文件中注入命令的指令,该文件是用于描述新添加的打印机功能的文件。一旦激活打印作业,这就会导致命令执行攻击,这依赖于 CUPS 组件内缺乏输入验证。
此外,修复这个特殊漏洞会产生一把双刃剑,比如 Evilsocket 指出。CUPS 包含 foomatic-rip 过滤器,这是一种可执行文件,以前曾是高风险、可利用的组件。与该组件相关的CVE可以追溯到2011年,尽管已经确定可以利用foomatic-rip来执行操作系统命令,但修复此问题会导致稳定性问题并失去对许多旧打印机的支持。这是一个需要克服的复杂问题。

- 威胁行为者发起攻击
- CVE-2024-47176: cups-browsed <= 2.0.1 容易受到攻击,因为它使用 INADDR_ANY 绑定到 UDP 端口 631,这意味着它信任从任何来源收到的任何数据包。这允许未经认证的远程攻击者发送带有操纵的 IPP URL(指向攻击者控制的 IPP 服务器)的恶意 UDP 数据包,从而触发漏洞。受害者的计算机现在认为它正在连接到一台新打印机,并发送请求询问打印机属性。
- 受害者系统处理打印机属性
- CVE-2024-47076: libcupsfilters <= 2.1b1 在 cfgetPrinterAttributes5 中存在漏洞,该漏洞无法正确验证或清理从 IPP 服务器返回的 IPP 属性。当 cups-browsed 处理数据包时,它可能会被诱骗读取攻击者发送的恶意属性。
- 受害者系统连接到攻击者控制器 IPP 服务器
- CVE-2024-47175: ppdCreatePpdFromIpp2 函数中的 libppd <= 2.1b1 在将 IPP 属性保存到临时 PPD(PostScript 打印机描述)文件时无法正确验证或清理这些属性。这允许攻击者将任意数据注入到PPD文件中,包括FoomaticripCommandLine指令,打印系统稍后可以执行该指令。
- 受害者系统启动打印作业并执行攻击者的代码
CVE-2024-47177: cups-filters <= 2.0.1 容易受到攻击,因为 foomatic-rip 过滤器通过 foomaticripCommandLine 指令执行任意命令,允许攻击者以 cups-brows-browse 进程的形式运行命令。攻击者等待受害者的计算机启动打印作业。发生这种情况的那一刻,攻击者的恶意代码将被执行(远程代码执行)。
如何减轻 RCE 风险?
对于将CUPS用作业务运营一部分的公司,他们必须遵循以下建议的补救建议 Evilsocket 和 红帽。这包括但不限于将应用安全补丁作为紧急级别的优先事项。
对于一般的命令注入,请查看我们的 综合指南。
如果你有兴趣获得更多免费编程指南,请查看 安全代码教练 帮助您掌握安全编码最佳实践。


在我们探索通用 UNIX 打印系统 (CUPS) 中最近出现的高严重性漏洞时,了解 Linux 用户面临的最新安全挑战。了解这些问题如何可能导致潜在的远程代码执行 (RCE),以及您可以采取哪些措施来保护系统。

Secure Code Warrior可帮助您的组织在整个软件开发生命周期中保护代码,并营造一种将网络安全置于首位的文化。无论您是应用安全经理、开发人员、首席信息安全官还是任何与安全相关的人员,我们都能帮助您的组织降低与不安全代码相关的风险。
预约演示Laura Verheyde 是Secure Code Warrior 的一名软件开发人员,主要负责研究漏洞并为Missions 和编码实验室创建内容。


Linux用户最近过得并不轻松,据报道,在过去的几年中,有几个高度严重的漏洞以各种方式影响了系统。安全研究人员现在还有另一组漏洞需要解开,所有这些漏洞都与针对GNU/Linux系统的通用UNIX打印系统(CUPS)功能有关,这些漏洞可能具有强大的远程代码执行(RCE)途径。
2024 年 9 月 27 日,evilsocket.net 的西蒙娜·玛加里泰利 已发布的关键信息 关于 CUPS 中有多个可利用的漏洞,随后为其中四个漏洞分配了 CVE。这个数字可能会增加,但在撰写本文时,安全界正在辩论这些发现的实际严重性。而其中一个 CVE, CVE-2024-47177,MITRE 当前的严重程度评级为 9.1,成功操纵此命令注入漏洞取决于启用了 CUPS 服务的服务器,此外,还需要访问 UDP 端口 631 或 DNS-SD。 红帽 但是请注意,可以将 CUPS 重新映射到其他端口。
玛格丽泰利对该事件的全面分析揭示了一系列阴险、复杂的攻击,尽管社区存在分歧,但不容忽视。它为我们提供了一个教训,即如果威胁行为者有足够的决心,如果不良的编码模式留下了很小的机会之窗,那么看似无害的依赖关系就会被深度利用。
CUPS 场景与许多开发人员和 AppSec 专业人员之前可能经历的情况略有不同,因此,让我们来看看并测试一下您的技能。
漏洞:通过 CUPS 远程执行代码 (RCE)
这个 Evilsocket 博客 为这些漏洞提供了无与伦比的详尽背景信息,我们将继续密切关注这一资源。Margaritelli还在他的文章中引用了一位不愿透露姓名的消息人士的话,他似乎对Linux的总体安全稳定性并不乐观:
”从通用的安全角度来看,如今的整个 Linux 系统只是无穷无尽的安全漏洞等待被利用。”
这清醒地提醒人们,开源环境中仍然普遍存在固有的安全风险,更不用说全球开发界迫切需要提高安全意识和安全编码技能了。
让我们来看看 CVE:
漏洞链非常普遍,目前影响以下软件包的所有当前和以前版本:
- distrotech/cups 过滤器
- OpenPrinting/CUPS-
- 杯子浏览
- libcupsfilters
- libppd
二十多年来,CUPS 一直是 UNIX 和 Linux 操作系统的传统组件。它作为打印服务依赖项的功能使其急于执行网络请求,使其成为 RCE 级漏洞的主要目标。
但是,在这种情况下,在如何将攻击结合起来提供成功结果方面存在一些独创性。这本质上是未经身份验证、未被发现的攻击者能够使用恶意 URL 替换互联网打印协议 (IPP) URL,此外还修改了可能导致在 “PPD(PostScript 打印机描述)” 文件中注入命令的指令,该文件是用于描述新添加的打印机功能的文件。一旦激活打印作业,这就会导致命令执行攻击,这依赖于 CUPS 组件内缺乏输入验证。
此外,修复这个特殊漏洞会产生一把双刃剑,比如 Evilsocket 指出。CUPS 包含 foomatic-rip 过滤器,这是一种可执行文件,以前曾是高风险、可利用的组件。与该组件相关的CVE可以追溯到2011年,尽管已经确定可以利用foomatic-rip来执行操作系统命令,但修复此问题会导致稳定性问题并失去对许多旧打印机的支持。这是一个需要克服的复杂问题。

- 威胁行为者发起攻击
- CVE-2024-47176: cups-browsed <= 2.0.1 容易受到攻击,因为它使用 INADDR_ANY 绑定到 UDP 端口 631,这意味着它信任从任何来源收到的任何数据包。这允许未经认证的远程攻击者发送带有操纵的 IPP URL(指向攻击者控制的 IPP 服务器)的恶意 UDP 数据包,从而触发漏洞。受害者的计算机现在认为它正在连接到一台新打印机,并发送请求询问打印机属性。
- 受害者系统处理打印机属性
- CVE-2024-47076: libcupsfilters <= 2.1b1 在 cfgetPrinterAttributes5 中存在漏洞,该漏洞无法正确验证或清理从 IPP 服务器返回的 IPP 属性。当 cups-browsed 处理数据包时,它可能会被诱骗读取攻击者发送的恶意属性。
- 受害者系统连接到攻击者控制器 IPP 服务器
- CVE-2024-47175: ppdCreatePpdFromIpp2 函数中的 libppd <= 2.1b1 在将 IPP 属性保存到临时 PPD(PostScript 打印机描述)文件时无法正确验证或清理这些属性。这允许攻击者将任意数据注入到PPD文件中,包括FoomaticripCommandLine指令,打印系统稍后可以执行该指令。
- 受害者系统启动打印作业并执行攻击者的代码
CVE-2024-47177: cups-filters <= 2.0.1 容易受到攻击,因为 foomatic-rip 过滤器通过 foomaticripCommandLine 指令执行任意命令,允许攻击者以 cups-brows-browse 进程的形式运行命令。攻击者等待受害者的计算机启动打印作业。发生这种情况的那一刻,攻击者的恶意代码将被执行(远程代码执行)。
如何减轻 RCE 风险?
对于将CUPS用作业务运营一部分的公司,他们必须遵循以下建议的补救建议 Evilsocket 和 红帽。这包括但不限于将应用安全补丁作为紧急级别的优先事项。
对于一般的命令注入,请查看我们的 综合指南。
如果你有兴趣获得更多免费编程指南,请查看 安全代码教练 帮助您掌握安全编码最佳实践。

Linux用户最近过得并不轻松,据报道,在过去的几年中,有几个高度严重的漏洞以各种方式影响了系统。安全研究人员现在还有另一组漏洞需要解开,所有这些漏洞都与针对GNU/Linux系统的通用UNIX打印系统(CUPS)功能有关,这些漏洞可能具有强大的远程代码执行(RCE)途径。
2024 年 9 月 27 日,evilsocket.net 的西蒙娜·玛加里泰利 已发布的关键信息 关于 CUPS 中有多个可利用的漏洞,随后为其中四个漏洞分配了 CVE。这个数字可能会增加,但在撰写本文时,安全界正在辩论这些发现的实际严重性。而其中一个 CVE, CVE-2024-47177,MITRE 当前的严重程度评级为 9.1,成功操纵此命令注入漏洞取决于启用了 CUPS 服务的服务器,此外,还需要访问 UDP 端口 631 或 DNS-SD。 红帽 但是请注意,可以将 CUPS 重新映射到其他端口。
玛格丽泰利对该事件的全面分析揭示了一系列阴险、复杂的攻击,尽管社区存在分歧,但不容忽视。它为我们提供了一个教训,即如果威胁行为者有足够的决心,如果不良的编码模式留下了很小的机会之窗,那么看似无害的依赖关系就会被深度利用。
CUPS 场景与许多开发人员和 AppSec 专业人员之前可能经历的情况略有不同,因此,让我们来看看并测试一下您的技能。
漏洞:通过 CUPS 远程执行代码 (RCE)
这个 Evilsocket 博客 为这些漏洞提供了无与伦比的详尽背景信息,我们将继续密切关注这一资源。Margaritelli还在他的文章中引用了一位不愿透露姓名的消息人士的话,他似乎对Linux的总体安全稳定性并不乐观:
”从通用的安全角度来看,如今的整个 Linux 系统只是无穷无尽的安全漏洞等待被利用。”
这清醒地提醒人们,开源环境中仍然普遍存在固有的安全风险,更不用说全球开发界迫切需要提高安全意识和安全编码技能了。
让我们来看看 CVE:
漏洞链非常普遍,目前影响以下软件包的所有当前和以前版本:
- distrotech/cups 过滤器
- OpenPrinting/CUPS-
- 杯子浏览
- libcupsfilters
- libppd
二十多年来,CUPS 一直是 UNIX 和 Linux 操作系统的传统组件。它作为打印服务依赖项的功能使其急于执行网络请求,使其成为 RCE 级漏洞的主要目标。
但是,在这种情况下,在如何将攻击结合起来提供成功结果方面存在一些独创性。这本质上是未经身份验证、未被发现的攻击者能够使用恶意 URL 替换互联网打印协议 (IPP) URL,此外还修改了可能导致在 “PPD(PostScript 打印机描述)” 文件中注入命令的指令,该文件是用于描述新添加的打印机功能的文件。一旦激活打印作业,这就会导致命令执行攻击,这依赖于 CUPS 组件内缺乏输入验证。
此外,修复这个特殊漏洞会产生一把双刃剑,比如 Evilsocket 指出。CUPS 包含 foomatic-rip 过滤器,这是一种可执行文件,以前曾是高风险、可利用的组件。与该组件相关的CVE可以追溯到2011年,尽管已经确定可以利用foomatic-rip来执行操作系统命令,但修复此问题会导致稳定性问题并失去对许多旧打印机的支持。这是一个需要克服的复杂问题。

- 威胁行为者发起攻击
- CVE-2024-47176: cups-browsed <= 2.0.1 容易受到攻击,因为它使用 INADDR_ANY 绑定到 UDP 端口 631,这意味着它信任从任何来源收到的任何数据包。这允许未经认证的远程攻击者发送带有操纵的 IPP URL(指向攻击者控制的 IPP 服务器)的恶意 UDP 数据包,从而触发漏洞。受害者的计算机现在认为它正在连接到一台新打印机,并发送请求询问打印机属性。
- 受害者系统处理打印机属性
- CVE-2024-47076: libcupsfilters <= 2.1b1 在 cfgetPrinterAttributes5 中存在漏洞,该漏洞无法正确验证或清理从 IPP 服务器返回的 IPP 属性。当 cups-browsed 处理数据包时,它可能会被诱骗读取攻击者发送的恶意属性。
- 受害者系统连接到攻击者控制器 IPP 服务器
- CVE-2024-47175: ppdCreatePpdFromIpp2 函数中的 libppd <= 2.1b1 在将 IPP 属性保存到临时 PPD(PostScript 打印机描述)文件时无法正确验证或清理这些属性。这允许攻击者将任意数据注入到PPD文件中,包括FoomaticripCommandLine指令,打印系统稍后可以执行该指令。
- 受害者系统启动打印作业并执行攻击者的代码
CVE-2024-47177: cups-filters <= 2.0.1 容易受到攻击,因为 foomatic-rip 过滤器通过 foomaticripCommandLine 指令执行任意命令,允许攻击者以 cups-brows-browse 进程的形式运行命令。攻击者等待受害者的计算机启动打印作业。发生这种情况的那一刻,攻击者的恶意代码将被执行(远程代码执行)。
如何减轻 RCE 风险?
对于将CUPS用作业务运营一部分的公司,他们必须遵循以下建议的补救建议 Evilsocket 和 红帽。这包括但不限于将应用安全补丁作为紧急级别的优先事项。
对于一般的命令注入,请查看我们的 综合指南。
如果你有兴趣获得更多免费编程指南,请查看 安全代码教练 帮助您掌握安全编码最佳实践。
Linux用户最近过得并不轻松,据报道,在过去的几年中,有几个高度严重的漏洞以各种方式影响了系统。安全研究人员现在还有另一组漏洞需要解开,所有这些漏洞都与针对GNU/Linux系统的通用UNIX打印系统(CUPS)功能有关,这些漏洞可能具有强大的远程代码执行(RCE)途径。
2024 年 9 月 27 日,evilsocket.net 的西蒙娜·玛加里泰利 已发布的关键信息 关于 CUPS 中有多个可利用的漏洞,随后为其中四个漏洞分配了 CVE。这个数字可能会增加,但在撰写本文时,安全界正在辩论这些发现的实际严重性。而其中一个 CVE, CVE-2024-47177,MITRE 当前的严重程度评级为 9.1,成功操纵此命令注入漏洞取决于启用了 CUPS 服务的服务器,此外,还需要访问 UDP 端口 631 或 DNS-SD。 红帽 但是请注意,可以将 CUPS 重新映射到其他端口。
玛格丽泰利对该事件的全面分析揭示了一系列阴险、复杂的攻击,尽管社区存在分歧,但不容忽视。它为我们提供了一个教训,即如果威胁行为者有足够的决心,如果不良的编码模式留下了很小的机会之窗,那么看似无害的依赖关系就会被深度利用。
CUPS 场景与许多开发人员和 AppSec 专业人员之前可能经历的情况略有不同,因此,让我们来看看并测试一下您的技能。
漏洞:通过 CUPS 远程执行代码 (RCE)
这个 Evilsocket 博客 为这些漏洞提供了无与伦比的详尽背景信息,我们将继续密切关注这一资源。Margaritelli还在他的文章中引用了一位不愿透露姓名的消息人士的话,他似乎对Linux的总体安全稳定性并不乐观:
”从通用的安全角度来看,如今的整个 Linux 系统只是无穷无尽的安全漏洞等待被利用。”
这清醒地提醒人们,开源环境中仍然普遍存在固有的安全风险,更不用说全球开发界迫切需要提高安全意识和安全编码技能了。
让我们来看看 CVE:
漏洞链非常普遍,目前影响以下软件包的所有当前和以前版本:
- distrotech/cups 过滤器
- OpenPrinting/CUPS-
- 杯子浏览
- libcupsfilters
- libppd
二十多年来,CUPS 一直是 UNIX 和 Linux 操作系统的传统组件。它作为打印服务依赖项的功能使其急于执行网络请求,使其成为 RCE 级漏洞的主要目标。
但是,在这种情况下,在如何将攻击结合起来提供成功结果方面存在一些独创性。这本质上是未经身份验证、未被发现的攻击者能够使用恶意 URL 替换互联网打印协议 (IPP) URL,此外还修改了可能导致在 “PPD(PostScript 打印机描述)” 文件中注入命令的指令,该文件是用于描述新添加的打印机功能的文件。一旦激活打印作业,这就会导致命令执行攻击,这依赖于 CUPS 组件内缺乏输入验证。
此外,修复这个特殊漏洞会产生一把双刃剑,比如 Evilsocket 指出。CUPS 包含 foomatic-rip 过滤器,这是一种可执行文件,以前曾是高风险、可利用的组件。与该组件相关的CVE可以追溯到2011年,尽管已经确定可以利用foomatic-rip来执行操作系统命令,但修复此问题会导致稳定性问题并失去对许多旧打印机的支持。这是一个需要克服的复杂问题。

- 威胁行为者发起攻击
- CVE-2024-47176: cups-browsed <= 2.0.1 容易受到攻击,因为它使用 INADDR_ANY 绑定到 UDP 端口 631,这意味着它信任从任何来源收到的任何数据包。这允许未经认证的远程攻击者发送带有操纵的 IPP URL(指向攻击者控制的 IPP 服务器)的恶意 UDP 数据包,从而触发漏洞。受害者的计算机现在认为它正在连接到一台新打印机,并发送请求询问打印机属性。
- 受害者系统处理打印机属性
- CVE-2024-47076: libcupsfilters <= 2.1b1 在 cfgetPrinterAttributes5 中存在漏洞,该漏洞无法正确验证或清理从 IPP 服务器返回的 IPP 属性。当 cups-browsed 处理数据包时,它可能会被诱骗读取攻击者发送的恶意属性。
- 受害者系统连接到攻击者控制器 IPP 服务器
- CVE-2024-47175: ppdCreatePpdFromIpp2 函数中的 libppd <= 2.1b1 在将 IPP 属性保存到临时 PPD(PostScript 打印机描述)文件时无法正确验证或清理这些属性。这允许攻击者将任意数据注入到PPD文件中,包括FoomaticripCommandLine指令,打印系统稍后可以执行该指令。
- 受害者系统启动打印作业并执行攻击者的代码
CVE-2024-47177: cups-filters <= 2.0.1 容易受到攻击,因为 foomatic-rip 过滤器通过 foomaticripCommandLine 指令执行任意命令,允许攻击者以 cups-brows-browse 进程的形式运行命令。攻击者等待受害者的计算机启动打印作业。发生这种情况的那一刻,攻击者的恶意代码将被执行(远程代码执行)。
如何减轻 RCE 风险?
对于将CUPS用作业务运营一部分的公司,他们必须遵循以下建议的补救建议 Evilsocket 和 红帽。这包括但不限于将应用安全补丁作为紧急级别的优先事项。
对于一般的命令注入,请查看我们的 综合指南。
如果你有兴趣获得更多免费编程指南,请查看 安全代码教练 帮助您掌握安全编码最佳实践。




%20(1).avif)
.avif)
