Información de la máquina.
Contenido | Descripción |
---|---|
OS: | |
Dificultad: | Facil |
Puntos: | 20 |
Lanzamiento: | 29-Septiembre-2018 |
IP: | 10.10.10.98 |
Primera sangre de usuario: | m0noc |
Primera sangre de system: | phra |
Creadores: | egre55 |
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
intrusionz3r0@kali:~$ nmap -p- --open -T5 -n -oG nmapScanAllPorts access.htb --min-rate 2000
Starting Nmap 7.80 ( https://nmap.org ) at 2020-09-08 13:35 CDT
Nmap scan report for access.htb (10.10.10.98)
Host is up (0.14s latency).
Not shown: 65532 filtered ports
Some closed ports may be reported as filtered due to --defeat-rst-ratelimit
PORT STATE SERVICE
21/tcp open ftp
23/tcp open telnet
80/tcp open http
Nmap done: 1 IP address (1 host up) scanned in 65.89 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. |
–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
intrusionz3r0@kali:~$ nmap -sCV -p21,23,80 -oN targeted access.htb
Nmap scan report for access.htb (10.10.10.98)
Host is up (0.13s latency).
PORT STATE SERVICE VERSION
21/tcp open ftp Microsoft ftpd
| ftp-anon: Anonymous FTP login allowed (FTP code 230)
|_Can't get directory listing: PASV failed: 425 Cannot open data connection.
| ftp-syst:
|_ SYST: Windows_NT
23/tcp open telnet?
80/tcp open http Microsoft IIS httpd 7.5
| http-methods:
|_ Potentially risky methods: TRACE
|_http-server-header: Microsoft-IIS/7.5
|_http-title: MegaCorp
Service Info: OS: Windows; CPE: cpe:/o:microsoft:windows
Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
# Nmap done at Tue Sep 8 11:22:25 2020 -- 1 IP address (1 host up) scanned in 182.81 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. |
Enumeración FTP.
Debido a que el puerto FTP tiene el usuario Anonymous habilitado comenzaremos a enumerarlo.
Podemos hacerlo de varias maneras.
Método 1: normal.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
intrusionz3r0@kali:~$ ftp access.htb
Connected to access.htb.
220 Microsoft FTP Service
Name (access.htb:intrusionz3r0): Anonymous
331 Anonymous access allowed, send identity (e-mail name) as password.
Password:
230 User logged in.
Remote system type is Windows_NT.
ftp> dir
200 PORT command successful.
125 Data connection already open; Transfer starting.
08-23-18 09:16PM <DIR> Backups
08-24-18 10:00PM <DIR> Engineer
226 Transfer complete.
ftp>
Método 2: wget.
Podemos descargarnos el contenido del FTP utilizando la herramienta wget
.
1
intrusionz3r0@kali:~$ wget --no-passive --no-parent -r ftp://Anonymous:loquesea@access.htb
Método 3: curlftpfs.
También se puede montar los recursos del servicio FTP utilizando la herramienta curlftpfs
.
1
2
intrusionz3r0@kali:~$ sudo mkdir /mnt/HTB/Access
intrusionz3r0@kali:~$ curlftpfs Anonymous:loquesea@access.htb /mnt/HTB/Access
Yo usare el segundo método.
Una vez descargado los archivos del servicio FTP comienzo a enumerar el directorio.
1
2
3
4
5
6
7
8
intrusionz3r0@kali:~$ tree
.
├── Backups
│ └── backup.mdb
└── Engineer
└── Access Control.zip
2 directories, 2 files
Nos encontramos con dos archivos, un .zip
y un .mbd
.
Para acceder a los archivos del Access Control.zip
necesitamos una contraseña por lo que toda mi atención se la llevo el archivo backup.mdb
.
Ejecuto el comando file
para obtener información sobre el tipo de archivo.
1
2
intrusionz3r0@kali:~$ file backup.mdb
backup.mdb: Microsoft Access Database
Esto nos retorna que el archivo es un backup de una base de datos de access.
Como no quiero pasar el archivo a mi máquina de Windows optare por utilizar un Visor online de bases de datos Access.
La tabla que mas destaca es auth user
.
Dentro almacena unas credenciales.
Rápidamente regreso al archivo .zip
y descomprimo los archivos con la contraseña: access4u@security
.
Esto nos retorna un archivo con extensión .pst
y nuevamente utilizo el comando file
para obtener información sobre el tipo de archivo.
1
2
intrusionz3r0@kali:~$ file Access\ Control.pst
Access Control.pst: Microsoft Outlook email folder (>=2003)
Podemos observar que es una Carpeta de correo electrónico de Microsoft Outlook
.
Para saber como abrir este tipo de archivos debes realizar búsquedas en Google con palabras clave.
Por ejemplo:
Esto nos devuelve algunos resultados entre los cuales destaca una herramienta llamada readpst
que viene incluida en kali linux.
Abro una terminal y ejecuto el siguiente comando:
1
2
3
4
intrusionz3r0@kali:~$ readpst Access\ Control.pst
Opening PST file and indexes...
Processing Folder "Deleted Items"
"Access Control" - 2 items done, 0 items skipped.
Lo que da como resultado un documento llamado Access Control.mbox
que dentro contiene unas credenciales.
Credenciales: security:4Cc3ssC0ntr0ller
Ahora nuestra tarea es averiguar donde usar estas credenciales.
Enumeración TELNET.
Intente conectarme con TELNET
con las credenciales encontradas y efectivamente fueron validas para este servicio.
Con el usuario actual podemos tomar nuestra prestigiosa flag de usuario.
Shell como Administrador.
Enumerando un poco dentro de la máquina en el directorio de C:\Users\Public\Desktop
encontré un archivo llamado ZKAccess3.5 Security System.lnk
.
1
2
3
4
5
6
7
8
C:\Users\Public\Desktop>type "ZKAccess3.5 Security System.lnk
LF@ 7#P/PO :+00/C:\R1M:Windows:M:*wWindowsV1MVSystem32:MV*System32X2P:
runas.exe:1:1*Yrunas.exeL-KEC:\Windows\System32\runas.exe#..\..\..\Windows\System32\runas.exeC:\ZKTeco\ZKAccess3.5G/user:ACCESS\Administrator /savecred "C:\ZKTeco\ZKAccess3.5\Access.exe"'C:\ZKTeco\ZKAccess3.5\img\AccessNET.ico%SystemDrive%\ZKTeco\ZKAccess3.5\img\AccessNET.ico%SystemDrive%\ZKTeco\ZKAccess3.5\img\AccessNET.ico%
wN]ND.Q`Xaccess_8{E3
Oj)H
)ΰ[_8{E3
Oj)H
)ΰ[ 1SPSXFL8C&me*S-1-5-21-953262931-566350628-63446256-500
Dentro encontramos lo que parece ser la ejecución del binario de runas.exe
que es un binario que permite la ejecución de programas como otro usuario y si observamos bien vemos que este fue ejecutado por el administrador sin proporcionar una contraseña gracias al parámetro /savecreed
.
La escalada a Administrador va a ser muy sencilla ya que nos montaremos un servidor con samba que comparta el binario de nc.exe
para que con runas nos enviemos una reverse shell como el usuario administrador.
¡¡Somos Administradores!!
Espero te haya gustado, recuerda seguirme en mis redes sociales para estar al pendiente de todo mi contenido.