NetMon

Publicado: 09 de Junio de 2025 Autor: Josรฉ Miguel Romero aKa x3m1Sec Dificultad: โญ Easy

๐Ÿ“ Descripciรณn

NetMon es una mรกquina de dificultad Easy de HackTheBox que ejecuta Windows Server. La mรกquina presenta un servicio FTP con acceso anรณnimo habilitado que permite acceder al sistema de archivos completo, facilitando la obtenciรณn de la flag de usuario. Para la escalada de privilegios, se explota una vulnerabilidad de ejecuciรณn remota de comandos autenticada en PRTG Network Monitor 18.1.37.13946, lo que permite crear un usuario administrador y obtener acceso completo al sistema.

La mรกquina enseรฑa conceptos importantes como la enumeraciรณn de servicios FTP, anรกlisis de archivos de configuraciรณn, password guessing basado en patrones, y explotaciรณn de aplicaciones web empresariales.

๐Ÿ”ญ 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 TCP

Enumeraciรณn de servicios


๐Ÿšช Enumeraciรณn de Servicios

๐Ÿ—‚๏ธ 21 FTP

La enumeraciรณn con nmap nos muestra que la autenticaciรณn anรณnima estรก habilitada en el servicio FTP.

Para poder enumerar de una manera mas comoda los archivos mediante ftp, vamos a crearnos una montura con la herramienta curlftpfs.

Encontramos y descargamos la primera flag del directorio Desktop del perfil del usuario Public:

๐ŸŒ 445 SMB

Dado que no tenemos credenciales, intentamos enumerar informaciรณn mediante sesiรณn anรณnima pero no parece estar habilitada. No hay mucho que rascar aquรญ.

๐ŸŒ 80 HTTP ( PRTG Network Monitor 18.1.37.13946 )

Accedemos a http://10.10.10.152/ y encontramos un servicio llamado PRTG Network Monitor

PRTG Network Monitor ==es un software de monitorizaciรณn de redes que permite supervisar el rendimiento y la disponibilidad de la infraestructura de TI==. Esta herramienta de Paesslerarrow-up-right es utilizada para monitorizar dispositivos como servidores, routers, switches, aplicaciones y servicios, asรญ como mรฉtricas como la salud, la disponibilidad, el trรกfico y el ancho de banda

Buscando informaciรณn pรบblica encontramos que las credenciales por defecto de esta aplicaciรณn son:

  • Username: prtgadmin

  • Password: prtgadmin

Pero no parecen funcionar en esta ocasiรณn.

Fuzzing de directorios

Realizamos fuzzing de directorios contra el puerto 80 pero en este caso no encontramos nada.

๐Ÿ” Anรกlisis de Configuraciรณn

Aprovechando que tenemos acceso a la mรกquina a travรฉs de la sesiรณn anรณnima FTP. Buscamos informaciรณn sobre el servicio PRTG Network Monitor y posibles rutas de interรฉs donde guarda archivos de configuraciรณn:

https://kb.paessler.com/en/topic/463-how-and-where-does-prtg-store-its-data

๐Ÿ” Obtenciรณn de Credenciales

Es bastante contenido, por lo que podemos descargarlo a nuestro host de ataque y analizarlo detenidamente:

Podemos intentar jugar con grep y algunas expresiones para filtrar por cadenas como "password"

Los siguientes archivos parecen contener la palabra "password". Encontramos unas credenciales en el archivo PRTG Configuration.old.bak

Probamos estas credenciales en el servicio pero no funcionan:

Podemos tratar de hacer "guessing" y dado que el final de la contraseรฑa coincide con el aรฑo, podemos ir probando otros aรฑos para ver si tenemos suerte:

Y logramos acceder al aplicativo y ademรกs enumeramos la versiรณn

๐Ÿ’ฅ Explotaciรณn

Buscamos exploits pรบblicos y encontramos uno que nos permite explotar una ejecuciรณn remota de comandos autenticada.

Mรฉtodo 1 - Usando Exploit pรบblico

Dado que ahora tenemos credenciales, usaremos este exploit.

El script nos pide indicar la url del servicio y una cookie para llevar a acabo la explotaciรณn logrando asรญ crear un usuario en el grupo de administradores llamado pentest cuya contraseรฑa serรก P3nT3st!

Una vez autenticados en Network Monitor podemos usar por ejemplo la extensiรณn Cookie Editor para copiar la cookie en formato Header String:

De tal forma que el comando para ejecutar el exploit nos quedarรญa asรญ:

Mรฉtodo 2 - Explotaciรณn Manual

Navegamos a siguiente opciรณn: Setup -> Accounts Settings -> Notifications

Hacemos scroll hasta abajo y habilitamos la opciรณn Execute Program y especificamos el siguiente payload para la inyecciรณn:

Una vez guardada la notificaciรณn. Volvemos atrรกs a la lista de notificaciones, seleccionamos la nuestra y hacemos click en el botรณn de la campana:

๐Ÿ† Post-Explotaciรณn

Esperamos unos segundos y ahora ya deberemos confirmar que ha ido bien probando la nueva cuenta de administrador con el servicio SMB:

Usamos impacket para ganar acceso a la mรกquina con la nueva cuenta que hemos creado y obtenemos la flag:

Last updated