Crear Entorno Vulnerable en Nube Local (Docker)
Instalación Docker
Primero instalaremos docker
:
Despues vamos a cargar la imagen de ubuntu
con la ultima version:
Ahora tendremos que ver en que ID
de contenedor esta para meternos con una shell
dentro del mismo.
Cogeremos unicamente los 3
primeros numeros de del IMAGE ID
por ejemplo si fuera 03a
haremos lo siguiente:
Y con esto tendremos una shell
dentro del docker
, ahora vamos actualizarlo de esta forma:
Echo todo esto, podremos pasar a la instalacion del entorno vulnerable de una nube
de forma local.
Instalación de los requisitos
Vamos a instalar todos los requisitos necesarios para realizar la instalacion de la nube
local.
Instalado todo, vamos a iniciar el servidor configurando el usuario con sus credenciales para la nube
local.
Inicio del servidor de la nube local
Una vez con el servidor iniciado, vamos a configurar a nivel local
las variables que vamos a necesitar para manipular dicho servidor:
Variables de configuracion local para la nube
Echo esto nos metera en un entorno de configuracion pidiendo los datos de los cuales hemos configurado anteriormente al iniciar el servidor.
Configurado esto, ya podremos interactuar con la nube
local, por ejemplo vamos a crear una politica
para el bucket
el cual tambien vamos a crear, para que sea vulnerable.
Crear un bucket para la nube local
EJEMPLO:
Con esto ya habremos creado el bucket
por lo que vamos a configurarle una politica que permita que cualquier usuario de la nube local puede enumerar las politicas y se puede descargar cualquier archivo de dicho bucket
.
Creacion de politica vulnerable
public-policy.json
EJEMPLO CON EL NOMBRE:
Ahora una vez creado el archivo que cargaremos desde el /tmp
lo cargaremos con este comando:
Una vez echo esto, podemos cargar algun archivo de prueba que tenga credenciales de usuarios o cualquier cosa, por ejemplo podriamos probar a crear un .xlsx
con usuarios y contraseñas al bucket
si tuvieramos un archivo de este estilo, lo podremos subir de esta forma:
Subida de archivos al bucket
Ejecutando este comando habremos subido de forma correcta el archivo .xlsx
al bucket
, ahora desde una maquina atacante, se podria hacer lo siguiente.
Vista desde un atacante
Probando de forma anonima a enumerar el bucket
veremos esto:
Si lo queremos filtrar para ver mejor seria algo asi:
Info:
Veremos que esta funcionando correctamente, por lo que sabiendo todo esto vamos a probar a descargarnos el archivo que subimos al servidor anteriormente de la nube
.
Y con esto veremos que ha funcionado toda la vulnerabilidad, ya que nos esta descargando el archivo de forma correcta.
[EXTRA] Configuracion en un Apache2
Si queremos alojar el bucket
en un entorno web
como por ejemplo con apache2
podremos realizar lo siguiente:
Ahora vamos a plasmar toda la configuracion en dicha pagina web:
Vamos asignarle los permisos necesarios, junto con las configuraciones necesarias:
Y ya con esto podremos implementar PHP
como pagina web, para poder implementar sistemas de autenticacion, validaciones, etc... Con PHP
.
Last updated