Vulnerabilidades críticas de Expat corregidas: Se requiere una actualización urgente
Un descubrimiento reciente ha puesto de manifiesto importantes riesgos de seguridad en la biblioteca C de análisis XML Expat, ampliamente utilizada. El investigador de seguridad Shang-Hung Wan identificó tres vulnerabilidades críticas de Expat que podrían provocar ataques de denegación de servicio o la ejecución de código arbitrario.
Estas vulnerabilidades se identifican en versiones de libexpat anteriores a la 2.6.3 y tienen una puntuación de gravedad de 9,8. A continuación se muestra una descripción detallada de cada vulnerabilidad.
Detalles de las vulnerabilidades de los expatriados
En versiones de libexpat anteriores a la 2.6.3, xmlparse.c no rechazaba longitudes de entrada negativas durante la llamada a la función XML_ParseBuffer. Esta vulnerabilidad permite a un atacante crear entradas que hacen que la biblioteca Expat se comporte de forma impredecible, lo que puede provocar una denegación de servicio o la ejecución de código arbitrario.
Otra vulnerabilidad se debe a que Expat no gestiona correctamente los desbordamientos de enteros en la función dtdCopy en plataformas de 32 bits. Este problema, también encontrado en libexpat antes de 2.6.3, permite a los atacantes explotar el espacio de memoria limitado del sistema, causando desbordamientos de búfer y conduciendo a una denegación de servicio o ejecución de código arbitrario.
Al igual que en el problema anterior, la función nextScaffoldPart de xmlparse.c no gestionaba los desbordamientos de enteros para m_groupSize en plataformas de 32 bits. Este fallo permite a un atacante provocar una denegación de servicio o, potencialmente, la ejecución de código arbitrario.
Proteger sus sistemas
Dada la naturaleza crítica de estas vulnerabilidades, los administradores de sistemas y los usuarios de la biblioteca Expat deben tomar medidas rápidas actualizando a la última versión disponible.
Las principales distribuciones de Linux, como Ubuntu y Debian, han publicado los parches de seguridad necesarios para mitigar los riesgos potenciales. Canonical ya ha publicado parches para solucionar estas vulnerabilidades en varias versiones compatibles de Ubuntu. Estos incluyen:
- Ubuntu 24.04 LTS
- Ubuntu 20.04 LTS
- Ubuntu 18.04 ESM (Mantenimiento de seguridad ampliado)
- Ubuntu 16.04 ESM
- Ubuntu 14.04 ESM
Para los usuarios de versiones anteriores de Ubuntu, como 16.04 y 18.04, que han llegado al final de su vida útil, el Mantenimiento de Seguridad Ampliado (ESM) de Canonical ofrece soporte de seguridad continuado. Sin embargo, este servicio solo está disponible a través de una suscripción a Ubuntu Pro.
Alternativamente, los usuarios pueden optar por una solución asequible, el Soporte de Ciclo de Vida Extendido (ELS) de TuxCare, que ofrece cinco años adicionales de actualizaciones de seguridad para Ubuntu 16.04 y Ubuntu 18.04. El servicio ELS cubre parches críticos para la biblioteca Expat y otros paquetes esenciales como el kernel de Linux, OpenSSL y Python.
El equipo de ELS ya ha publicado parches para las vulnerabilidades Expat mencionadas anteriormente, y puede supervisar la publicación de parches en varias distribuciones de Linux mediante este rastreador de CVE. Actualmente, TuxCare es compatible con CentOS 6, CentOS 7, CentOS 8, CentOS Stream 8, Ubuntu 16.04, Ubuntu 18.04, Oracle Linux 6 y Oracle Linux 7.
El equipo de seguridad de Debian también ha respondido a estas vulnerabilidades. Para los usuarios de Debian 12 (Bookworm), las vulnerabilidades se han corregido en la versión 2.5.0-1+deb12u1 de Expat. Se recomienda encarecidamente a los usuarios que actualicen sus paquetes Expat a esta versión o a una posterior para asegurarse de que están protegidos frente a posibles ataques.
Conclusión
Las vulnerabilidades identificadas por Shang-Hung Wan tienen su origen en la mala gestión que Expat hace de determinadas llamadas a funciones y desbordamientos de enteros en plataformas de 32 bits. Actualizando a la última versión parcheada, puede reducir significativamente el riesgo de explotación y proteger sus sistemas de posibles ataques.
En el caso de los sistemas que ejecutan distribuciones obsoletas o que han llegado al final de su vida útil, considere la posibilidad de utilizar el soporte ampliado del ciclo de vida de TuxCare para recibir actualizaciones de seguridad continuas.
Fuente: USN-7000-1