Snapd Flaw permite a los atacantes obtener acceso a la raíz en los sistemas Linux

Explotación de escalada de privilegios de Snapd Linux

Ubuntu y algunas otras distribuciones de Linux sufren una grave vulnerabilidad de escalada de privilegios que podría permitir que un atacante local o un programa malicioso obtenga privilegios de root y control total sobre el sistema objetivo.

Doblado «calcetin_sucio«e identificado como CVE-2019-7304la vulnerabilidad fue descubierta por el investigador de seguridad Chris Moberly, quien se la reveló de forma privada a Canonical, el fabricante de Ubuntu, a fines del mes pasado.

La vulnerabilidad reside en la API REST para servicio rápidoun sistema de empaquetado universal de Linux que hace que una aplicación sea compatible con varias distribuciones de Linux sin necesidad de modificarla.

Creado por Canonical, snapd viene instalado de forma predeterminada en todas las versiones de Ubuntu y también lo utilizan otras distribuciones de Linux, incluidas Debian, OpenSUSE, Arch Linux, Solus y Fedora.

Los paquetes Snap son básicamente aplicaciones comprimidas junto con sus dependencias que también incluyen instrucciones sobre cómo ejecutar e interactuar con otro software en varios sistemas Linux para escritorio, nube e Internet de las cosas.

Snap aloja localmente un servidor web (socket UNIX_AF) para ofrecer una lista de API RESTful que ayudan al servicio a realizar varias acciones en el sistema operativo. Estas API REST vienen con control de acceso para definir permisos de nivel de usuario para tareas específicas. Algunas potentes API solo están disponibles para usuarios root, mientras que otras pueden ser accedidas por usuarios con pocos privilegios.

Según Moberly, una falla en la forma en que el mecanismo de control de acceso verifica el UID asociado con cualquier solicitud realizada a un servidor permite a los atacantes sobrescribir la variable UID y acceder a cualquier función API, incluidas aquellas que están restringidas para el usuario raíz.

«Las versiones 2.28 a 2.37 de Snapd validaron y analizaron incorrectamente la dirección del socket remoto al realizar controles de acceso en su socket UNIX», explica Ubuntu en su aviso. «Un atacante local podría usar esto para acceder a las API de sockets privilegiados y obtener privilegios de administrador».

Sin embargo, debe tenerse en cuenta que, dado que el exploit Dirty Sock aprovecha la falla de escalada de privilegios locales, no permite que los piratas informáticos comprometan un sistema Linux vulnerable de forma remota.

Moberly también lanzó hoy dos exploits de prueba de concepto (PoC) en GitHub, uno de los cuales requiere una conexión SSH, mientras que el otro puede descargar un complemento malicioso al abusar de esta API.

Canonical lanzó la versión snapd Snapd 2.37.1 esta semana para abordar la vulnerabilidad, y Ubuntu y otras distribuciones importantes de Linux ya lanzaron una versión corregida de sus paquetes.

Se recomienda encarecidamente a los usuarios de Linux que actualicen sus instalaciones vulnerables lo antes posible.

Continua leyendo