WallEscape en Linux ayuda a generar falsos SUDO y robar contraseñas

Iniciado por AXCESS, Marzo 30, 2024, 12:22:26 AM

Tema anterior - Siguiente tema

0 Miembros y 1 Visitante están viendo este tema.

No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

Una vulnerabilidad en el comando wall del paquete util-linux que forma parte del sistema operativo Linux podría permitir que un atacante sin privilegios robe contraseñas o cambie el portapapeles de la víctima.

Registrado como CVE-2024-28085, el problema de seguridad ha sido denominado WallEscape y ha estado presente en todas las versiones del paquete durante los últimos 11 años hasta la 2.40 lanzada ayer.

Aunque la vulnerabilidad es un ejemplo interesante de cómo un atacante puede engañar a un usuario para que proporcione su contraseña de administrador, es probable que la explotación se limite a ciertos escenarios.

Un atacante necesita tener acceso a un servidor Linux que ya tenga varios usuarios conectados al mismo tiempo a través del terminal, como una universidad donde los estudiantes pueden conectarse para realizar una tarea.

El investigador de seguridad Skyler Ferrante descubrió WallEscape, que se describe como un comando de "neutralización inadecuada de secuencias de escape en wall".

Explotación de WallEscape

WallEscape afecta el comando "wall", que normalmente se usa en sistemas Linux para transmitir mensajes a las terminales de todos los usuarios conectados al mismo sistema, como un servidor.

Debido a que las secuencias de escape se filtran incorrectamente cuando se procesan entradas a través de argumentos de línea de comando, un usuario sin privilegios podría explotar la vulnerabilidad usando caracteres de control de escape para crear un mensaje SUDO falso en las terminales de otros usuarios y engañarlos para que escriban su contraseña de administrador.

El problema de seguridad puede explotarse bajo ciertas condiciones. Ferrante explica que la explotación es posible si la utilidad "mesg" está activa y el comando wall tiene permisos setgid.

El investigador señala que ambas condiciones están presentes en Ubuntu 22.04 LTS (Jammy Jellyfish) y Debian 12.5 (Bookworm), pero no en CentOS.

Se ha publicado un código de explotación de prueba de concepto para WallEscape para demostrar cómo un atacante podría aprovechar el problema.

No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

Además de los detalles técnicos, Ferrante también incluye escenarios de explotación que podrían conducir a resultados distintos.

Un ejemplo describe los pasos para crear un mensaje sudo falso para el terminal Gnome para engañar al usuario para que escriba su contraseña.

Ferrante detalla que esto es posible creando un mensaje SUDO falso para el terminal Gnome para engañar al usuario para que escriba información confidencial como argumento de línea de comando.

Esto requiere algunas precauciones que son posibles usando el comando wall para pasar al objetivo un script que cambia su entrada en el terminal (color de primer plano, oculta la escritura, tiempo de suspensión) para que la solicitud de contraseña falsa pase como una solicitud legítima.

Para encontrar la contraseña, un atacante tendría que buscar en el archivo /proc/$pid/cmdline los argumentos del comando, que son visibles para usuarios sin privilegios en múltiples distribuciones de Linux.

Otro ataque sería cambiar el portapapeles de un usuario objetivo mediante secuencias de escape. El investigador destaca que este método no funciona con todos los emuladores de terminal, entre ellos Gnome.

"Dado que podemos enviar secuencias de escape a través de la pared, si un usuario utiliza un terminal que admita esta secuencia de escape, un atacante puede cambiar el portapapeles de la víctima a texto arbitrario", detalla Ferrante.

El investigador proporciona en el informe de vulnerabilidad el código de demostración para establecer la trampa y ejecutar el ataque y también explica cómo funciona para ambos escenarios de explotación.

No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

Vale la pena señalar que la explotación de WallEscape depende del acceso local (físico o remoto a través de SSH), lo que limita su gravedad.

El riesgo proviene de usuarios sin privilegios con acceso al mismo sistema que la víctima en entornos multiusuario como el servidor de una organización.

Se recomienda a los usuarios que actualicen a linux-utils v2.40 para corregir la vulnerabilidad. Normalmente, la actualización está disponible a través del canal de actualización estándar de la distribución de Linux en el administrador de paquetes, pero podría haber algún retraso.

Los administradores del sistema pueden mitigar CVE-2024-28085 inmediatamente eliminando los permisos setgid del comando "wall" o deshabilitando la funcionalidad de transmisión de mensajes usando el comando "mesg" para establecer su indicador en "n".

Fuente:
BleepingComputer
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
No tienes permitido ver los links. Registrarse o Entrar a mi cuenta