Cómo auditar de forma segura las contraseñas usando John the Ripper

4

Cuando mis clientes crean una contraseña, se les muestra un medidor de resistencia y he establecido los requisitos bastante altos. Sin embargo, el medidor de fuerza es esencialmente solo útil si es atacado por un cracker de fuerza bruta muy tonto. Sé a ciencia cierta que se pueden crear contraseñas que son más fáciles de descifrar con software como John the Ripper. Por ejemplo, es bastante fácil asegurarse de que la gente no esté creando contraseñas como "contraseña1", pero necesito encontrar términos comunes que no están en el diccionario como "NCC-1701-D" (el número de registro de Star Trek Enterprise) y otras cosas. que los crackers suelen buscar ("qwerty," asdf ", etc.). Tengo entendido que los programas de cracking mejoran a medida que tienen acceso a más contraseñas crackeadas (gracias LinkedIn, Evernote, LivingSocial ...) porque el cracker es capaz de comience con las contraseñas más comunes, e incluso busque "fragmentos de palabras" comunes dentro de las contraseñas y agréguelos al diccionario ...

Entonces, ¿cómo puedo obtener acceso a algunas de estas configuraciones avanzadas de John the Ripper? Sé que el programa en sí es gratuito de instalar, pero ¿cómo obtengo estos diccionarios construidos avanzados? Además, ¿cuáles son las implicaciones de seguridad de hackear mis propias cuentas? No puedo pensar en cómo esto podría ser realmente problemático, a menos que guarde las contraseñas descifradas en texto sin formato o algo así. ¿Me faltan algunos problemas obvios que esto introduciría?

EDITAR: Estoy pensando en generar mi propia tabla de arco iris para mi sal * y luego subir la lista de hashes. Luego, si el hash salado de un usuario coincide con uno de la tabla de arco iris, se les obliga a crear una nueva contraseña en su próximo inicio de sesión (o, mejor aún, se verifica con la tabla de arco iris cuando la crean por primera vez y se rechaza si hay un coincidencia, aunque no estoy seguro de que esto pueda ser computacionalmente demasiado costoso.)

* D'oh! Como se señala a continuación, no es así como funciona la salazón. ¿Existe alguna forma viable de verificar las contraseñas con una "lista negra de contraseñas" sin exponer la contraseña en el proceso?

    
pregunta brentonstrine 28.04.2013 - 20:51
fuente

1 respuesta

9

¡No te molestes! En lugar de preocuparse por la seguridad de sus contraseñas de usuario, ¿puedo sugerirle que se asegure de que sean lo más seguras posible una vez que hayan elegido una longitud y complejidad mínimas suficientes?

  

Estoy pensando en generar mi propia tabla de arco iris para mi sal y luego   subiendo la lista de hashes.

Acabas de revelar que ni siquiera estás eliminando contraseñas de manera efectiva. ¡Un solo valor de sal no único no debe usarse en más de un hash de contraseña! Parada completa No hace falta decir que lo que escribiste indica claramente que estás usando un solo relleno en una base de datos en un lugar donde debería estar salt . En lugar de calcular lo difícil que sería atacar los hashes de contraseña con una herramienta como John The Ripper (JtR), deberías hacer que estos tipos de ataques sean casi imposibles en cualquier contraseña utilizada que coincida con la longitud y / o complejidad mínima requerida. p>

Ahora le referiré a esta respuesta: ¿Cómo hash seguro las contraseñas? . No hay necesidad de que lo escriba todo de nuevo, creo. Léalo, entiéndalo, adore a su autor, porque una vez que implemente la sabiduría que posee, deberá dormir con una mente descansada y nunca volverá a pensar en JtR.

    
respondido por el TildalWave 29.04.2013 - 04:21
fuente

Lea otras preguntas en las etiquetas