Elevación de privilegios local en el gestor de paquetes Snapd ‘Dirty Sock’

Una vulnerabilidad de elevación de privilegios local en el paquete Snapd de Canonical denominada ‘Dirty Sock’, está presente por defecto en las distribuciones Ubuntu Server, Desktop y Live y podría permitir a cualquier usuario local obtener acceso de administrador.

La vulnerabilidad identificada con el identificador CVE-2019-7304 ha sido descubierta por Chris Moberly. La vulnerabilidad reside en el parseo remoto de la dirección del socket local UNIX_AF en la API REST de Snapd.

El autor ha detallado al menos dos maneras de lograr la explotación de la vulnerabilidad, aunque según cita, es probable que exista alguna manera adicional.

La primera de ellas ‘dirty_sockv1’ se basa en la omisión de las comprobaciones de control de acceso en la función ‘/v2/create-user’. Esto solicita al sistema de un nombre de usuario y una clave SSH pública, para crear un usuario local.

La segunda de ellas ‘dirty_sockv2’, la cuál, también omite las comprobaciones de control de acceso pero esta vez en, ‘/v2/snaps’. En este caso no se usa el servicio SSH sino que la explotación se produce a través de un paquete snap con ‘devmode’ activo y vacío.

El autor ha acompañado los detalles de la vulnerabilidad de una PoC reproducible en las versiones 2.28 a la 2.37.

Powered by WPeMatico

Gustavo Genez

Informático de corazón y apasionado por la tecnología. La misión de este blog es llegar a los usuarios y profesionales con información y trucos acerca de la Seguridad Informática.