Vaccine
Last updated
Last updated
Nivel de Dificultad: Muy fácil.
Tags:
• Vulnerability Assessment: Evaluación sistemática para identificar y clasificar vulnerabilidades en sistemas, aplicaciones o redes. • Databases: Repositorios estructurados de datos que pueden ser vulnerables a ataques como SQL injection. • Custom Applications: Aplicaciones desarrolladas a medida que pueden contener vulnerabilidades específicas no presentes en aplicaciones comerciales. • Protocols: Conjuntos de reglas que permiten la comunicación entre dispositivos, los cuales pueden ser explotados si contienen fallos. • Source Code Analysis: Revisión del código fuente para identificar errores o vulnerabilidades de seguridad. • PostgreSQL: Sistema de gestión de bases de datos que puede ser explotado mediante ataques como SQL injection. • FTP: Protocolo de transferencia de archivos que puede exponer credenciales si no se implementa de manera segura. • Password Cracking: Técnica de descifrado de contraseñas mediante ataques de fuerza bruta o diccionario. • SUDO Exploitation: Aprovechamiento de configuraciones inseguras de SUDO para escalar privilegios en un sistema. • SQL Injection: Inyección de código malicioso en consultas SQL para manipular bases de datos y extraer información. • Remote Code Execution: Ejecución de código malicioso de manera remota en un sistema comprometido. • Clear Text Credentials: Exposición de credenciales sin cifrado, lo que facilita su robo en tránsito. • Anonymous/Guest Access: Permitir acceso sin autenticación o con credenciales por defecto, facilitando ataques.
Nos descargamos nuestra VPN y nos conectamos.
Iniciamos la máquina y verificamos la conexión.
Observamos que tenemos conexión y que es una máquina Linux ya que su ttl=63.
A continuación, se realiza el comando:
para realizar un escaneo de puertos y servicios detallado en la dirección IP.
Como podemos observar durante el escaneo que el puerto 21 perteneciente al servicio FTP, el puerto 22 perteneciente al servicio SSH y el puerto 80 perteneciente al servicio HTTP están abiertos por lo que a continuación se indagará más.
Primero, accedemos a un servidor FTP utilizando el usuario anonymous
. Esto nos permite descargar un archivo que probablemente está protegido con contraseña.
El archivo descargado está protegido con una contraseña. Por lo tanto, necesitamos una herramienta como John the Ripper para obtener dicha contraseña.
John the Ripper es una herramienta muy útil para romper contraseñas de archivos protegidos. Vamos a usarlo en conjunto con zip2john
, que convierte el archivo comprimido en un formato que John pueda procesar.
Ahora que tenemos la contraseña, podemos descomprimir el archivo protegido.
Mostramos el contenido del archivo index.php
en el que se nos indica el nombre del usuario y su contraseña aunque en formato MD5.
A través de esta página desciframos la contraseña https://www.dcode.fr/funcion-hash-md5
Accedemos con las credenciales obtenidas en los pasos anteriores.
Obtenemos el valor de la cookie de cualquier coche.
No hace falta probar más campos si hemos encontrado ya uno que no es ejecutable. Por lo que usamos una reverse shell.
Tras conseguir la reverse shell y así poder acceder mostramos el contenido del fichero dashboard.php
en el que se nos muestra un usuario y una contraseña.
Vemos que podemos usar vi con permisos de root. Accedemos al directorio /var/lib/postgresql
en el que encontramos la flag del usuario.
Accedemos a través de SSH al usuario con sus credenciales.
Debemos de modificar el archivo de configuración utilizando vi.
Observamos está página https://gtfobins.github.io/gtfobins/vi/. Una vez en vi, presiona escape y luego escribe :!/bin/bash
.
Accedemos al directorio de root en el que contiene la bandera de root.
FTP
Este servicio adicional disponible en el servidor es FTP, utilizado comúnmente para la transferencia de archivos.
anonymous
El servicio FTP se puede configurar para permitir el acceso sin autenticación real para el usuario anonymous
.
backup.zip
Este archivo, backup.zip
, fue descargado utilizando el servicio FTP y contiene datos potencialmente importantes.
zip2john
El script zip2john
convierte el archivo ZIP protegido en un formato adecuado para que John The Ripper pueda intentar descifrar la contraseña.
qwerty789
La contraseña para el usuario administrador es qwerty789
, y proporciona acceso a funciones administrativas en el sitio.
--os-shell
La opción --os-shell
de sqlmap
se utiliza para intentar obtener una shell a través de una vulnerabilidad de inyección SQL.
vi
El usuario postgres
puede ejecutar el editor vi
con privilegios de root mediante sudo
, lo que podría permitir la escalada de privilegios.
ec9b13ca4d6229cd5cc1e09980965bf7
dd6e058e814260bc70e9bbdef2715849