Vulnerabilidad en OpenPrinting CUPS (CVE-2024-35235)
Gravedad CVSS v3.1:
MEDIA
Tipo:
CWE-59
Incorrecta resolución de una ruta antes de aceder a un fichero (Seguimiento de enlaces)
Fecha de publicación:
11/06/2024
Última modificación:
26/09/2025
Descripción
OpenPrinting CUPS es un sistema de impresión de código abierto para Linux y otros sistemas operativos similares a Unix. En las versiones 2.4.8 y anteriores, al iniciar el servidor cupsd con un elemento de configuración Listen que apunta a un enlace simbólico, se puede hacer que el proceso cupsd realice un chmod arbitrario del argumento proporcionado, proporcionando acceso de escritura mundial al destino. Dado que cupsd a menudo se ejecuta como root, esto puede resultar en el cambio de permiso de cualquier usuario o archivo del sistema para que se pueda escribir en todo el mundo. Dado el contexto de Ubuntu AppArmor antes mencionado, en dichos sistemas esta vulnerabilidad se limita a aquellos archivos modificables por el proceso cupsd. En ese caso específico, se descubrió que era posible convertir la configuración del argumento Listen en control total sobre los archivos de configuración cupsd.conf y cups-files.conf. Al configurar posteriormente los argumentos Usuario y Grupo en cups-files.conf e imprimir con una impresora configurada por PPD con un argumento `FoomaticRIPCommandLine`, se podría lograr la ejecución de comandos arbitrarios de usuarios y grupos (no root), que se pueden usar aún más en Sistemas Ubuntu para lograr la ejecución completa del comando root. El commit ff1f8a623e090dee8a8aadf12a6a4b25efac143d contiene un parche para el problema.
Impacto
Puntuación base 3.x
4.40
Gravedad 3.x
MEDIA
Productos y versiones vulnerables
| CPE | Desde | Hasta |
|---|---|---|
| cpe:2.3:a:openprinting:cups:*:*:*:*:*:*:*:* | 2.4.8 (incluyendo) | |
| cpe:2.3:o:debian:debian_linux:10.0:*:*:*:*:*:*:* |
Para consultar la lista completa de nombres de CPE con productos y versiones, ver esta página
Referencias a soluciones, herramientas e información
- http://www.openwall.com/lists/oss-security/2024/06/11/1
- http://www.openwall.com/lists/oss-security/2024/06/12/4
- http://www.openwall.com/lists/oss-security/2024/06/12/5
- https://git.launchpad.net/ubuntu/+source/apparmor/tree/profiles/apparmor.d/abstractions/user-tmp#n21
- https://github.com/OpenPrinting/cups/blob/aba917003c8de55e5bf85010f0ecf1f1ddd1408e/cups/http-addr.c#L229-L240
- https://github.com/OpenPrinting/cups/commit/ff1f8a623e090dee8a8aadf12a6a4b25efac143d
- https://github.com/OpenPrinting/cups/security/advisories/GHSA-vvwp-mv6j-hw6f
- https://lists.debian.org/debian-lts-announce/2024/06/msg00001.html
- http://www.openwall.com/lists/oss-security/2024/06/11/1
- http://www.openwall.com/lists/oss-security/2024/06/12/4
- http://www.openwall.com/lists/oss-security/2024/06/12/5
- http://www.openwall.com/lists/oss-security/2024/11/08/3
- https://git.launchpad.net/ubuntu/+source/apparmor/tree/profiles/apparmor.d/abstractions/user-tmp#n21
- https://github.com/OpenPrinting/cups/blob/aba917003c8de55e5bf85010f0ecf1f1ddd1408e/cups/http-addr.c#L229-L240
- https://github.com/OpenPrinting/cups/commit/ff1f8a623e090dee8a8aadf12a6a4b25efac143d
- https://github.com/OpenPrinting/cups/security/advisories/GHSA-vvwp-mv6j-hw6f
- https://lists.debian.org/debian-lts-announce/2024/06/msg00001.html



