Skip to main content

Dockerlabs machines – Lfi.elf Writeup

Dockerlabs machines – Lfi.elf Writeup

Lfi.elf es una de las maquinas existentes actualmente en la plataforma de hacking Dockerlabs y es de dificultad Difícil

En este caso se trata de una máquina basada en el Sistema Operativo Linux.

Empezaremos con el escaneo de puertos una vez tenemos la maquina a vulnerar levantada , la ip por defecto será la 172.17.0.2.

 

Una vez tenemos los puertos abiertos, ejecutaremos con nmap con el parámetro -sCV para que le pase los scripts por defecto y conseguir mas información de cada uno de ellos.

 

Entramos por el puerto 80 y tras ir viendo todas las paginas, solo encontramos con links muertos o paginas con formularios donde no hacen nada, pero se hace hincapié en la vulnerabilidad de LFI

 

Usaremos feroxbuster para ver que paginas hemos podido no encontrar

 

Llegados a este punto, miraremos las paginas php si tienen algún parámetro para un posible LFI, empezaremos con el index.php

 

Encontramos un parámetro,  ahora revisaremos a que tenemos acceso de lectura

 

Si lo replicamos en burp, vemos que podemos leer passwd

 

Usaremos como en otras ocasiones, php chain filter, primero de todo, crearemos el payload que vamos a enviar 

 

Ahora lo enviaremos por burpsuite

 

Tras revisar el directorio donde hemos spawneado, revisamos también el anterior, viendo un fichero oculto

 

Y volvemos a listar ficheros/directorios y vemos una carpeta oculta y un fichero

 

El fichero agenda parece contener una lista de palabras pero no nos servirá de nada

 

Por otro lado, la carpeta contendrá un fichero y este, la contraseña del usuario lin que vimos en el passwd, así que escalamos.

 

Vamos a su home y vemos los siguientes ficheros

 

Revisamos el fichero sistem.py pero parece que vaya por aquí

 

Así que revisaremos sudo -l, pero cuando lo ejecutamos nos da un mensaje un tanto extraño.

 

En cambio lanzando linpeas, vemos que si nos da un output de este comando

 

Porque..? Revisamos los alias del usuario y vemos lo siguiente

 

Es decir, cuando usamos sudo sin darle el path absoluto, nos lleva a este script

 

Por lo tanto cada vez que usamos sudo -l , nos mostrara el mensaje de «No tienes permiso para listar los comandos disponibles.» y sino, tendrá un comportamiento normal, pero como hemos dicho, si lo ejecutamos con un path absoluto, funciona correctamente.

 

A partir de aquí, solo tendremos que crear el fichero script.sh en /tmp para enviarnos una reverse shell y convertirnos en root

 

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *