viernes, 2 de marzo de 2012

Kioptrix 4 solucionario

Bienvenidos una vez más!!!
Con el fin de aportar una vez mas en el proyecto sec-track, realizó la publicación de este solucionario (se los debía), el cual es el ultimo de esta serie, no siendo mas manos al teclado y hagámosle

Iniciamos realizando el típico barrido de pings


Y una vez identificada realizamos el escaneo de puertos a la maquina objetivo


Con esto ya tenemos los servicios que presta nuestro objetivo, en donde tenemos
SSH
http Apache (web)
Samba (Servidor de archivos compartidos)

Con estos servicios podríamos orientar nuestro ataque por SSH usando fuerza bruta, sin embargo quiero en este punto hacer referencia a la fase de recolección de información,  debido que estos tipos de ataque pueden llegar a ser más efectivos cuando se ha logrado obtener información de posibles usuarios del sistema así como información personal de los mismos (eh aquí una vez más la referencia a la tan mencionada ingeniería social), de la misma forma una gran sección de la páginas web que nos puede brindar información de este tipo es la tan conocida sección de ¿Quiénes somos? o Contáctenos así como también es posible llegar a realizar una enumeración de usuarios apoyándonos sobre vulnerabilidades de otros servicios pero este no es el caso (uy ya me extendí )

En este punto iniciamos una vez más probando las vulnerabilidades que puede presentar la página o aplicación web en cuestión, de modo una vez más corremos nuestro escáner de vulnerabilidades web nikto (como pueden ver me toco de nuevo hacer un barrido de pings ya que la VM objetivo se reinicio y tomo otra IP)


Como podemos ver en este punto tenemos varias salidas interesantes debido a que el apache esta desactualizado, así como la posible indexación de directorios.
Sin embargo y con el fin de obtener más información realizamos la enumeración de archivos y directorios del servidor haciendo uso del tan útil dirbuster


El cual nos aporta información interesante como la de la existencia de los directorios  John y Robert (poco a poco vamos recolectando información) los cuales en este punto pasan a ser usuarios potenciales!!!
Sin más ni menos y con el fin de ver en la parte web a que nos enfrentamos vamos a  una de las herramientas de juaking que todos usamos, “el navegador web “ al punto que la página de inicio nos presenta una interface de inicio de sesión




Sobre la cual probamos iniciar sesión  con el nombre de usuario de uno de los usuarios potenciales antes identificados (nombre de usuario = john y password = john), sin embargo el resultado no es tan agradable como lo esperábamos!!!


Aunque sería el colmo, sin embargo aunque no lo crean aun se ven este tipo de casos, sino me creen preguntenle a wizard de su usuario webadmin (los que han leído las publicaciones anteriores sabrán!!!)

En este punto con este posible nombre de usuario y con el primer intento fallido, no queda de otra más que intentar realizar un típico bypass usando SQL-Injection de modo que usamos en este caso Username = John y en el campo de password simplemente ‘‘OR’’=’’ (ojo con las comillas pueden provocar errores de sintaxis!!!)


Como podemos ver en este punto nuestro ataque funciona, de modo que hasta aquí obtenemos más información de este usuario y por ende de nuestro objetivo (y valla que información)


De modo que hacemos lo mismo con el otro usuario potencial y llegamos al mismo punto, probamos con una cuenta casi al azar y …


En efecto como no existe saca error (un apunte, esta página de notificaciones permite hacer XSS),  con la información obtenida, solo nos queda realizar nuestro intento de conexión usando el servicio de SSH



El cual se realiza de forma exitosa, sin embargo…



…nos encontramos que esta no es una típica Shell, en este caso tenemos una Shell limitada la cual solo nos permite ejecutar algunos comandos.  La verdad esto me puso a pensar un rato ya que hasta ahora no me había enfrentado a esta situación, de modo que buscando en la web encontré un muy buen articulo de elevación de privilegios en donde hacía referencia a una Shell enjaulada, cuya forma de salto fue efectiva en este caso (no doy referencias del sitio como tenía pensado ya que mi buen amigo d7n0 me hizo caer en cuenta que era un copy-paste de otro blog)


En este punto podemos preguntar al sistema como quien estamos logueados, información del usuario, información del sistema, información de usuarios del mismo, y porque no intentar usar sudo



Pero desafortunadamente no hacemos parte de los sudoers, de modo que no queda más que intentar escalar privilegios con algún exploit local para esto,  buscando con base en la información del kernel obtenida previamente seleccionamos el exploit 5093.c (de la base de datos de exploit-db) y lo copiamos al directorio de publicación del apache



Pero en esta ocasión la descarga con wget uich no funciono!!!


 De modo que (algo muy práctico que le aprendí a d7n0) tal y como se ve en la imagen anterior tratamos de listar las reglas de iptables configuradas, pero no tenemos permisos

Así que buscamos con locate la ubicación del archivo en el cual se almacenan estas e intentamos leerlo


Como podemos ver el tráfico saliente hacia el puerto 80 así como otros más está bloqueado, de modo que debemos usar otra estrategia para la transferencia del mismo.
Aquí les comento que una vez transferí este exploit, me di cuenta que en la maquina objetivo no se podía compilar de modo que tocaba pasarle un exploit ya compilado, para no complicarme use un exploit que ya he usado en otros entornos (por eso ya lo tengo compilado, sin embargo pueden ver el archivo run para ver los comandos para esto), tratando de recrear el escenario tenemos la búsqueda del mismo en la base de datos de exploit-db (estos dos últimos me han dado la mano varias veces, se los recomiendo!!)


y la descarga sobre la maquina atacante



Una vez tenemos el exploit compilado lo transferimos el mismo usando la navaja suiza nc poniendo en la maquina atacante un puerto no bloqueado a la escucha


Y desde el objetivo nos conectamos al mismo y una vez termina la transferencia (esto es lo que tu instinto te diga) cortamos la comunicación y tenemos el archivo en la maquina objetivo.


Hecho esto simplemente lo ejecutamos verificamos quien somos y damos por terminado el reto verificando el archivo del directorio de root congrats.txt

No siendo más mis apreciados lectores espero y esta publicación haya sido de su agrado, hasta una próxima entrada

Carlos Andrés Rodallega Obando
@crodallega
Roguer Comunidad DragonJAR


PD: nc o netcat fue la primera herramienta de seguridad que use...
...gracias Siler Amador Donado (relis.inc) por orientarme en este campo!!!

2 comentarios:

  1. Excellent My Brother

    Congratulations

    ;D

    Bytes

    PD: Uno mas para CP :D

    ResponderEliminar
  2. Buena :D te estava viendo x youtube igual a dino
    http://www.youtube.com/watch?v=OCguIzsINgE&feature=g-all-u

    ResponderEliminar