14 jun. 2021

Vulnerabilidad en Polkit permite escalamiento de privilegios en Linux

Una vulnerabilidad de escalamiento de privilegios de siete años de antigüedad fue descubierta en el servicio del sistema Polkit (de PolicyKit) y podría ser aprovechada por un atacante local malintencionado sin privilegios para eludir la autorización y escalar los permisos al usuario root.

Polkit es un conjunto de herramientas para definir y manejar autorizaciones en distribuciones de Linux, y se utiliza para permitir que los procesos sin privilegios se comuniquen con los procesos con privilegios.

Identificada como CVE-2021-3560 (puntuación CVSS: 7.8), la falla afecta a las versiones de polkit entre 0.113 y 0.118 y fue descubierta por el investigador de seguridad de GitHub Kevin Backhouse, quien dijo que el problema se introdujo en una actualización realizada el 9 de noviembre de 2013. Cedric Buissart de Red Hat señaló que las distribuciones basadas en Debian, basadas en polkit 0.105, también son vulnerables.

La mayor amenaza de esta vulnerabilidad es la confidencialidad e integridad de los datos, así como la disponibilidad del sistema. RHEL 8, Fedora 21 (o posterior), Debian "Bullseye" y Ubuntu 20.04 son algunas de las distribuciones populares de Linux afectadas por la vulnerabilidad polkit. El problema se ha mitigado en la versión 0.119, que se lanzó el 3 de junio pasado.

"La vulnerabilidad es sorprendentemente fácil de explotar. Todo lo que se necesita son unos pocos comandos en la terminal usando solo herramientas estándar como bash, kill y dbus-send", dijo Backhouse en un artículo, agregando que la falla es provocada por enviando un comando dbus-send (digamos, para crear un nuevo usuario) pero terminando el proceso mientras polkit todavía está en medio de procesar la solicitud.

"dbus-send" es un mecanismo de comunicación entre procesos (IPC) de Linux que se utiliza para enviar un mensaje al bus de mensajes D-Bus, lo que permite la comunicación entre varios procesos que se ejecutan simultáneamente en la misma máquina. El demonio de autoridad de políticas de Polkit se implementa como un servicio conectado al bus del sistema para autenticar las credenciales de forma segura. Al eliminar el comando, provoca una omisión de autenticación, porque polkit maneja mal el mensaje terminado y trata la solicitud como si proviniera de un proceso con privilegios de root (UID 0), autorizando así inmediatamente la solicitud.

"Para activar la ruta de código vulnerable, debe desconectarse en el momento adecuado", dijo Backhouse. "Y debido a que hay múltiples procesos involucrados, el tiempo de ese 'momento correcto' varía de una ejecución a la siguiente. Por eso, generalmente se necesitan algunos intentos para que el exploit tenga éxito. Supongo que también es la razón por la que el error no fue descubierto previamente".

Se anima a los usuarios a actualizar sus instalaciones de Linux lo antes posible para remediar cualquier riesgo potencial que surja de la falla.

Fuente: THN

Suscríbete a nuestro Boletín

0 Comments:

Publicar un comentario

Gracias por dejar un comentario en Segu-Info.

Gracias por comentar!