¿Sería útil una lista negra masiva de contraseñas adivinables? [duplicar]

5

Las sugerencias para hacer una buena contraseña se centran en crear una cadena que una computadora (o más probablemente, una red de computadoras con múltiples GPU) no pueda adivinar. Poner un medidor de contraseñas para cuando los usuarios creen contraseñas puede ayudar contra esto un poco, por ejemplo. mediante la aplicación de una contraseña de al menos 8 caracteres con una combinación de casos, letras, números y símbolos. Pero los medidores y las reglas de contraseñas no pueden protegerse contra las siguientes contraseñas, que todas parecen bastante bien:

qeadzcwrsfxv1331
Coneyisland9/
n3xtb1gth1ng,
Oscar+emmy2.
":LOL1313le
Sh1a-labe0uf,
DG091101%

Todas estas contraseñas se descifraron rápidamente para este artículo sobre Ars Technica. Parece imposible competir con la complejidad, creatividad, velocidad y amplitud de los algoritmos de craqueo.

Así que aquí está mi pregunta. Si, en teoría, unos pocos cientos de crackers utilizaron su hardware y programas de cracking para generar una lista masiva de todas sus conjeturas, y continuaron agregándolo, de modo que la lista incluiría cualquier nueva conjetura que pueda incluirse en los programas de cracking. (p. ej., digamos que otro sitio es pirateado, todas las contraseñas filtradas entrarán en la lista negra), ¿sería esto útil como herramienta de generación segura de contraseñas? ¿O sería fácilmente evitable o tiene un problema masivo que no estoy viendo?

Dado que esta lista negra masiva probablemente tendría que ser de colaboración colectiva y, por lo tanto, estar disponible para los crackers, y posiblemente incluso algo a lo que los crackers podrían agregar, ¿hay formas en que se pueda utilizar para la ventaja de un cracker? ¿O utilizar esta lista haría su trabajo más difícil sin importar qué?

¿Alguna otra razón por la que no sería útil?

    
pregunta brentonstrine 17.07.2013 - 00:14
fuente

2 respuestas

4

Esas contraseñas se basan en un ataque sin conexión, es decir, el atacante tiene el hash y está intentando descifrarlo. Si esa es tu preocupación, usa algo como scrypt, bcrypt o PBKDF2 para fortalecer tus hashes de contraseña y hacer que sean más difíciles de atacar sin conexión.

Si le preocupa el ataque en línea, simplemente limite la tasa de inicios de sesión de la cuenta con algún tipo de retroceso exponencial, o bloquee la IP después de algunos intentos de inicio de sesión incorrectos. De cualquier manera, hará que el ataque en línea sea tan lento que el atacante no pase "p4ssw0rd".

    
respondido por el David 17.07.2013 - 04:50
fuente
2

Hay 3 tipos diferentes de ataques de fuerza bruta:

  1. ataque de diccionario común : diga a las 100 contraseñas más comunes. O superior 30000, o lo que sea. Normalmente, un ataque superficial se ejecuta contra un gran conjunto de objetivos que buscan eliminar a los débiles.

  2. ataque exhaustivo de diccionario : con diversos grados de exhaustividad. Todas las contraseñas comunes, todas las palabras del diccionario y los patrones del teclado, reemplazan las letras con números, agregan números y símbolos, insertan símbolos ... etc. Normalmente, un ataque muy específico.

  3. Ataque exhaustivo completo : comienza en 0x00 y sigue avanzando. Tasa de éxito del 100% si se mantiene el tiempo suficiente. Muy orientado, no particularmente práctico.

Entonces la pregunta es, ¿contra qué diccionario te estás protegiendo? Una solución simple es simplemente verificar para asegurarse de que su contraseña no esté en el diccionario de ataque correspondiente.

La comprobación de 1 es algo que ya se hace en sistemas más avanzados como Linux. Pero, desafortunadamente, la lista de contraseñas para 2 puede tener muchos gigabytes o terabytes. Se genera sobre la marcha cuando se usa, por lo que verificarlo debería ser al menos parcialmente programático, en lugar de una búsqueda directa. Siempre que estés usando aproximadamente la misma lista para la defensa que se usa comúnmente para la ofensiva, debes capturar todas las fáciles. 3 , por supuesto, es imposible defenderse, excepto para crear contraseñas muy largas. Lo que deberías hacer. Según las normas actuales, de 12 a 16 caracteres como mínimo, dependiendo de la selección de posibles caracteres que utilice (mayúsculas, números, símbolos, etc.)

    
respondido por el tylerl 17.07.2013 - 08:05
fuente