lunes, 27 de agosto de 2007

Rainbow Tables......

Primero reconocer que he sido un 'Script Kiddie', al menos en este caso.

El otro dia comente los website politicos, y deje caer que dos usaban el CMS Joomla, he aqui que vi un exploit el otro dia, y decidi probarlo....

?option=com_simplefaq&task=answer&Itemid=9999&catid=9999&aid=-1/**/union/**/select/**/0,username,password,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0/**/from/**/jos_users/*

Y si, funcionaba....


El uso de gestores de contenido opensource, tiene un problema, y es que cuando se describe una vulnerabilidad, lo normal es que haya centenares de sitios que tras su puesta en marcha se dejan a su aire, y estas vulnerabilidades estan accesibles en estos websites... hasta que llega alguien que las explota.

En los gestores propietarios, como no hay auditoria de codigo posible, pues solo es el uso de herramientas de injeccion de codigo, y estudiar los resultados. SQLNinja.. buena herramienta,

Un consejo, el truco no esta en injectar codigo correcto, sino en generar errores que permitan identificar el funcionamiento, y ha partir de la informacion recolectada generar la injeccion correcta. Vamos que en vez de intentar ejecutar un SQL correcto, lo primero que hay que hacer es generar sentencias incorrectas, para que los posibles errores mostrados den pistas de la estructura, tablas, tuplas, etc. En los ASP es una maravilla, aunque con los .NET hay ahora restricciones para no generar codigo de error, y por supuesto no usar IE, que enmascara los errores, FireFox u Opera.

En este caso el exploit, 'solo' y repito lo de 'solo', muestra el listado de usuarios y sus hash (MD5) de sus contraseñas. Al menos en estos CMS, la codificacion de los passwords esta encriptada, es muy habitual sin embargo en los desarrollos no OpenSource que el almacenamiento de los passwords sea en texto plano, no se piensa en la seguridad, no conoces las tecnicas de injecion de codigo Sql... etc.

En cualquier buscador probar ha buscar '%', meter un 'union y sentencias SQL', es de cachondeo, cuando no pasan como parametro el numero de registros a devolver por pagina, esto es habitual en Navarra Diario..

Volviendo al tema y titulo.

Tras verificar la posibilidad de recuperar esa informacion de usuario/hash, entra en accion las Rainbow Tables. Estas es realmente una base de datos de hash ya calculados, y se basa en disponiendo del hash, buscar en las tablas la clave que ha generado el Hash. Ocupan un poco de espacio (hablamos de Gbytes), pero funcionan ahorrando tiempo de computacion.

En el website que era accesible, la de administrador era fuerte, ya que no aparecia calculada, todavia..., pero el resto de usuarios eran sencillas, por no decir otra cosa, asi que siempre el problema esta en los usuarios, la fortaleza de sus contraseñas. Yo no permitiria que un usuario se asignase su contraseña, se la generaria, asignaria y si quiere cambiar, que esta sea robusta, al tipo que actualmente hay formularios que via JavaScript te validan esa 'robustez'. Solo verifican que el campo de password, tenga xx letras y xx numeros, siendo bueno tambien que se añadan caracteres tipograficos "asin" _-./($) Que tambien tienen su problema, cuando ves al usuario su teclado. Es mejor una contraseña larga, y rapida de teclear tambien. No vale una contraseña con simbolos raros, que obliga al usuario a tenerla apuntada en el monitor, raton o teclado, que las hay. ¿Conoceis el termino 'mesa despejada' en seguridad informatica? ...

Hay diversos websites que permiten la consulta de los hash, asi como herramientas que con tus propias tablas generadas/compartidas buscar el resultado.

Para que nos pueden servir las Rainbow Tables, pues para recuperar password perdidas, tanto en un sistema Windows, Linux, MySql, siempre claro que tengamos disponibles el acceso a los fichero SAM, o HASH de las contraseñas. Como hay diversos algoritmos de calculo, obviamente hay diversos tipos de tablas calculadas para cada tipo de metodo, MD5, LM, etc...

Peticiones a San Google....

Ya no esta accesible la vulnerabilidad, asi que por eso la publico, no perdais el tiempo, buscar otros websites.

miércoles, 15 de agosto de 2007

Analisis Tecnico Web-Politico-Parlamento Foral Navarra

No me he lucido nada con el titulo... Jeje.

Es la ultima vez que lo hago, ya que lleva un tiempo que no tengo. Y para hacerlo sin cobrar... tampoco es plan, ya que me he pegado 3 semanas de seguimiento y luego analizar un poco, ni he llegado ha realizar un 'hacking etico', eso ya mucho curro.

Analisis y evaluacion de los WebSites de los partidos politicos con representacion parlamentaria en la Comunidad Foral de Navarra, a saber:

UPN - NABAI - PSN-PSOE - IUN-NEB - CDN

Aqui una tabla con un analisis de los elementos siguientes:





























Peso KbytesSegundosElementos
UPN180,4010,6633
NABAI2.221,0066,9673
PSN-PSOE222,3021,9626
IUN-NEB158,009,5918
CDN 136,0020,4968


Analisis Particular

UPN
Mucho contenido, y actualizado. El Website esta desarrollado en Joomla, OpenSource, y de hay que sea facil la adicion de contenido de forma habitual.
1 Error CSS, del resto... ni hablar.
Dispone de sindicacion, de algo sirve el Joomla.
Pagina ligera de peso y rapida de descarga.
Controlado trafico con Google Analytics
Notable.

NABAI
Muchisimo contenido tras saltar los flash de 'bienvenida'. No la han actualizado durante todo el periodo de negociacion, o vacaciones...
Arghh,,, frames...
Muy MUY pesada, 2 Mbytes de contenido, es la mas lenta.
2 Error CSS, del resto... ni hablar.
Dispone de sindicacion.
Esta realizada en PHP, asi que debe de disponer de algun CMS, desarrollado al efecto.
Mirando el HTML.... no saben hacer un uso correcto del CSS, cada linea de una noticia, un monton de codigo para asignar la misma clase a cada linea....
Errores en links de la cabecera que se llama asi mismo. Mucho que mejorar.
Aprobado justo.

PSN-PSOE
Web en ASP, servidor IIS.
Bien de peso, aunque velocidad lenta... evaluacion mas abajo...
14 Errores CSS, del resto... ni hablar.
Tambien durante el periodo evaluado... han estado sin actualizar, estarian muy liados negociando.
Contenido dinamico, al menos las noticias, pero muchas, muchisimas de las secciones estan sin terminar. Menos mal, ahora cuando se repongan, no tendran que actualizar.... si lo dejan como esta. Debe de tener algun CMS al uso.
La documentacion descargable en formato Word, propietario. Incluso te puedes hacer la tuya.
Hay un foro cerrado. ¿clausurado/censurado?
Aprobado, puede mejorar nota..

IUN-NEB
Contenido actualizado y al dia, se preocupan, tambien desarrollado en Joomla, OpenSource. Esto demuestra que la herramienta facilita la actualizacion de contenidos.
No es la menos pesada, pero sin embargo es la mas rapida de descarga.
CSS CORRECTO. Buena template.
Foro fuera del website en Nodo50.
No me ponen accesible la sindicacion que facilita Joomla. Unico defecto y que 'se deja ver' de forma oculta la empresa desarrolladora, no hago publicidad, pero si que me vean los 'robots'.
Notable Alto.

CDN
El horror, frames, sin actualizar, lenta aun siendo la menos pesada.
Algo de ASP. Suspenso muy bajo.


Analisis Global.
Parece mentira que tras la finalizacion de las elecciones, y todo el follon que hemos tenido, solo haya habido 2 websites que se hayan actualizado durante el periodo 'estival', hasta el dia 30 de Julio solo habia habido actualizaciones de los Websites de UPN y IUN-NEB, el resto... ¿Vacaciones? ¿Negociando?....

Cosas sorprendentes, los 2 websites desarrollados en Joomla. Les facilita a los webmaster la actualizacion del contenido y ello se nota. Pocos errores, gracias a las templates.

No se ve que hayan sido los majors (Biko, Interesa) de desarrollo Web de la Comunidad Foral, quienes hayan desarrollado los websites, si otro dato interesante y comun, es que 3 de ellas se hayan alojadas en el mismo ISP, en este caso si es el 'major' Foral, Masbytes. Mas curioso es que sea de los 3 partidos mayoritarios, al menos tienen en comun. Como se enteren....

En la web del PSN, pensando que estan en el mismo ISP que las de UPN y NABAI, la diferencia de velocidad, sera el servidor IIS-ASP vs Linux-PHP. Al menos el sysop MB no las ha puesto en la misma IP, seria la releche, UPN-NABAI compartiendo maquina.

Se que durante la campaña electoral ha habido webs de los candidatos, pero eran algo 'puntual', asi que ni merece la pena comentar.

Hay mas info disponible, pero me reservo de publicar, para dejarlo para los comentarios. Si los hay. Que se lee, pero no se comenta.