Escape – Writeup (Vulnlab)

NMAP
Para mi sorpresa, solo encontramos el puerto 3389/TCP disponible, lo cual es inusual ya que generalmente se espera encontrar más puertos abiertos en un sistema. Este puerto es conocido por ser utilizado para conexiones de escritorio remoto, lo que nos da una pista sobre cómo podríamos interactuar con el sistema.
PORT STATE SERVICE REASON
3389/tcp open ms-wbt-server syn-ack ttl 127
PORT 3389/TCP
Dado que el puerto 3389 está abierto, decidimos aprovecharlo para establecer una conexión de escritorio remoto. En mi caso, utilizo xfreerdp en Arch Linux para conectarme.
xfreerdp /v: < IP > -sec-nla -tls-seclevel:0
Ni bien logueamos nos encontramos con la siguiente pantalla:

- Al parecer el user login es KioskUser0 sin contraseña.
Login como KioskUser0
Al ingresar con el usuario KioskUser0, nos damos cuenta de que el entorno está bastante restringido. Todo parece estar bloqueado, lo que refuerza la idea de que estamos en un entorno de quiosco. Sin embargo, el nombre de la máquina, 'escape', sugiere que hay una forma de sortear estas restricciones.

Dentro de la carpeta _admin/, encontramos archivos de configuración del Remote Desktop Plus. Estos archivos parecen contener configuraciones para el perfil de administrador, pero la contraseña está encriptada, lo que representa un desafío adicional.


ProfileName -> admin
Username -> 127.0.0.1
Password -> JWqkl6IDfQxXXmiHIKIP8ca0G9XxnWQZgvtPgON2vWc=
USER FLAG
Explorando el escritorio del usuario KioskUser0, encontramos la flag de usuario. Este es un paso importante en nuestro progreso, ya que confirma que estamos en el camino correcto.

ROOT FLAG
Después de varios intentos de interactuar con el sistema, nos damos cuenta de que la única aplicación que podemos ejecutar libremente es Microsoft Edge. Esto nos lleva a la idea de que podríamos renombrar el intérprete de comandos, como “cmd.exe” o “powershell.exe”, para que se ejecute como si fuera el navegador.
En la barra de direcciones me dirijo directamente al path donde esta el cmd.exe:
C:\Windows\system32\cmd.exe

Lo renombramos a “msdege”. Al hacerlo, el icono cambia al del navegador, lo que nos permite ejecutarlo. Con el intérprete de comandos abierto, podemos intentar descifrar la contraseña que encontramos anteriormente.

Descargo el BulletPassView
Utilizamos BulletPassView para revelar la contraseña sin necesidad de un método de crackeo complejo. Importamos el archivo profiles.xml desde la ubicación C:_admin al Remote Desktop Plus y luego ejecutamos BulletPassView para obtener la contraseña.
C:\Program Files (x86)\Remote Desktop Plus
Y luego importamos el archivo profile.xml.



A su vez ejecutamos el BulletPassView y nuestro password sera revelado:

- Twisting3021
RUNAS like admin
Con la contraseña revelada, podemos ejecutar el comando runas desde PowerShell para abrir una nueva sesión como administrador.

Verificando con whoami /all vemos todo los privilegios que tenemos, los cuales somos administradores localmente. Abrimos una nueva powershell.exe esta vez con privilegios elevados:
start-process powershell.exe -Verb runas
Finalmente podemos obtener la root flag.

Pwn3d!
shkz.






