Page cover

🐧Servicios vulnerables

Se pueden encontrar muchos servicios que tienen fallas que se pueden aprovechar para escalar privilegios. Un ejemplo es el popular multiplexor de terminal Screen . La versión 4.5.0 sufre una vulnerabilidad de escalada de privilegios debido a la falta de una verificación de permisos al abrir un archivo de registro.

Identificación de la versión de Screen

afsh4ck@kali$ screen -v

Screen version 4.05.00 (GNU) 10-Dec-16

Esto permite a un atacante truncar cualquier archivo o crear un archivo propiedad de la raíz en cualquier directorio y, en última instancia, obtener acceso completo a la raíz.

Escalada de privilegios - Screen_Exploit.sh

afsh4ck@kali$ ./screen_exploit.sh 

~ gnu/screenroot ~
[+] First, we create our shell and library...
[+] Now we create our /etc/ld.so.preload file...
[+] Triggering...
' from /etc/ld.so.preload cannot be preloaded (cannot open shared object file): ignored.
[+] done!
No Sockets found in /run/screen/S-mrb3n.

# id
uid=0(root) gid=0(root) groups=0(root),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),110(lxd),115(lpadmin),116(sambashare),1000(mrb3n)

El siguiente script se puede utilizar para realizar este ataque de escalada de privilegios:

Explotación de Screen_Exploit_POC.sh


Caso práctico

Conéctese al sistema de destino y aumente los privilegios mediante el exploit Screen. Envíe el contenido del archivo flag.txt en el directorio /root/screen_exploit.

Al acceder por SSH comprobamos la versión de screen, la cual es vulnerable:

  1. Abrimos un server con python en nuestra máquina atacante en el directorio de nuestro exploit

  2. Con wget nos descargamos el archivo

  3. Le damos permisos con chmod +x y ejecutamos el exploit

  4. Ya somos root!

Ahora accedemos al directorio /root/screen_exploit y nos hacemos con la flag:

Última actualización

¿Te fue útil?