Error en Alpine Linux permite la ejecucion de codigo arbitrario

El investigador de seguridad Max Justicz descubrió varios defectos en la distribución Alpine Linux, incluida la ejecución de código arbitrario.

Alpine Linux es una distribución de Linux de propósito general, independiente y no comercial que se usa mucho en contenedores, incluido Docker.

Alpine Linux está basado en musl libc y busybox, es una pequeña distribución y está optimizado para administrar recursos, también es conocido por tiempos de arranque rápidos.

Los expertos descubrieron varias vulnerabilidades en el APK, el administrador de paquetes predeterminado en Alpine. El error más grave descubierto por Max Justicz podría ser explotado por un atacante para llevar a cabo un ataque man-in-the-middle para ejecutar código arbitrario en la máquina del usuario.

"Encontré varios errores en apk, el administrador de paquetes predeterminado para Alpine Linux. Alpine es una distribución muy ligera que se usa muy comúnmente con Docker. "Afirma el análisis publicado por el investigador.

"El peor de estos errores, el tema de esta entrada del blog, permite una red man-in-the-middle (o una réplica de paquetes maliciosos) para ejecutar código arbitrario en la máquina del usuario. Esto es especialmente malo porque los paquetes no se sirven con TLS cuando se usan los repositorios predeterminados ".

Un atacante podría desencadenar la falla para apuntar a un contenedor Docker basado en Alpine y ejecutar código arbitrario, Justicz también publicó un video PoC del ataque.

El gestor de paquetes extrae paquetes, en forma de archivos comprimidos gzipped, distribuidos como apk, luego verifica sus hash frente a los del manifiesto firmado.

Si los hashes son diferentes, el administrador de paquetes intenta desvincular todos los archivos y directorios extraídos.

El experto destacó que la función de anzuelos de confirmación del APK podría permitir a un atacante convertir escrituras arbitrarias persistentes en la ejecución del código. Justicz descubrió que es posible esconder un malware dentro del directorio commit_hooks del paquete que escaparía a la limpieza y que luego podría ejecutarse normalmente.

El experto explicó que si un atacante puede extraer un archivo en /etc/apk/commit_hooks.d/ y dejarlo allí después del proceso de limpieza, se ejecutará antes de que apk salga.

El atacante tiene que controlar el archivo tar descargado evitando que el administrador del paquete desvincula la carga útil y su directorio durante el proceso de limpieza.

El experto explicó que el atacante puede ejecutar MitM para interceptar solicitudes de paquetes de apk durante la creación de imágenes de Docker, y luego inyectarlos con código malicioso antes de pasarlos a las máquinas de destino que desempaquetarían y ejecutarían el código malicioso dentro de su contenedor Docker.

La última versión de Alpine ha abordado el problema; se recomienda a los desarrolladores que reconstruyan sus imágenes de Docker con la versión actualizada de Alpine.

Fecha actualización el 2021-09-19. Fecha publicación el 2018-09-19. Categoría: linux Autor: Oscar olg Mapa del sitio Fuente: securityaffairs
Alpine Linux