Devil
Máquina "Devil" de Dockerlabs
Autor: kaikoperez
Dificultad: Medio

RECONOCIMIENTO
Comenzamos haciendo un escaneo de nmap:
Solo tenemos el puerto 80 abierto y está corriendo apache httpd, por lo que continuaremos desde el navegador.
Puerto 80:

Si nos fijamos al final, se nos nombra wordpress y en el propio codigo fuente hay cosas de wordpress, el problema es que si intentamos entrar a cualquier cosa relacionada con wordpress, nos va a redirigir a la misma página. Como sabemos, si intentamos entrar a alguna de eso nos redirige, pero... ¿que pasa si entramos a una carpeta en la que se indexe el contenido? como por ejemplo "wp-content/". Si vamos desde el navegador veremos una página en blanco, pero en wordpress siempre hay una carpeta uploads ahí, por lo que si nos metemos veremos una carpeta extraña llamada "esteestudirectorio", a la cual si entramos veremos una nota en morse que dice lo siguiente:
Por lo que ahora recurriremos a dirb para hacer lo que nos dice la nota (fuzzing en wp-content):
luego de que termine, veremos esto:
Como vemos hay una carpeta "backdoor" en "./plugins/backdoor/" y tiene un index.php, por lo que si vemos desde el navegador, veremos lo siguiente:

INTRUSION
Viendo que podemos subir archivos, y que hay una carpeta "uploads" en el mismo directorio, podemos subir un php malicioso que nos permita ejecutar comandos, por ejemplo yo uso este:
Este lo que va a hacer es que cuando lo subamos y entremos en el, podamos ejecutar comandos en la url poniendo esto:
por lo que una vez subido vamos a el archivo.
Estando ahi escucharemos con netcat por el puerto que queramos nc -nlvp <puerto>, luego ponemos esto en la url:
y ya estaremos dentro.
ESCALADA DE PRIVILEGIOS
www-data
Hacemos un tratamiento de la tty y continuamos.
Ahora si vamos a /home, veremos que tenemos permisos de lectura en la home de andy. Ahora si ejecutamos ls -Rla en ese directorio, veremos lo siguiente:
Hay cosas interesantes:
.pista.txt
/aquilatienes/password.txt
ftpserver
escalate.c
Si leemos la pista y el password, veremos que nos dice que está en rot8000 (no pongo el password porque tiene un formato que no puedo copiar), por lo que si lo pasamos a texto, obtendremos esto:
Por lo que ahora escalamos con su andy y su contraseña.
Andy
Si vamos a .secret/ y leemos el "escalate.c", veremos que se fija nuestro uid y el de lucas y luego si coincide nos genera un bash, y si ejecutamos el otro script podremos a escalar a lucas:
Lucas
Siendo lucas, veremos que en su home hay una carpeta llamada ".game" y un archivo que tiene permisos SUID (porque está en rojo), y además el archivo .c que se usó para crearlo, el cual si leemos, nos genera una bash como root al poner el 7, por lo que lo ejecutamos y al poner un 7 escalaremos a root, pero el grupo sigue siendo andy, por lo que editamos con nano el /etc/passwd y borramos la "x" de root, y ahora seremos root totalmente:

Gracias por leer...
Última actualización