Controler Vulnyx (Intermediate - Windows)

Escaneo de puertos

nmap -p- --open -sS --min-rate 5000 -vvv -n -Pn <IP>
nmap -sCV -p<PORTS> <IP>

Info:

Starting Nmap 7.95 ( https://nmap.org ) at 2025-08-04 03:35 EDT
Nmap scan report for 192.168.5.71
Host is up (0.044s latency).

PORT      STATE SERVICE       VERSION
53/tcp    open  domain        Simple DNS Plus
88/tcp    open  kerberos-sec  Microsoft Windows Kerberos (server time: 2025-08-04 16:35:09Z)
135/tcp   open  msrpc         Microsoft Windows RPC
139/tcp   open  netbios-ssn   Microsoft Windows netbios-ssn
389/tcp   open  ldap          Microsoft Windows Active Directory LDAP (Domain: control.nyx0., Site: Default-First-Site-Name)
445/tcp   open  microsoft-ds?
464/tcp   open  kpasswd5?
593/tcp   open  ncacn_http    Microsoft Windows RPC over HTTP 1.0
636/tcp   open  tcpwrapped
3268/tcp  open  ldap          Microsoft Windows Active Directory LDAP (Domain: control.nyx0., Site: Default-First-Site-Name)
3269/tcp  open  tcpwrapped
5985/tcp  open  http          Microsoft HTTPAPI httpd 2.0 (SSDP/UPnP)
|_http-server-header: Microsoft-HTTPAPI/2.0
|_http-title: Not Found
9389/tcp  open  mc-nmf        .NET Message Framing
47001/tcp open  http          Microsoft HTTPAPI httpd 2.0 (SSDP/UPnP)
|_http-server-header: Microsoft-HTTPAPI/2.0
|_http-title: Not Found
49664/tcp open  msrpc         Microsoft Windows RPC
49665/tcp open  msrpc         Microsoft Windows RPC
49666/tcp open  msrpc         Microsoft Windows RPC
49667/tcp open  msrpc         Microsoft Windows RPC
49671/tcp open  msrpc         Microsoft Windows RPC
49676/tcp open  ncacn_http    Microsoft Windows RPC over HTTP 1.0
49677/tcp open  msrpc         Microsoft Windows RPC
49678/tcp open  msrpc         Microsoft Windows RPC
49683/tcp open  msrpc         Microsoft Windows RPC
49690/tcp open  msrpc         Microsoft Windows RPC
49697/tcp open  msrpc         Microsoft Windows RPC
49710/tcp open  msrpc         Microsoft Windows RPC
MAC Address: 08:00:27:5E:5C:F4 (PCS Systemtechnik/Oracle VirtualBox virtual NIC)
Service Info: Host: CONTROLER; OS: Windows; CPE: cpe:/o:microsoft:windows

Host script results:
|_nbstat: NetBIOS name: CONTROLER, NetBIOS user: <unknown>, NetBIOS MAC: 08:00:27:5e:5c:f4 (PCS Systemtechnik/Oracle VirtualBox virtual NIC)
|_clock-skew: 9h00m01s
| smb2-security-mode: 
|   3:1:1: 
|_    Message signing enabled and required
| smb2-time: 
|   date: 2025-08-04T16:36:03
|_  start_date: N/A

Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 70.78 seconds

Veremos varios puertos interesantes, entre ellos veremos un dominio que seria el DC llamado control.nyx0, por lo que vamos a realizar un poco de fuzzing.

LDAP

Vamos a ver si LDAP permite consultar anonimas de esta forma:

Info:

Veremos que ha funcionado, por lo que vamos a seguir investigando por esta via a ver que encontramos de informacion sensible.

Info:

Pero si leemos dichos archivos no veremos nada interesante, ya que la version anonima no llega a tanto, por lo que vamos a intentar en el puerto 88 de Kerberos a ver si realizando fuerza bruta de usuarios, vemos alguno valido.

Kerberos

La wordlist con la que vamos a probar esta en esta pagina de aqui:

URL = Wordlist kerberos

Ya que son nombres comunes que podrian estar en dicho dominio de la A-Z.

Info:

Ahora que tenemos un usuario valido, vamos a jugar con el para intentar obtener su hash o contraseña.

GetNPUsers

Si intentamos realizar un kerberoasting para intentar obtener los hashes de dicho usuarios, veremos que uno de ellos es vulnerable al mismo.

Info:

Vemos que en el usuario B.LEWIS ha funcionado, por lo que intentaremos crackear dicha contraseña del hash.

hash.kerberos

Ahora vamos a crackearlo de esta forma:

Info:

Veremos que lo hemos echo de forma correcta, por lo que vamos a probar a enumetar el SAMBA o intentar entrar por WinRM a ver cuales funciona.

Escalate user j.levy

enum4linux

Por WinRM no va, pero si probamos a enumerar de forma global el SAMBA veremos lo siguiente:

Info:

Veremos cosas interesantes, entre ellas veremos un usuario que no conociamos que esta activado llamado j.levy en esta linea:

Vamos a probar a realizar fuerza bruta con dicho usuario con netexec a ver que vemos.

Primero vamos a limpiar el diccionario del rockyou.txt de esta forma:

Ahora si vamos a realizar la fuerza bruta:

Info:

Veremos que hemos encontrado la contraseña de dicho usuario, por lo que vamos a intentar obtener una shell con WinRM de esta forma.

evil-winrm

Info:

Por lo que vemos ha funcionado, vamos a leer la flag del usuario.

user.txt

Escalate Privileges

Si listamos los privilegios veremos lo siguiente:

Info:

Vemos una linea interesante que es la siguiente:

Con esto lo que podemos hacer es lo siguiente:

SeMachineAccountPrivilege

Clave para escalar privilegios: Este privilegio permite crear máquinas en el dominio (por defecto, hasta 10).

Se podria hacer...

  • Crear una máquina con SPN.

  • Asociarla a un usuario (como tú).

  • Hacer un ataque de Kerberoasting o incluso AS-REP roasting si configuras mal el SPN.

  • Herramienta útil: Powermad o su equivalente en Python.

Nos lo descargamos al kali y nos lo pasamos al windows mediante este comando.

Info:

Ahora vamos a crear dicha maquina mal configurada...

Info:

Si probamos a dumpearnos mediante esta maquina la informacion no va a funcionar, por lo que vamos a utilizar BloodHound para poder enumerar de mejor forma la informacion.

Vamos a descargarnos un script para que nos haga en .zip toda la informacion del DC de esta forma:

Lo descomprimimos con zip SharpHound_v2.7.0_windows_x86.zip.

Ahora desde el windows:

Cuando haya terminado, hacemos esto:

Teniendo el archivo en el kali abriremos la herramienta BloodHound poniendo simplemente lo siguiente:

Se nos abrira el navegador, meteremos las credenciales que establecimos cuando instalamos bloodhound, si no instalarlo haciendo eso mismo, una vez dentro, importaremos el archivo .zip, con esto lo que hara sera cargar los datos de todo el DC que ha recopilado.

Ahora que sabemos que el usuario j.levy tiene los permisos AllExtendedRights podremos dumpearnos los secretos del DC de esta forma:

Info:

Vemos que ha funcionado, por lo que vamos a guardar el hash del administrador e intentar crackearlo a ver si podemos, pero no sera el caso por lo que haremos un Pass-The-Hash de esta forma:

Info:

Veremos que ha funcionado y estaremos dentro, por lo que leeremos la flag de root.

root.txt

Last updated