Fallos críticos en el sistema de impresión CUPS de Linux podrían permitir la ejecución remota de comandos

XPoint
Publicado el 27/09/2024

Se han revelado nuevas vulnerabilidades en el sistema de impresión OpenPrinting Common Unix Printing System (CUPS) en Linux que podrían permitir la ejecución remota de comandos en ciertas condiciones.

“Un atacante remoto no autenticado puede reemplazar silenciosamente las URL de IPP de impresoras existentes (o instalar nuevas) con una maliciosa, lo que resulta en la ejecución arbitraria de comandos en el equipo cuando se inicia un trabajo de impresión,” explicó el investigador de seguridad Simone Margaritelli.

CUPS es un sistema de impresión de código abierto y basado en estándares para Linux y otros sistemas operativos similares a Unix, como ArchLinux, Debian, Fedora, Red Hat Enterprise Linux (RHEL), ChromeOS, FreeBSD, NetBSD, OpenBSD, openSUSE y SUSE Linux.

La lista de vulnerabilidades es la siguiente:

CVE-2024-47176: cups-browsed ≤ 2.0.1 se enlaza en UDP INADDR_ANY:631 confiando en cualquier paquete de cualquier fuente para activar una solicitud IPP Get-Printer-Attributes a una URL controlada por el atacante.

CVE-2024-47076: libcupsfilters ≤ 2.1b1 cfGetPrinterAttributes5 no valida ni sanitiza los atributos IPP devueltos desde un servidor IPP, proporcionando datos controlados por el atacante al resto del sistema CUPS.

CVE-2024-47175: libppd ≤ 2.1b1 ppdCreatePPDFromIPP2 no valida ni sanitiza los atributos IPP al escribirlos en un archivo PPD temporal, permitiendo la inyección de datos controlados por el atacante en el PPD resultante.

CVE-2024-47177: cups-filters ≤ 2.0.1 foomatic-rip permite la ejecución arbitraria de comandos mediante el parámetro FoomaticRIPCommandLine del archivo PPD.

La consecuencia de estas deficiencias es que podrían ser encadenadas en un exploit que permita a un atacante crear un dispositivo de impresión falso y malicioso en un sistema Linux expuesto a la red, ejecutando código remoto al enviar un trabajo de impresión.

Ciberseguridad

“El problema surge debido al manejo inadecuado de los anuncios de ‘Nueva impresora disponible’ en el componente ‘cups-browsed’, combinado con la mala validación por parte de CUPS de la información proporcionada por un recurso de impresión malicioso,” señaló la compañía de seguridad de redes Ontinue.

“La vulnerabilidad radica en la validación insuficiente de los datos de la red, lo que permite a los atacantes hacer que el sistema vulnerable instale un controlador de impresora malicioso y luego envíe un trabajo de impresión que desencadena la ejecución del código malicioso, ejecutado con los privilegios del usuario lp, no del superusuario ‘root’.”

RHEL mencionó en un aviso que todas las versiones del sistema operativo están afectadas por las cuatro vulnerabilidades, pero señaló que no son vulnerables en su configuración predeterminada. Clasificó estos problemas como de importancia alta, aunque su impacto en el mundo real probablemente sea bajo.

“Al encadenar este conjunto de vulnerabilidades, un atacante podría lograr la ejecución remota de código, lo que podría llevar al robo de datos sensibles o daños en sistemas de producción críticos,” añadió.

La firma de ciberseguridad Rapid7 advirtió que los sistemas afectados son explotables desde internet o a través de segmentos de red solo si el puerto UDP 631 está accesible y el servicio vulnerable está escuchando.

Palo Alto Networks afirmó que ninguno de sus productos y servicios en la nube contiene los paquetes de software relacionados con CUPS mencionados, por lo que no están afectados.

Se están desarrollando parches para corregir las vulnerabilidades y se espera su lanzamiento en los próximos días. Hasta entonces, se recomienda deshabilitar y eliminar el servicio cups-browsed si no es necesario, y bloquear o restringir el tráfico hacia el puerto UDP 631.

“Al parecer, las vulnerabilidades de ejecución remota en sistemas Linux sin autenticación que han sido promocionadas como catastróficas podrían afectar solo a un subconjunto de sistemas,” afirmó Benjamin Harris, CEO de WatchTowr, en un comunicado compartido con The Hacker News.

Ciberseguridad

“En este sentido, aunque las vulnerabilidades son graves en términos de impacto técnico, es menos probable que las máquinas de escritorio que ejecutan CUPS estén expuestas a internet de la misma manera o en la misma cantidad que las ediciones de servidor de Linux.”

Satnam Narang, ingeniero investigador senior en Tenable, dijo que estas vulnerabilidades no están al nivel de Log4Shell o Heartbleed.

“La realidad es que, en una variedad de software, ya sea de código abierto o cerrado, hay un sinfín de vulnerabilidades aún por descubrir y divulgar,” señaló Narang. “La investigación en seguridad es vital para este proceso, y debemos exigir más a los proveedores de software.”

“Para las organizaciones que se centran en estas últimas vulnerabilidades, es importante destacar que las fallas más preocupantes son las vulnerabilidades conocidas que continúan siendo explotadas por grupos de amenazas persistentes avanzadas vinculados a estados-nación, así como por afiliados de ransomware que extorsionan a las empresas por millones de dólares cada año.”

 


 

Critical Linux CUPS Printing System Flaws Could Allow Remote Command Execution

Linux / Vulnerability

 

New security vulnerabilities have been uncovered in the OpenPrinting Common Unix Printing System (CUPS) on Linux systems, potentially allowing remote command execution under specific conditions.

“A remote, unauthenticated attacker could silently replace existing printers’ IPP URLs (or add new ones) with malicious ones, leading to arbitrary command execution on the machine when a print job is initiated,” explained security researcher Simone Margaritelli.

CUPS is an open-source, standards-based printing system for Linux and other Unix-like operating systems, including ArchLinux, Debian, Fedora, Red Hat Enterprise Linux (RHEL), ChromeOS, FreeBSD, NetBSD, OpenBSD, openSUSE, and SUSE Linux.

The vulnerabilities include:

CVE-2024-47176: cups-browsed ≤ 2.0.1 binds on UDP INADDR_ANY:631, trusting packets from any source to trigger a Get-Printer-Attributes IPP request to an attacker-controlled URL.

CVE-2024-47076: libcupsfilters ≤ 2.1b1 cfGetPrinterAttributes5 does not validate or sanitize the IPP attributes returned by an IPP server, allowing attacker-controlled data into the CUPS system.

CVE-2024-47175: libppd ≤ 2.1b1 ppdCreatePPDFromIPP2 does not validate or sanitize IPP attributes when writing them to a temporary PPD file, enabling injection of attacker-controlled data into the resulting PPD.

CVE-2024-47177: cups-filters ≤ 2.0.1 foomatic-rip allows arbitrary command execution via the FoomaticRIPCommandLine PPD parameter.

These vulnerabilities could be exploited in a chain, allowing an attacker to create a fake printing device on a network-exposed Linux system running CUPS and trigger remote code execution when a print job is sent.

Cybersecurity

“The issue arises due to improper handling of ‘New Printer Available’ announcements in the ‘cups-browsed’ component, combined with CUPS’ poor validation of information from malicious printing resources,” said network security firm Ontinue.

“The vulnerability stems from inadequate validation of network data, enabling attackers to install a malicious printer driver and execute malicious code upon sending a print job. The code runs with the privileges of the ‘lp’ user, not the ‘root’ superuser.”

RHEL noted in an advisory that all versions of the OS are affected, though they are not vulnerable in their default configuration. The flaws were rated as Important, but their real-world impact is expected to be low.

“By chaining these vulnerabilities, an attacker could achieve remote code execution, potentially leading to data theft or damage to critical production systems,” RHEL stated.

Cybersecurity firm Rapid7 pointed out that affected systems are exploitable from the internet or across network segments only if UDP port 631 is accessible and the vulnerable service is listening.

Palo Alto Networks confirmed that none of its products or cloud services contain the affected CUPS-related software, making them immune to these flaws.

Patches are currently being developed and should be released soon. In the meantime, disabling and removing the cups-browsed service, if unnecessary, and restricting traffic to UDP port 631 is recommended.

“It appears the unauthenticated Linux RCE vulnerabilities, initially feared to be catastrophic, may only affect a subset of systems,” said Benjamin Harris, CEO of WatchTowr, in a statement to The Hacker News.

Cybersecurity

“While technically severe, it’s less likely that desktop machines running CUPS are exposed to the internet as server editions of Linux typically are.”

Satnam Narang, senior research engineer at Tenable, remarked that these vulnerabilities are not on the scale of Log4Shell or Heartbleed.

“In all software, whether open or closed source, there are countless vulnerabilities yet to be discovered,” said Narang. “Security research is crucial, and we should demand more from software vendors

Preguntas frecuentes

¿Qué es RCE?

+

jecución remota de código (RCE) se refiere tomar el control de la consola del sistema operativo de un ordenador, con el fin de ejecutar comandos a distancia. De este modo, un hacker malicioso podría instalar malware, ransomware o, en principio, hacer lo que desee dentro del ordenador.

¿Para que sirve el Pentesting?

+

El pentesting o Test de penetración, en español) es una técnica de ciberseguridad que consistente en atacar entornos informáticos con la intención de descubrir vulnerabilidades en los mismos, con el objetivo de reunir la información necesaria para poder prevenir en el futuro ataques externos hacia esos mismos …

¿Qué es y para qué la Seguridad en el Desarrollo Ágil?

+

El Servicio de Seguridad en Ciclo de Desarrollo es un enfoque integral que garantiza la protección de los proyectos de software desde su fase inicial de diseño hasta su implementación final. Esto implica integrar medidas de seguridad en cada etapa del proceso de desarrollo, desde la planificación hasta la entrega del producto. La importancia de este servicio radica en varios aspectos:

  1. Protección temprana contra amenazas: Al abordar la seguridad desde el principio del ciclo de desarrollo, se pueden identificar y mitigar riesgos de seguridad antes de que se conviertan en problemas costosos o críticos en etapas posteriores del proyecto.
  2. Reducción de costos y tiempo: Corregir problemas de seguridad durante las etapas iniciales del desarrollo es más económico y rápido que hacerlo después de que el producto esté en producción. Esto puede ayudar a evitar retrasos en el lanzamiento del producto y ahorros significativos en costos asociados con la corrección de brechas de seguridad.
  3. Cumplimiento normativo: Muchas regulaciones y estándares de la industria requieren que los productos de software cumplan con ciertos requisitos de seguridad y protección de datos. Integrar la seguridad en el ciclo de desarrollo ayuda a garantizar el cumplimiento de estas regulaciones desde el principio, evitando posibles multas y sanciones legales.
  4. Confianza del cliente: La seguridad de los datos y la protección de la privacidad son preocupaciones importantes para los clientes. Al demostrar un compromiso con la seguridad a lo largo de todo el ciclo de desarrollo, las empresas pueden construir y mantener la confianza del cliente en sus productos y servicios.

En resumen, el Servicio de Seguridad en Ciclo de Desarrollo es esencial para garantizar que los productos de software sean seguros, confiables y cumplan con los estándares de seguridad y privacidad, lo que resulta en beneficios tanto para la empresa como para sus clientes.

¿Qué es el Phishing Ético?

+

El Phishing Ético es una servicio que consiste en realizar actividades de Ingeniería Social con propósitos legítimos y éticos, generalmente como parte de una Campaña de Concientización, Evaluación de Seguridad, Prueba de un Pentesting o Red Team.

Para más información ingresa aquí: https://www.xpoint.cl/phishing-etico/

¿Qué es un Red Team en Ciberseguridad?

+

Un Red Team en ciberseguridad es un grupo de profesionales que simulan ser adversarios externos para evaluar la seguridad de un sistema o red. Utilizan tácticas similares a las de ciberdelincuentes reales, llevan a cabo pruebas de penetración, analizan riesgos y proporcionan recomendaciones para mejorar la seguridad. Su enfoque proactivo ayuda a las organizaciones a identificar y abordar vulnerabilidades, fortaleciendo así sus defensas contra amenazas potenciales.

¿Qué es la Gestión de Vulnerabilidades?

+

La gestión de vulnerabilidades es un proceso integral que se centra en identificar, evaluar y abordar las debilidades en la seguridad de un sistema o red. Este proceso sigue varios pasos clave:

  1. Identificación de Vulnerabilidades
  2. Evaluación de Riesgos
  3. Priorización
  4. Mitigación y Solución
  5. Seguimiento Continuo
  6. Comunicación y Documentación
  7. Formación y Concienciación

La gestión de vulnerabilidades es esencial para mantener la seguridad de la información en un entorno digital en constante cambio, minimizando el riesgo de explotación y fortaleciendo las defensas contra posibles amenazas.

¿Tienes dudas?, contáctanos