This is legal | Realistic | Challenge 2 | Medio

El escenario que nos plantea este reto es el siguiente:

You have heard about people being targeted by a new religion called Egitology. Another hacker infiltrated the group and discovered that the list of people they target is stored on the site but he doesn’t know where.

 

Hay una nueva religión en la que hay un hacker infiltrado que nos ha pasado la web de la organización y sabe que en el servidor almacenan datos sobre sus objetivos.

Ante este escenario podemos sacar dos conclusiones

La primera que vamos a tener que llevar a cabo un proceso para acceder, quizas sea crackeando una contraseña o vulnerando la seguridad de algun modo.

La segunda es que una vez dentro debemos buscar una base de datos, dumpearla, borrar los logs y salir.

Vamos a empezar…

Al darle a begin challengue de nuevo nos sale la estructura, parece un fallo del servidor, vamos a darle a login.php

Bien, nos sale el panel de inicio en la web de la religion, nos pide usuario y contraseña

Vamos a probar con las combinaciones mas usadas como por ejemplo root:toor
your not an egitologist, get out!

Vaya, parece que este no es el camino…

Dado que la estructura del login esta escrita en php podemos probar con inyeccion de parametros a ver si sacamos algo. Probare con una comilla simple ‘.

you have got the right idea, dont give up 🙂

Mmmm, nos dice que vamos por buen camino y que no nos rindamos.

Ahora estoy convencido de que el formulario es vulnerable a una inyeccion, como buscamos una base de datos tenemos que acceder con un usuario con permisos elevados, por ejemplo “admin” sera entonces en el label de la contraseña donde usaremos un codigo algo mas avanzado para la inyeccion como 1’or’1’=’1 

this is legal realistic 2-1

Una vez dentro podemos salirnos o bien ver que nos muestra al dar en “Back up Database”

— Table structure for table `users`

CREATE TABLE `users` (
`ID` int(2) NOT NULL auto_increment,
`Username` varchar(255) NOT NULL,
`Password` varchar(255) NOT NULL,
`Level_access` varchar(9) NOT NULL,
PRIMARY KEY (`ID`),
UNIQUE KEY `Username` (`Username`),
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=3 ;


— Dumping data for table `users`

INSERT INTO `users` (`ID`, `Username`, `Password`, `Level_Access`) VALUES #La estructura que nos muestra la tabla usuarios es la siguiente ID, nombre de usuario, contraseña, nivel de acceso
(1, ‘Admin’, ‘3819585098e8cfe6c4fe4fcfd3a0fd59’, ‘Limited’),
(2, ‘SuperAdmin’, ‘8cc4ba204dd44cc92d7646ad035b7647’, ‘Unlimited’)

Aqui vemos que la cuenta Admin, que es con la que hemos conseguido acceder tiene el nivel de acceso limitado, asi que vamos a loguearnos con la cuenta SuperAdmin que debe tener acceso a todo, supongo que lo tendra tambien a la base de datos objetivo.

Pero hay un problema, la contraseña esta cifrada, debemos descifrar el hash, para eso lo primero que debemos hacer es identificar el tipo. Usando el script hash identifier nos da estas posibles soluciones:

– MD5
– NTLM
– MD4
– LM
– RAdmin v2.x
– Haval-128
– MD2
– RipeMD-128
– Tiger-128
– Snefru-128
– MD5(HMAC)
– MD4(HMAC)
– Haval-128(HMAC)
– RipeMD-128(HMAC)
– Tiger-128(HMAC)
– Snefru-128(HMAC)
– MD2(HMAC)
– MD5(ZipMonster)
– MD5(HMAC(WordPress))
– Skein-256(128)
– Skein-512(128)
– md5($pass.$salt)
– md5($pass.$salt.$pass)
– md5($pass.md5($pass))
– md5($salt.$pass)
– md5($salt.$pass.$salt)
– md5($salt.$pass.$username)
– md5($salt.’-‘.md5($pass))
– md5($salt.md5($pass))
– md5($salt.md5($pass).$salt)
– md5($salt.MD5($pass).$username)
– md5($salt.md5($pass.$salt))
– md5($salt.md5($salt.$pass))
– md5($salt.md5(md5($pass).$salt))
– md5($username.0.$pass)
– md5($username.LF.$pass)
– md5($username.md5($pass).$salt)
– md5(1.$pass.$salt)
– md5(3 x strtoupper(md5($pass)))
– md5(md5($pass)), Double MD5
– md5(md5($pass).$pass)
– md5(md5($pass).$salt), vBulletin < v3.8.5
– md4($salt.$pass)
– md4($pass.$salt)md5(md5($pass).md5($pass))
– md5(md5($pass).md5($salt))
– md5(md5($salt).$pass)
– md5(md5($salt).md5($pass))
– md5(md5($username.$pass).$salt)
– md5(md5(base64_encode($pass)))
– md5(md5(md5($pass)))
– md5(md5(md5(md5($pass))))
– md5(md5(md5(md5(md5($pass)))))
– md5(sha1($pass))
– md5(sha1(base64_encode($pass)))
– md5(sha1(md5($pass)))
– md5(sha1(md5($pass)).sha1($pass))
– md5(sha1(md5(sha1($pass))))
– md5(strrev($pass))
– md5(strrev(md5($pass)))
– md5(strtoupper(md5($pass)))
– md5(strtoupper(md5(strtoupper(md5(strtoupper(md5($pass)))))))
– strrev(md5($pass))
– strrev(md5(strrev(md5($pass))))
– 6 x md5($pass)
– 7 x md5($pass)
– 8 x md5($pass)
– 9 x md5($pass)
– 10 x md5($pass)
– 11 x md5($pass)
– 12 x md5($pass)

Son muchas opciones como para probarlas todas, pero podemos sospechar que es un hash MD5, para este tipo de hash hay dos metodos de crackeo, por colision y por comparacion, usaremos un servicio online para compararlo en una base de datos.

Una vez tengamos la contraseña descifrada nos metemos con la cuenta de SuperAdmin

this is legal realistic 2-2

Con un poco de suerte en estas carpetas estará lo que buscamos.

En el directorio root/misc/ esta la carpeta targets, la borramos

Antes de salir borramos tambien la carpeta logs root/images/logs

this is legal realistic 2-3

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s