¿Qué tan seguras son las contraseñas con menos de 20 caracteres de longitud?

10

Recientemente recibí una recomendación para configurar mi contraseña a más de 20 caracteres. El algoritmo utilizado para el cifrado es AES con una clave primaria de 256 bits. ¿Qué tan segura es, digamos, una contraseña de 8 caracteres contra ataques de fuerza bruta para descifrar archivos cifrados?

Sé que esto se considera un buen tamaño de contraseña en la mayoría de los sitios web. Una razón de esto es que pueden detener un ataque después de 3 intentos más o menos.

cmserv
fuente

Respuestas:

4

Este es un artículo interesante http://www.lockdown.co.uk/?pg=combi&s=articles que detalla cuánto tiempo teóricamente tomaría forzar una contraseña para fuerza bruta para diferentes longitudes y conjuntos de símbolos.

Mark Davidson
fuente
Ok, este es un enlace muy interesante. Da una buena idea de qué tipo de fuerza necesita para qué período de tiempo. Entonces, con suficientes recursos, también es posible romper una contraseña de 8 caracteres, especialmente si no es buena.
cmserv
Todavía tomará 83.5 días a 100,000 contraseñas / segundo. Eso no es realmente posible para la mayoría de los ataques. Especialmente si estás hablando de una contraseña de servidor, en lugar de una frase de contraseña pgp. Si no tienen el hash, 8 caracteres (aleatorios) son esencialmente irrompibles.
Cian el
No estaba hablando de las contraseñas del servidor porque sé que puedes usar contraseñas mucho más simples porque los servidores ofrecen protección adicional contra ataques. Me refería a otros casos, por ejemplo, cifrado de archivos.
cmserv
Sería bueno actualizar esta respuesta. El enlace ya no es útil, ofreciendo un "Cerrado permanentemente". Para cualquiera que quiera ver el contenido, la máquina Wayback te respalda: web.archive.org/web/20180412051235/http://www.lockdown.co.uk/…
Howard Lince III
Conclusión Ya veo: mezclar alfabetos y números pequeños y capitales. La longitud> 15 es buena.
Estudiante
6

Es posible que desee señalar quién escribió esa política en esta publicación de blog de Bruce Schneier .

Es un buen resumen de por qué la fortaleza de las contraseñas es el menor de los problemas de la web.

womble
fuente
+1 Debido a que Bruce Schneier es el rey de la seguridad, su palabra es ley.
Mark Davidson
4

Mira la respuesta aceptada en esta publicación . ¡Demuestra que incluso una contraseña de 8 caracteres con la gama completa de caracteres puede demorar ~ 10,000 años en descifrarse!

Marko Carter
fuente
1
Supongo que te refieres a un ataque de clase A (10,000 contraseñas / seg). Si miro esta tabla y pienso en una institución grande, entonces podría ser factible para 86 personajes, contraseña de 8 caracteres, ataque de clase E o F: de 34 a 346 días. Esto no es 10000 años;)
cmserv
Para ser honesto, ¡no revisé las matemáticas en la publicación!
Marko Carter
3

Si cuenta el uso de las tablas del arco iris como fuerza bruta (las opiniones varían), entonces para 8 caracteres, use tablas del arco iris que incluyan todos los caracteres en la contraseña, aproximadamente 10 segundos. Contraseña de 20 caracteres (mismos caracteres, mismas tablas de arcoíris), menos de 30 segundos. El problema es que lleva mucho tiempo generar las tablas. La mía tardó aproximadamente un mes en generar en una máquina de 3GHz el procesamiento solo por la noche. Por otro lado, solo necesitas hacer eso una vez.

El problema de tratar de recordar contraseñas largas se resuelve fácilmente mediante una combinación de sustitución de caracteres y el uso de una frase. Incluso algo tan simple como un "# Fr3ddy M3rcury #" es lo suficientemente complejo para la mayoría de los usos, pero es notablemente fácil de recordar.

John Gardeniers
fuente
Las contraseñas MD5 usan una sal bastante grande. No creo que sus tablas de arcoíris sean lo suficientemente grandes como para tener las contraseñas de 8 caracteres y todas las sales para cada contraseña posible.
chris
¿Arriesgarías tu seguridad con eso? Mis mesas son un total de 25GB. Eso es 40 mesas a 650MB cada una. Algún día generaré un conjunto grande. :)
John Gardeniers
1
¿No hay 2 ^ 32 sales para una contraseña MD5? Eso es 2 ^ 32 * 650mb. Buena suerte con eso.
chris
Hice las tablas de arcoíris para todos los hashes LM de caracteres ASCII. Tómese unos 3 minutos para pasar por bastante mental. Permite descifrar todas las contraseñas de Windows <= 16 caracteres.
Mark Davidson
2
Según Wikipedia, los hash LM no tienen sal. Las contraseñas MD5 tienen una sal, lo que significa que cualquier contraseña puede tener hashes (espacio de sal * contraseña), lo que significa que debe tener 1 tabla de arcoiris por sal.
chris
2

Tenga en cuenta que se puede recordar una contraseña de ocho caracteres. Una contraseña de 20 caracteres se puede escribir hacia abajo.

Y entonces alguien puede leerlo.

John Saunders
fuente
Tienes razón. Y también puede haber muchos otros factores que influirán en el tipo de seguridad para los archivos cifrados.
cmserv
Es posible que una contraseña muy larga no se escriba necesariamente si se trata de un conjunto de 5 palabras en inglés / idioma normal. Los cerebros son buenos para recordarlos y hay muchos por ahí.
chris
1
Habla por tu propio cerebro. El mío se cierra al pensar en recordar 20 personajes.
John Saunders
Si tu contraseña fuera "intestinos, mazmorra, perforaciones metafísicas se estanca", probablemente puedas recordarla después de usarla un par de veces.
chris
No No hay relación entre las palabras. No tengo ninguna historia para contarme que recordaría decirme la próxima vez que necesite la contraseña. Utilizo un programa generador de contraseñas para generar contraseñas aleatorias (uso al menos ocho caracteres en todo momento). Sigo generando hasta que veo una contraseña que puedo convertir en una palabra que recuerdo, como "cinnademo" = "canela" + "demostración". Eso puedo manejarlo.
John Saunders
2

Te puede interesar el artículo " Contraseñas vs frases de contraseña ". Su conclusión es que una contraseña totalmente aleatoria de 9 caracteres equivale aproximadamente a una frase de contraseña de 6 palabras. Pero sienten que una frase de 6 palabras sería más fácil de recordar.

Josh
fuente
1

Todo depende de los caracteres que uses, ya que esto cambia la cantidad de combinaciones que tienes. Asumiendo 8 caracteres:

  • Palabra del diccionario:

    egrep "^. {8} $" / usr / share / dict / words | wc -l
    15601
  • Letras minúsculas: 26 8 o 208827064576

  • Letras minúsculas y mayúsculas: 52 8 o 53459728531456

  • Inferior, superior y números: 62 8 o 218340105584896

Agregue signos de puntuación y otros símbolos, y el forzamiento bruto llevará algún tiempo.

Esos números son las combinaciones totales que van a tener que probarse. Obviamente, un pirata informático no probará todas las combinaciones después de obtener la contraseña, así que divídalas entre dos para obtener el número promedio de combinaciones requeridas.

Los hash más difíciles resultan en un tiempo de CPU más largo para calcular el hash, por lo que el tiempo total es más largo Un ejemplo de juan:

Evaluación comparativa: DES tradicional [64/64 BS] ... HECHO
Muchas sales: 819187 c / s real, 828901 c / s virtual
Solo una sal: 874717 c / s real, 877462 c / s virtual

Benchmarking: BSDI DES (x725) [64/64 BS] ... HECHO
Muchas sales: 29986 c / s real, 30581 c / s virtual
Solo una sal: 29952 c / s real, 30055 c / s virtual

Benchmarking: FreeBSD MD5 [32/64 X2] ... HECHO
Sin formato: 8761 c / s real, 8796 c / s virtual

Benchmarking: OpenBSD Blowfish (x32) [32/64] ... HECHO
Sin formato: 354 c / s real, 356 c / s virtual

Benchmarking: Kerberos AFS DES [48/64 4K] ... HECHO
Corto: 294507 c / s real, 295754 c / s virtual
Largo: 858582 c / s real, 863887 c / s virtual

Evaluación comparativa: NT LM DES [64/64 BS] ... HECHO
Sin procesar: 6379K c / s real, 6428K c / s virtual

Benchmarking: NT MD4 [Generic 1x] ... HECHO
Sin procesar: 7270K c / s real, 7979K c / s virtual

Benchmarking: M $ Cache Hash [Generic 1x] ... HECHO
Muchas sales: 12201K c / s real, 12662K c / s virtual
Solo una sal: 4862K c / s real, 4870K c / s virtual

Evaluación comparativa: LM C / R DES [netlm] ... HECHO
Muchas sales: 358487 c / s real, 358487 c / s virtual
Solo una sal: 348363 c / s real, 348943 c / s virtual

Benchmarking: NTLMv1 C / R MD4 DES [netntlm] ... HECHO
Muchas sales: 510255 c / s real, 512124 c / s virtual
Solo una sal: 488277 c / s real, 489416 c / s virtual

Por supuesto, todo esto es completamente académico, porque los piratas informáticos simplemente telefonearán a su secretaria diciéndole que son de TI y que necesitan su contraseña para algo y su contraseña segura no tiene valor.

David Pashley
fuente
1

Utilizo frases de contraseña no triviales para proteger

* activos que son importantes
* cosas que no están sujetas a anti-martilleo (bloqueo después de repetidos intentos)
* cosas que posiblemente puedan estar expuestas a ataques de fuerza bruta / basados ​​en diccionario / híbridos

Estoy menos preocupado con mi cuenta de gmail, ya que los intentos de fuerza bruta para descifrar esa contraseña simplemente bloquearán la cuenta (y cualquiera que tenga acceso al servidor simplemente reemplazará el hash con uno de su elección, no tratará de descifrarlo).

La mejor frase de contraseña es larga (> 12 caracteres) y criptográficamente aleatoria. Sin embargo, esos son más difíciles de recordar. Por lo tanto, una frase de contraseña que combina varias palabras con caracteres aparentemente aleatorios podría ser un buen compromiso (tal vez las primeras 1 o 2 letras de las primeras dos líneas de la letra de su canción favorita).

Garrett
fuente
0

Existe la seguridad que obtiene al comunicarse cliente / servidor, por ejemplo, como dijo, cuando puede detener a los atacantes después de 3 intentos (cuando atacan a través de la red, como con las aplicaciones web). Con este escenario, casi cualquier longitud de contraseña se puede argumentar como suficiente.

Sin embargo, si una persona con información privilegiada toma esta base de datos con contraseñas cortas con hash y puede evitar la limitación "por la red" de 3 intentos, el juego cambia.

La advertencia de limitar el número de intentos por cuenta es que esto será suficiente solo para intentos específicos en una cuenta específica. También debe protegerse contra el ataque en todas las cuentas con una contraseña dada (o permutada); esto no activará ninguna alarma cuando limite el número de intentos por cuenta. Dado el NAT y las botnets de hoy en día, ni siquiera puede argumentar que limitar el número de intentos por IP es una buena forma de pensar en seguridad.

Ya se han dado buenos recursos para la lectura en otras respuestas.

Olaf
fuente