Remote

Publicado: 16 de Junio de 2025 Autor: Josรฉ Miguel Romero aKa x3m1Sec Dificultad: โญ Easy
๐ Descripciรณn
Remote es una mรกquina Windows de dificultad Easy que presenta mรบltiples vectores de ataque interesantes. La mรกquina ejecuta un CMS Umbraco vulnerable y expone servicios como FTP anรณnimo, SMB y NFS. El acceso inicial se logra a travรฉs de la enumeraciรณn del servicio NFS que expone backups del sitio web, permitiendo extraer credenciales del CMS. Una vez autenticado en Umbraco, se explota una vulnerabilidad de RCE para obtener una shell. La escalada de privilegios se puede realizar mediante el abuse del token SeImpersonatePrivilege usando RoguePotato, o alternativamente explotando credenciales almacenadas de TeamViewer.
๐ญ Reconocimiento
๐ Ping para verificaciรณn en base a TTL
๐ก Nota: El TTL cercano a 128 sugiere que probablemente sea una mรกquina Windows.
๐ Escaneo de puertos
๐ ๏ธ Enumeraciรณn de servicios
๐ฏ Enumeraciรณn de Servicios
๐ HTTP (Puerto 80)
Encontramos un sitio web que parece ser una tienda que estรก empleando el CMS Umbraco:


๐จ Fuzzing de directorios
Realizamos fuzzing con gobuster y encontramos algunos recursos interesantes:

๐ช Panel de administraciรณn
El recurso Install nos redirige a un panel de administraciรณn del CMS:
http://10.10.10.180/umbraco/#/login

### ๐ SMB (Puerto 445)
๐ Sesiรณn nula SMB

โ Resultado: No obtenemos nada, parece que no estรก habilitada la sesiรณn anรณnima de SMB
๐๏ธ NFS (Puerto 2049)
๐ Enumeraciรณn de recursos compartidos
Listamos acciones disponibles sobre el servicio NFS:
Encontramos un recurso llamado /site-backups

๐พ Montaje y exploraciรณn
Creamos un directorio donde montar el recurso en nuestro host de ataque y lo exploramos:
๐ Anรกlisis: Se trata de una copia de seguridad completa del sitio web que estรก empleando el CMS Umbraco.
๐ Bรบsqueda de credenciales

๐๏ธ Base de datos: Las credenciales se estรกn guardando en el fichero Umbraco.sdf, que es un archivo binario. Lo analizamos con strings:
Podemos ver que se trata de una copia de seguridad completa del sitio web que hemos enumerado anteriormente que estรก empleando el CMS Umbraco. Revisamos a ver si encontramos alguna credencial:

Las credenciales se estรกn guardando en el fichero Umbraco.sdf, el problema es que este fichero es un binario, asรญ que necesitamos intentar leerlo de la siguiente forma:

๐ฏ Credenciales encontradas:
Usuario:
admin@htb.localHash SHA-1:
b8be16afba8c314ad33d812f22a04991b90e2aaa
Intenteamos crackear el hash con hashcat usando el diccionario rockyou:

โ
Credenciales vรกlidas: admin@htb.local:baconandcheese
๐ Explotaciรณn Inicial
๐ Acceso al panel de Umbraco

๐ Identificaciรณn de la versiรณn

๐จ Vulnerabilidad detectada: Esta versiรณn es vulnerable a Remote Code Execution
Exploit pรบblico disponible: https://www.exploit-db.com/exploits/46153
Modificamos el exploit para que el payload sea una reverse shell mediante una conexiรณn powershell codificada en base64
๐ฏ Ejecuciรณn del exploit

Capturamos la flag del usuario Public

๐ Escalada de Privilegios
๐ก๏ธ Enumeraciรณn de privilegios
Revisamos los privilegios de nuestro usuario actual:

๐ฏ Privilegio clave: Tenemos SeImpersonatePrivilege, perfecto para usar exploits tipo Potato.
โ ๏ธ Nota importante: Es Windows Server 2019, por lo que JuicyPotato no funcionarรก, pero RoguePotato o JuicyPotatoNG sรญ.

https://github.com/antonioCoco/RoguePotato/releases
๐ฅ Mรฉtodo 1: RoguePotato
Descargamos una copia de RoguePotato.exe y lo disponibilizamos en nuestro host de ataque a travรฉs de un servidor web en python:
Lo transferimos al host que intentamos comprometer
Descargamos el script de powershell de nishang:
https://github.com/samratashok/nishang/blob/master/Shells/Invoke-PowerShellTcp.ps1
Lo editamos y aรฑadimos al final del todo nuestro payload para la conexiรณn reversa indicando nuestro host de ataque y el puerto. Haremos que tambiรฉn estรฉ disponible en nuestro servidor web en python.

A continuaciรณn iniciaremos socat, en nuestro host de ataque para que escuche en el puerto 135 y redireccione al puerto TCP 9999:
A continuaciรณn iniciamos un listener en nuestro host de ataque en el puerto 443:
Por รบltimo ejecutamos el exploit en el host vรญctima de la siguiente forma:

Tal como se ve en la imagen anterior, el exploit se ejecuta correctamente y ejecuta el payload de la shell de nishang que hemos modificado para que se conecte a nuestro host de ataque ganando privilegios como usuario NT:
Finalmente capturamos la flag:

Enlace de referencia:https://0xdf.gitlab.io/2020/09/08/roguepotato-on-remote.html
๐ญ Mรฉtodo Alternativo: TeamViewer
๐ Enumeraciรณn de servicios
Cuando ganamos acceso inicial, enumeramos servicios en ejecuciรณn:

๐จ Vulnerabilidad identificada
CVE-2019-18988: Esta versiรณn es vulnerable y existe un mรณdulo de Metasploit.
Pero antes, deberemos ganar una sesiรณn de meterpreter, para ello podemos generar un payload con msfvenom, transferirlo a la vรญctima y ejecutarlo
๐๏ธ Configuraciรณn de Metasploit
๐ Generaciรณn de payload Meterpreter
๐ Extracciรณn de credenciales

Ahora podrรญamos validarlas haciendo lo siguiente:
![[Writeups/HTB/Road to OSCP/Lainkusanagi OSCP/Remote/24.png]]
Last updated