Pregunta:
¿Cómo no son seguras las contraseñas cortas si limita el número de intentos?
Alex
2019-12-21 16:03:20 UTC
view on stackexchange narkive permalink

En todos los servicios web que requieren contraseñas, como gmail, se le solicita que establezca una contraseña larga. Como 8 caracteres o más.

La razón es mayor seguridad.

Pero los mismos servicios limitan la cantidad de intentos de inicio de sesión a 3-4 intentos antes de bloquear su cuenta y pedir más información . Algo que me resulta muy molesto, pero ese es otro tema.

Entonces, ¿cómo es insegura una contraseña corta si limita los intentos de inicio de sesión? Si la contraseña tiene 5 caracteres, alguien no puede probar todas las combinaciones en solo 3 intentos.

Asumes que escribir a ciegas la contraseña en la interfaz de Gmail es la única forma de iniciar sesión. Además, bloquear una cuenta después de X intentos significa que podría escribir un script que intente iniciar sesión automáticamente como tú y nunca más puedas usar Gmail.
Para el registro: 8 caracteres no es una contraseña larga hoy.
3-4 intentos ** por usuario **.Pueden configurar una botnet que probará contraseñas fáciles para millones de cuentas.Si la gente usa una contraseña corta, las posibilidades de acertar con una son extremadamente altas.
Está cometiendo un error extremadamente común: se está enfocando en los ataques que imagina en lugar de en los que la gente realmente usa.Hacer la pregunta aquí es un buen paso para conocer los detalles de esta instancia, pero no descuide la meta-realización.
@MechMK1 La mayoría de los sistemas de bloqueo adecuados evitan que los bots bloqueen a los usuarios legítimos al incluir solo a un usuario en una lista negra en una dirección IP específica.Esa es la manera de hacerlo.
Tres respuestas:
Anders
2019-12-21 19:33:24 UTC
view on stackexchange narkive permalink

La razón principal por la que las contraseñas deben ser largas y aleatorias (es decir, alta entropía) es para proteger contra ataques de fuerza bruta fuera de línea.

Las contraseñas generalmente no se almacenan en texto sin formato. En cambio, están hash. Si alguien roba la base de datos con las contraseñas hash (esto es sorprendentemente común), no pueden leer las contraseñas directamente. En cambio, tienen que probar montones y montones de contraseñas para encontrar una que coincida con el hash. Dado que se han robado los hash de contraseña, esto se puede hacer en la máquina del atacante y no a través del sitio web en sí (de ahí el ataque offline ). Esto significa que no se aplica ningún límite a los reintentos en la página web.

Las contraseñas largas y aleatorias requieren más conjeturas, por lo que son más difíciles de descifrar incluso si alguna vez se roba la base de datos. Por eso se les anima en la web.

Información útil, UV, pero no aborda el "número de intentos de inicio de sesión de 3 a 4 intentos antes de bloquear su cuenta"
@chux-ReinstateMonica sí, lo aborda.Está perfectamente claro después de leer esta respuesta que la cantidad de intentos de inicio de sesión permitidos no importa en absoluto si el atacante ha robado los hash de contraseña.
@ElmoVanKielmo Bastante justo: reformular: la respuesta no aborda por qué el número de intentos de inicio de sesión se limita al rango de 3-4; solo dice que no debería importar por seguridad.
@chux-ReinstateMonica Se defienden dos vectores de ataque.Las contraseñas largas defienden contra ataques fuera de línea, los límites de intento de contraseña defienden contra ataques en línea.Si bien es probable que las contraseñas largas mitiguen adecuadamente los ataques en línea, estos límites se han vuelto tradicionales como defensa en profundidad.
Creo que esto está mal.Los requisitos de complejidad después de que no sean suficientes para detener de manera confiable la fuerza bruta fuera de línea.Compare con Veracrypt, que está diseñado para detener la fuerza bruta fuera de línea y tenía requisitos mucho más altos que la mayoría de las contraseñas web.La razón principal es la propagación de contraseñas
F. Hauri
2019-12-21 16:33:32 UTC
view on stackexchange narkive permalink

No es tan simple ...

Acerca de la fuerza bruta en línea

Si la cuenta se bloquea completamente después de 3 intentos, será fácil hacer DOS (Denegación de servicio) bloqueando todas las cuentas.

El servidor debe basar la decisión de bloqueo no solo en el número de intentos fallidos, sino que utilizará la dirección IP , ID del navegador e incluye duración para el bloqueo, por lo que si alguien usa un teclado incorrecto, podrá volver a conectarse en un retraso...

A partir de ahí, considerando botnets , un atacante podría usar muchas direcciones IP diferentes y hacer muchos intentos diferentes. Con algunas opciones suaves y retrasos prolongados, las contraseñas cortas se vuelven débiles.

  • Ejemplo:

    Considerando la fuerza bruta total contra 5 caracteres elegidos en az, AZ, 0-9, $ + "* /% & () _ : 72 caracteres

      72 ^ 5 = > 1'934'917'632 # todas las combinaciones posibles72 ^ 5/300000 = > 6'449 # botnet72 ^ 5 * 900/300000/3 = > 1'934'917 # 3 attemps -> 15 'de penalización  

    En segundos: esto representa ~ 22 días para probar todas las combinaciones.

Nota 1: 300000 máquina alguna media arbitraria valor de Botnet @Wikipedia. Si es una botnet de 6 millones, el trabajo finalizará en aproximadamente un día.

Nota 2: el mismo cálculo con una contraseña de 12 caracteres dará como resultado aproximadamente 615'015 '399'199 años.

Acerca de la fuerza bruta fuera de línea

Las contraseñas se almacenan comúnmente hash . Si alguien pudiera robar su archivo de contraseñas (mediante el uso de exploits remotos, ingeniería o else), podrían usar fuerza bruta contra hash almacenado en el archivo de contraseñas.

¡¡A partir de ahí, el atacante no está más limitado a 3 intentos !!

Si la longitud de su contraseña es> = 12 caracteres: 72 ^ 12 = > 19'408'409'961'765'342'806'016 . Esto se vuelve pesado, incluso a través de botnet ...

Pero cualquier john como cracker de contraseñas, buscará el archivo de contraseñas robadas y extraerá rápidamente todas las contraseñas comunes basadas en palabras y todas las contraseñas cortas.

Brute force, al usar la supercomputadora más rápida en 2019, podría verificar hasta 10 ^ 14 pruebas / segundos ... Ataque de fuerza bruta en wikipedia. Entonces:

  72 ^ 12/10 ^ 14 = 194084099 = > más de 6 años.  

Acerca de contraseñas largas frente a frases de contraseña

Como prefiero (siempre que sea posible) usar frases de contraseña en lugar de contraseñas, realmente me gusta esta tira de XKCD (/ 936):

XKCD 936

... Con 5 palabras en lugar de 4. Así que hay una pequeña demostración matemática:

  • Considerando una contraseña de 12 letras con un grupo de 72 caracteres:

      $ bc <<<72 ^ 1219.408.409.961.765.342.806.016 -> >6 años  
  • Considerando 5 palabras al azar elegido en el diccionario americano en palabras que contienen de 5 a 9 letras simples (az, sin acentos):

      $ bc <<< "$ (LANG = C grep '^ [az] \ {5,9 \ } $ '/ usr / share / dict / american-english | wc -l) ^ 5 "122.045.635.410.545.172.078.149 -> >38 años  

    incluso más combinaciones,

    con una longitud mínima de frase: 5x5 = 25 letras alfabéticas:

      bc <<<'26 ^ 25'236.773.830.007.967.588.876.795.164.938.469.376  

    (Nota la combinación de frase de contraseña de craqueo de fuerza bruta implícita de letras, esto reducirá la combinación total, pero se mantendrá más alto que 41'429 ^ 5 ... 41429 es el resultado de wc -l en mi prueba anterior)

    Incluso podría agregar un poco de sal agregando mayúsculas, números y / o cualquier carácter especial ... ¡pero mientras pueda recordarlos!

paj28
2019-12-21 16:18:07 UTC
view on stackexchange narkive permalink

Para evitar la "propagación de contraseñas" cuando alguien prueba una contraseña común en muchas cuentas.

Hay contraseñas comunes de más de 8 caracteres que se pueden rociar;No creo que esto aborde la cuestión de las contraseñas cortas.
@multithr3at3d - Absolutamente los hay, y los buenos sitios comprobarán las bases de datos de seguridad.Pero la longitud de la contraseña es la forma más sencilla de intentar que los usuarios elijan una contraseña única.
@multithr3at3d - ¿Puede leer [esto] (https://security.meta.stackexchange.com/questions/3328/short-answers-in-comments)
Para aclarar mi comentario, los "intentos de inicio de sesión limitados" pueden mitigar la propagación de contraseñas, pero no estoy de acuerdo en que la "longitud de la contraseña" sea necesariamente una mitigación para la propagación de contraseñas, ya que incluso la contraseña "password123" no es muy corta (11 caracteres), aunque probablemente aparezca en una lista de contraseñas distribuibles.


Esta pregunta y respuesta fue traducida automáticamente del idioma inglés.El contenido original está disponible en stackexchange, a quien agradecemos la licencia cc by-sa 4.0 bajo la que se distribuye.
Loading...