Vulnerabilidad en libXpm que conduce a la ejecución de código

Se ha publicado una versión correctiva de la biblioteca libXpm 3.5.15, desarrollada por el proyecto X.Org y utilizada para procesar archivos en formato XPM. La nueva versión corrige tres vulnerabilidades, dos de las cuales (CVE-2022-46285, CVE-2022-44617) provocan un bucle al procesar archivos XPM especialmente diseñados. La tercera vulnerabilidad (CVE-2022-4883) permite ejecutar comandos arbitrarios al ejecutar aplicaciones que utilizan libXpm. Cuando se ejecutan procesos privilegiados asociados con libXpm, por ejemplo, programas con el indicador raíz suid, la vulnerabilidad hace posible escalar los privilegios.

La vulnerabilidad se debe a la forma en que libXpm trabaja con archivos XPM comprimidos: al procesar archivos XPM.Z o XPM.gz, la biblioteca inicia utilidades de descompresión externas (descomprimir o gunzip) usando la llamada execlp(), cuya ruta se calcula en función en la variable de entorno PATH. El ataque se reduce a colocar en un directorio accesible al usuario, presente en la lista PATH, sus propios archivos ejecutables descomprimidos o gunzip, que se ejecutarán si se inicia una aplicación que utiliza libXpm.

La vulnerabilidad se solucionó reemplazando la llamada execlp con execl usando rutas absolutas a las utilidades. Además, se agregó la opción de ensamblaje "--disable-open-zfile", que le permite deshabilitar el procesamiento de archivos comprimidos y llamar a utilidades externas para descomprimirlos.

Fuente: opennet.ru

Añadir un comentario