miércoles, 9 de diciembre de 2009

Contraseñas en Windows II

Si bien este post va dirigido a las contraseñas en Windows, se podría aplicar a las contraseñas en general.

Como ya comenté en un anterior post, nos podemos encontrar con unos ficheros llamados rainbow tables. Estos son unos ficheros donde se tiene una gran colección de hashes correspondientes a contraseñas. ¿Para qué sirve tener una colección de hashes? En principio, nos permitirá hacer unas cuantas cosas. Por ejemplo. Dado el hash de una contraseña, se puede buscar éste dentro de la tabla.

También hay que tener en cuenta que dependiendo del conjunto de caracteres que se esté empleando, será más fácil, o no, encontrar la contraseña. Por el lado de las rainbow tables la dificultad radicará en que si se están utilizando caracteres especiales, como pueden ser guiones bajos (_), guiones (-), o, si vamos más allá, eñes (Ñs), acentos, etc, hará que el fichero donde están almacenados los hashes ocupen más que si sólo se tuvieran las combinaciones sencillas del ASCII. Y, desde el punto de vista de la contraseña, porque cuantos más caracteres especiales se utilicen, unido a la longitud de ésta, más costará el poder encontrar dicha contraseña dentro de las tablas, si es que está representada ahí dentro. También es cierto que a medida que la tabla va creciendo es más probable que se produzca una colisión. Y cuando hay colisiones implica que hay un hash que valdría para más de una contraseña.

Es muy, muy importante darse cuenta de que a medida que se van añadiendo caracteres a la combinatoria de las posibles contraseñas de las que queremos almacenar su hash, más ocupará el fichero donde estén almacenadas. Ayer estuve buscando material para poder hacer alguna demo y, para que se vea hasta donde puede llegar el tamaño de una colección de estas, un bicharraco de estos que contenga los hashes para LM de una longitud máxima de 7 caracteres, ocupa 120 GB.

En este sitio hay una buena presentación en la que se ve cómo se pueden generar estas tablas, y algunas características que se me queden colgadas o que no sean muy precisas.

De momento no puedo dar muchos más detalles. De todas maneras, como ya he dicho, quiero hacer una demo con una de estas para que veáis cómo funcionan.

No hay comentarios:

Publicar un comentario