¿Las reglas de complejidad de las contraseñas son contraproducentes?

29

Al crear un inicio de sesión para este sitio, elegí una contraseña no obligatoria que sería extremadamente difícil de adivinar, pero fácil de recordar.

Me dijeron que no cumplía con las reglas de complejidad.

Después de varias iteraciones de esto, en frustración y solo por el mero intento 'Contraseña1', que fue aceptada.

Surge la pregunta de cuántas personas que no son de TI hacen lo mismo cuando se enfrentan a esta situación. Golf1? Mercedes1? Metallica1? Supongo que si conoces al chico? Sí.

En el trabajo emitimos contraseñas en lugar de permitir que los usuarios las configuren. Usamos palabras sin sentido. Por ejemplo, artifubulista. Hay software para generar tales palabras. Estas contraseñas son sorprendentemente fáciles de recordar pero, presumiblemente, muy difíciles de utilizar en la fuerza bruta. Desafortunadamente, las reglas de complejidad de contraseña predeterminadas en los servidores de Microsoft impiden que se use esta opción simple pero segura. A menos que, por supuesto, cambie la política.

Reflexiones sobre esta bienvenida.

    
pregunta IanR 07.03.2013 - 23:45
fuente

8 respuestas

36
Las

reglas de complejidad de contraseñas son contraproducentes, en su mayor parte.

Reglas de complejidad de contraseña:

  1. hace que los usuarios se enojen y, por lo tanto, no cooperen y es probable que no apliquen las reglas de protección de contraseña que solo ellos pueden hacer cumplir;
  2. incitar al usuario a elegir soluciones creativas para ir más allá de las reglas de contraseña
  3. a menudo están muy incompletos y no filtran algunas de las contraseñas clásicas o que pronto se convertirán en clásicas que los usuarios encuentran como soluciones alternativas, consulte el punto 2 más arriba. Por ejemplo, "Contraseña1".

La única regla de complejidad de contraseña "razonable" que he encontrado todavía es una longitud de contraseña mínima. Requerir que las contraseñas tengan al menos 8 caracteres no es una dificultad para los usuarios, es comprensible y evita las contraseñas que son necesariamente débiles, ya que están dentro del rango de las búsquedas más exhaustivas y estúpidas.

    
respondido por el Tom Leek 07.03.2013 - 23:58
fuente
12

Por un lado, las reglas de complejidad probablemente no sean buenas. Por otro lado, tus "palabras sin sentido" pueden no ser tan complejas como crees.

No hay "presumiblemente" sobre la facilidad de la fuerza bruta: esto se puede medir. Para un atacante dado, el costo de un ataque de fuerza bruta es el número promedio de intentos antes de encontrar una contraseña. Si bien no conoce a su atacante, puede asumir que es inteligente y construirá su ataque alrededor de los métodos de elección de su contraseña. (De todos modos, es a los atacantes más inteligentes contra los que debe defenderse). Lo que el atacante definitivamente no sabrá es la parte que elige al azar para cada contraseña. La cantidad de aleatoriedad en una contraseña se llama entropía ; es el número de monedas que se voltean para determinar la contraseña, expresada en bits. La entropía también mide el número de intentos de fuerza bruta que requerirá un atacante inteligente: con n bits de entropía, hay 2 n posibles contraseñas y, en promedio, el atacante deberá probar la mitad de eso, 2 n -1 .

Requerir puntuación, dígitos o letras mayúsculas es común, pero no ayuda mucho a la seguridad. Casi todos los usuarios que hubieran escogido una palabra del diccionario como contraseña capitalizan la primera letra y agregan un 1 al final. Las personas que descifran las contraseñas no son estúpidas: incluyen esta y otras variaciones de l33tspeak en sus diccionarios de craqueo. Con todo, este requisito puede agregar uno o dos bits de entropía en la práctica. Hay mejores maneras de hacer contraseñas memorables con más entropía. Esto se ilustra en xkcd 936 y se explica en este sitio en XKCD # 936: ¿Contraseña compleja corta o frase de contraseña larga del diccionario?

En lugar de suponer la fuerza de su generador de palabras sin sentido, debe medirlo. Averigüe cómo genera las contraseñas y, más precisamente, cuál es el número total de contraseñas posibles. No podemos decir de un solo ejemplo. Si el generador alterna 5 vocales aleatorias (presumiblemente a , e , i , o , u ) con 20 grupos de consonantes al azar apropiados ( b , f , l , rt , st ,…), que hace (5 * 20) 5 = 10 10 ≈ 2 33 . Suponiendo que sus contraseñas estén debidamente protegidas , eso es suficiente para ataques en línea y está bien para sin conexión los ataques. (Si no está utilizando un hash suficientemente lento, 33 bits son cacahuetes). Si el generador de contraseñas está combinando fragmentos de palabras de un diccionario, la entropía puede ser mucho menor.

Si no está en condiciones de levantar las reglas de complejidad de la contraseña, emita contraseñas que cumplan. Haga estudios para ver si pueden recordar una letra mayúscula y un dígito por contraseña; si no pueden, siempre escribe con mayúscula la primera letra y coloca un 1 al final.

    
respondido por el Gilles 08.03.2013 - 00:13
fuente
10

Algunas reglas de complejidad son contraproducentes.

Ejemplos de reglas de complejidad menos productivas:

  • Debe tener entre 16 y 17 caracteres (una longitud demasiado específica)
  • Debe contener al menos 3 de los siguientes: $% ^ & (muy pocos especiales personajes para elegir)
  • Debe contener una letra mayúscula, una letra minúscula, sin caracteres secuenciales o repetidos, un número, y un signo de puntuación (demasiado específico)

Ejemplos de "buenas" reglas de complejidad:

  • Debe tener más de X caracteres (alienta contraseñas más largas)
  • Debe contener al menos un número (alienta a algunos, pero no a una complejidad excesiva)

La mejor solución para mí fue usar un administrador de contraseñas, que permite el fácil cumplimiento incluso con las reglas más ridículas, pero nunca "olvidaré" nada.

Este es un caso claro de poner todos tus huevos en una canasta, y luego ver la canasta como un halcón a través de CCTV y rodear la canasta con tigres y minas terrestres.

    
respondido por el scuzzy-delta 08.03.2013 - 03:33
fuente
4

Es estúpidamente simple sortear la mayoría de los conjuntos de reglas de complejidad de contraseñas evaluables de forma independiente; Longitud mínima, requisitos de casos, requisitos de caracteres no alfa. "Password1", a menos que su nombre sea Joe Password, superará la mayoría de los sistemas de reglas porque tiene al menos 8 caracteres, con mayúscula y un número. También es lo primero que intentará un crackbot.

La regla fundamental de cualquier requisito de complejidad de contraseña es, cuanto más difícil sea el uso del sistema, menos personas lo utilizarán . Esto va mucho más allá de las reglas de complejidad de las contraseñas, pero como la pantalla de inicio de sesión (y la pantalla de registro de usuarios a la que suele enlazar desde allí) es la primera interacción real entre el usuario y su sistema, cuanto más desagradable sea, menos querrán sus usuarios. para lidiar con eso, y contigo. Esto es especialmente importante si está intentando "vender" su sistema a los usuarios como un producto que no sabían que necesitaban, o si hay muchas alternativas para usted en el mercado (como un foro en línea). Los usuarios que se encuentren en esa situación dirán muy rápidamente "jódelo, estoy fuera", y es poco probable que todos los recuperen.

Algunas reglas adicionales siguen naturalmente. Una es que usted informe al usuario de manera clara y simple sobre las reglas que tiene implementadas, antes de que escriban algo . No es un problema de seguridad para las reglas de complejidad que usted exige que sean de conocimiento público, a menos que esas reglas disminuyan la posible entropía de contraseñas aceptables (que pueden cumplir las reglas, como la longitud máxima) y su usuario se sentirá mucho menos frustrado con su sistema de lo que lo estaría si tuviera que aprender las reglas mediante ingeniería inversa.

Otra regla es, no se desvíe demasiado de las reglas que los usuarios esperan . La mayoría de los usuarios son lo suficientemente inteligentes como para entender que la complejidad mínima es por su propio bien, y también saben que las barras que la mayoría de los sitios y aplicaciones configuran tienen una altura similar (mínimo de 6-8 caracteres, mayúscula y número, no puede contener ninguna de algunas palabras obvias como "contraseña"). La imposición de contraseñas ridículamente largas y complicadas que superan el estándar implícito (mínimo 20 caracteres, al menos dos grupos de al menos 4 números cada uno y al menos 5 símbolos) solo va a molestar a las personas, incluso si se les dice por adelantado.

La última meta-regla que declararé es, no imponer una regla por su propio bien . Nunca use una regla solo porque vio que otro sitio o aplicación lo hizo, o incluso simplemente porque es la mejor práctica. Hay razones detrás de las mejores prácticas, pero debe conocerlas y comprenderlas, incluso por qué es posible que no se apliquen a su situación, antes de mezclar una política de seguridad.

El conjunto de reglas que normalmente me gusta es:

  • Longitud mínima de 8 caracteres.
  • Símbolos de mayúsculas y minúsculas, números o .
  • No se puede componer solo de una palabra del diccionario.
  • No puede contener ninguna parte de su nombre, nombre de usuario o fecha de nacimiento (si sé estas cosas)
  • No se puede tener una "contraseña prohibida" que sea el 50% o más de la contraseña. Las contraseñas prohibidas incluyen cualquiera que haya aparecido en la lista de los 25 mejores de SplashData, incluida la mayoría de los grandes como "Password", "letmein", "12345678" etc., así como cualquier cadena que sea "interesante" en la seguridad de TI ("correcthorsebatterystaple" , "orpheanbeholderscrydoubt") y cualquier contraseña previamente utilizada y conocida como comprometida. La lista completa sería relativamente corta y se mostrará fácilmente a los usuarios a través de un enlace de la lista de reglas.
respondido por el KeithS 23.07.2014 - 22:03
fuente
3

Intenta descifrar esa contraseña de ejemplo. Vea cuánto tiempo se tarda. Apuesto a que te sorprenderás.

Recomiendo el uso de herramientas de administración de contraseñas (LastPass, etc.), contraseñas largas y complejas, y contraseñas de ESCRITURA HACIA ABAJO (con las calificaciones que se describen a continuación).

Sí, durante años se les ha dicho a las personas que nunca escriban sus contraseñas. Pero el modelo de amenaza ha cambiado. Cuando se originó ese consejo (en los años 70 de la década de los 70), la amenaza consistía en que la gente tomara el post-it de debajo de su teclado. Ahora la mayor amenaza es romper los hashes. Así que ahora, mi recomendación es que sea complejo, no se moleste en recordarlo, escríbalo y guarde la contraseña escrita en un lugar seguro, como al lado de los otros pequeños pedazos de papel verde que todos somos tan buenos protegiendo.

Si escribe su contraseña y la guarda en su billetera con su dinero en efectivo y no escribe su nombre de usuario o el nombre de su host, es mucho menos probable que alguien pueda hacer algo malo con ella que si no escribe abajo, pero elige una contraseña simplista. Hash cracking es la amenaza mucho más grande que alguien robando tu billetera y usando tu contraseña.

Y, por supuesto, nunca use la misma contraseña dos veces o en sitios diferentes, etc.

    
respondido por el Tracy Reed 08.03.2013 - 00:36
fuente
3

Sí. La mentalidad en 2018 es que las reglas de complejidad de las contraseñas son contraproducentes. Los recientes directrices de NIST de junio de 2017 (SP 800-63B) reflejan esto claramente: aspectos destacados :

  • 8 o más caracteres.
  • Al procesar solicitudes para establecer y cambiar secretos memorizados, los verificadores DEBEN comparar los posibles secretos con una lista que contenga valores que se sabe que son utilizados, esperados o comprometidos.
  • Los verificadores NO DEBEN imponer otras reglas de composición (por ejemplo, requerir mezclas de diferentes tipos de caracteres o prohibir caracteres repetidos consecutivamente) para los secretos memorizados.
  • Los verificadores NO DEBEN requerir que los secretos memorizados se cambien arbitrariamente (por ejemplo, periódicamente).

Si se necesita mayor seguridad, use autenticación de múltiples factores.

Las palabras sin sentido son una buena idea, dado que sus reglas de composición son lo suficientemente aleatorias. Sería cauteloso confiar únicamente en un generador, ya que su algoritmo podría usarse para ayudar a romper su contraseña; aumentarla con algo corto pero que solo sea significativo para usted iría muy lejos.

    
respondido por el HTLee 11.07.2018 - 22:59
fuente
1

Para mí, fue tan complicado crear y administrar contraseñas, investigué y probé alrededor de 6-7 administradores de contraseñas y me decidí por una buena que era fácil de usar, respaldar, sincronizar, etc. y me alegro de haberlo hecho. dio el paso.

ujrDm-e(5Gi9wSN8N.[(

Es una contraseña típica que se genera, entonces todo lo que necesito hacer es copiar / pegar según sea necesario. Una frase de contraseña fuerte es todo lo que necesito recordar. Esto simplificó totalmente y fortaleció mi uso de contraseña.

    
respondido por el Good_Guesser 12.03.2016 - 11:23
fuente
-4

Creo que una mejor respuesta que solo las reglas de complejidad de las contraseñas es tener una (o dos) reglas de contraseñas simples y enseñar a su organización los buenos paradigmas de creación de contraseñas. Aquí está y un ejemplo que uso personalmente.

Las reglas: 1. Las contraseñas deben tener 12 caracteres o más. 2. Las contraseñas deben contener caracteres alfa, numéricos y especiales.

Paradigma 1: 1. Elija un dicho favorito o un poema. 2. Tome una letra consistente en cada palabra (1ra, 2da, última ...) del poema como parte de su contraseña. 3. Aplique su elección de sustitución de alfabeto (podría ser hacket leet e- > 3, a- > @ ...) pero invente uno si no lo tiene. 4. Si necesita contraseñas diferentes para sistemas diferentes, agregue antes o después de las letras un acrónimo del nombre del sistema escrito al revés (banco - > knab) a la contraseña.

Para una organización, puede crear varios paradigmas si lo desea, o paradigmas que tienen diferentes niveles de criterios de seguridad.

Por supuesto, los paradigmas pueden necesitar una explicación un poco mejor, pero en general el beneficio de esta manera es:

  1. Las "reglas" son simples y se pueden validar rápidamente en interfaces de usuario y otros componentes del sistema.
  2. Su comunidad de usuarios tiende a ser más compatible con la creación de contraseñas más sólidas y difíciles de descifrar, porque ahora tienen las herramientas mentales para hacerlo.
  3. La recuperación de contraseñas por parte del usuario es más fácil y menos riesgosa (escribir la contraseña real, en lugar de escribir los criterios del paradigma).
  4. Los usuarios pueden crear contraseñas específicas del sistema que son bastante difíciles, pero que aún pueden recordarse.
respondido por el Tek Tengu 08.03.2013 - 15:30
fuente

Lea otras preguntas en las etiquetas