Contraseñas hash - ¿Cuántas variaciones de las tablas del arco iris?

4

Primero que nada ... aprobé el examen CISSP. Woooo Tenía que sacar eso. GCIH y CEH antes del 11 de septiembre

Entonces, al estudiar el lado técnico de las cosas, veo que hay mesas de arco iris. Están pre-hash para comparar la contraseña de hash de la víctima (desde shadow o SAM), pero hay muchos algoritmos de hashing diferentes por ahí. Entonces, ¿tiene que haber una tabla de arco iris para cada algoritmo Y tengo que hacer la comparación a través de cada algoritmo?

En otras palabras, ¿cómo debo saber qué algoritmo se utilizó: MD5, SHA-1, NTLM, LANMAN?

¿Las contraseñas de un sistema como Windows 7 siempre estarán en NTLMv2, y Unix siempre estará en MD5? ¿O un usuario puede modificar su sistema y especificar el algoritmo que se usará para las contraseñas de su sistema, como SHA-256? ?

    
pregunta Abdu 05.07.2011 - 09:36
fuente

3 respuestas

5

Hum muchas preguntas en una

  • Las tablas de arco iris están diseñadas para un algoritmo de hashing en particular.
  • Es difícil decir qué algoritmo se usa, pero la longitud del hash puede darte una pista.
  • Para archivos ocultos, puede ver: enlace
respondido por el M'vy 05.07.2011 - 10:01
fuente
3

@ M'vy tiene las respuestas específicas a tus preguntas.

En términos de una respuesta más amplia sobre cómo funciona en la práctica:

Lo que solíamos hacer era mantener un rango de tablas Rainbow y, si no tuviéramos ninguna indicación en cuanto al algoritmo, comenzaríamos con lo más probable en un entorno particular y trabajaríamos en ellas: usar un script para hacer esto lo hace muy fácil, y si termina en la última tabla, todavía lleva poco tiempo.

    
respondido por el Rory Alsop 05.07.2011 - 15:56
fuente
1

Normalmente conoces la función hash del contexto. Si está tratando de descifrar una contraseña, entonces esta contraseña es valiosa para usted, ya que le otorgaría acceso a algunos datos o servicios en algún lugar, que usted específicamente apunta. Entonces, uno tiene que asumir que ya conoce el tipo de sistema (en particular, si logró obtener una lista de contraseñas con hash de una base de datos, entonces vio la base de datos), y esto a menudo incluye el conocimiento de La función de hashing de contraseña. Además, en los sistemas que admiten varios tipos de función hash (como el archivo /etc/shadow en sistemas Unix), el tipo de hash se codifica a lo largo del valor de hash, porque, por naturaleza, el sistema mismo debe saberlo.

Recuerde que las contraseñas con hash están pensadas para ser utilizadas por algún software, en algún lugar, que existe como archivos ejecutables y código fuente. En general, el software no puede considerarse secreto, y la ingeniería inversa es bastante eficaz para descubrir el tipo de procesamiento que se realiza con los datos.

Para Windows, las contraseñas tienden a procesarse con dos funciones hash, la antigua LM (LanMan) y la más reciente NT Hash (que es MD4 ). También se utiliza un "verificador de contraseña" en alguna parte, que está "salted" con el nombre de usuario (no es un buen nombre, en realidad: cada "Administrador" se llama "Administrador"). Consulte esta página para obtener más información. El hash de LM es extremadamente débil y se usó como el banco de pruebas de demostración para mostrar la efectividad de las tablas del arco iris; Afortunadamente, está deshabilitado de forma predeterminada en los sistemas más nuevos (desde Vista). Sin embargo, el hash del NT sigue siendo bastante débil (no tan abismal como LM, pero aún así) ya que es muy rápido (una sola invocación de MD4 ...) y sin sal (por lo que vale la pena construir tablas precomputadas, como las tablas de arco iris) .

    
respondido por el Thomas Pornin 23.10.2012 - 15:01
fuente

Lea otras preguntas en las etiquetas