¿Cómo puedo calcular el tiempo que le toma a una computadora determinada adivinar una contraseña?

0

A medida que la seguridad cibernética y su explotación se vuelven más prominentes y relevantes, encuentro sitios web como https://howsecureismypassword.net/ muy interesantes. Cuando el usuario ingresa una contraseña, les proporciona un tiempo estimado que necesitaría una PC de escritorio para adivinar esa contraseña exacta. Entiendo que esta vez se basa en una serie de variables como frecuencia, diversidad de caracteres, simplicidad, etc.

Me interesaría mucho encontrar una fuente (conferencia, libro, discurso, etc.) que detallara el proceso que se seguiría para estimar dicho tiempo.

Otras ideas útiles serían algún tipo de fórmula o algoritmo que me permitiría a mí (y a mi computadora) calcular un tiempo de adivinación de contraseña teórico.

Y para aquellos que miran mi pregunta con una cantidad suficiente de conocimientos de hardware, ¿se calcula fundamentalmente basándose en la frecuencia del procesador? Dado que el sitio web mencionado anteriormente basa su cálculo en una PC de escritorio, supondría que tiene algo que ver con la CPU.

Entonces, si alguien tiene una fuente, fórmula o algoritmo digno, compártelo. No votaré si es relevante para la pregunta en cuestión.

Thomas Gerot
fuente

Respuestas:

1

La respuesta a "¿Puedo calcular el tiempo que tardará un atacante con un hardware conocido específico en adivinar una contraseña con un algoritmo de hash conocido?" es "no puedes".

Esto se debe a que el hardware simplemente proporciona la máxima velocidad posible. Puedes mirar oclHashcat para algunos puntos de referencia.

Sin embargo, el software también avanza, lo cual es crítico y no predecible.

Más importante aún, depende completamente de una combinación de cómo se formula la contraseña y cómo el atacante la ataca.

  • Casi ningún usuario usa contraseñas largas criptográficamente aleatorias, que solo pueden ser atacadas de manera razonable iniciando una búsqueda exhaustiva del espacio de teclas, es decir, un ataque de máscara o fuerza bruta .

  • La mayoría de los usuarios usan contraseñas realmente malas, que son extremadamente vulnerables a los híbridos , diccionario basado en reglas , permutación u otros ataques

  • Y aquellos que no son realmente malos, pero que no son criptográficamente aleatorios, siguen siendo vulnerables a menos tiempo de fuerza bruta dados los ataques de Markov y los ataques avanzados de diccionario o máscara basados ​​en reglas

  • Y para los fanáticos de XKCD, hay ataques combinados , donde realmente depende de las elecciones de palabras ... en las que la mayoría de los humanos son REALMENTE malos.

    • Entonces, el atacante no usa todas las palabras en inglés ... usa las primeras 5000, o las tres primeras 5000 y una de las primeras 20,000, o dos de las 5000 superiores, un verbo de las 5000 superiores, y así sucesivamente ...

    • Y diccionarios de citas y líneas famosas.

      • como parte de los ataques basados ​​en reglas.
  • O los ataques de huellas digitales funcionan bien en algunos patrones de uso.

Tenga en cuenta también que esos sitios de "seguridad de contraseña" casi nunca toman en consideración NINGUNA variante de la ley de Moore, que en el descifrado de contraseña (una operación ridículamente paralelizable) está viva y bien, por lo que cuando dicen mil años, significan para el hardware de la misma precio en una década y media más o menos haciendo nada más que tonta, ciega, idiota, pura fuerza bruta, búsqueda exhaustiva del espacio de teclas.

Pruébelos: estas son todas las contraseñas inútiles HORRIBLES sin valor:

  • contraseña

    • "Al instante" - ok, cada vez que dicen que tu contraseña es incorrecta, es incorrecta .
  • Contraseña

    • "Al instante" - ok, cada vez que dicen que tu contraseña es incorrecta, es incorrecta .
  • Contraseña123

    • "412 años" - ¿En serio?
  • P @ $$ w0rd123

    • "4 mil años" - Sí, claro ... vamos a hablar en casi todas sus formas es solo otro conjunto de reglas
  • Jennifer2007

    • "25 mil años" - estás bromeando, ¿verdad? Nombre significativo del otro / hija más el año en que se casaron / conocieron / nacieron?
  • B @ $ 3b @ 111

    • "275 días" ... y es baseball1 con leet speak, y cubrimos eso.
  • Winniethepooh Winniethepooh

    • "3 octillion years" - y está directamente sacado de las reglas jumbo predeterminadas de John the Ripper contra el archivo JtR password.lst predeterminado (patético).
  • Ncc1701Ncc1701

    • "98 millones de años" - estás bromeando, ¿verdad? Nuevamente, está directamente sacado de las reglas jumbo predeterminadas de John the Ripper contra el archivo JtR password.lst predeterminado (patético).
  • a1b2c3123456

    • "37 años", y está directamente sacado de las reglas jumbo predeterminadas de John the Ripper contra el archivo JtR password.lst predeterminado (patético).
  • TRUENO

    • "59 años" - y está directamente sacado de las reglas jumbo predeterminadas de John the Ripper contra el archivo JtR password.lst predeterminado (patético).

Vea también mi respuesta a ¿Debo rechazar obviamente contraseñas deficientes? en security.stackexchange.com, que también cubre medidores de fuerza y ​​tiempos de fisuración.

Contraseñas anti-débiles
fuente
1

Deberías probar en https://security.stackexchange.com/ , probablemente serán más adecuados para ayudarte.

Pero, por lo que puedo ver, es su número de combinaciones / cálculos + por segundo si la contraseña no está en la lista o un algoritmo simple como x0=1;x1=X0+1;xn=x(n-1)+1.Y parece que hay un factor de tiempo adicional si se usan letras que no están en inglés

Marifarm IT
fuente
Bueno, inicialmente pensé en publicarlo allí, pero juzgando la pregunta por lo que estoy buscando, encontré que este es el sitio más relevante y preciso para publicar. Además, su información se dirige por el camino correcto, pero soy el más interesado en hacer mi propio algoritmo para realizar tal estimación.
Thomas Gerot
Si intenta escribir su propio algoritmo, tal vez intente paso a paso. Primero intente escribir el algoritmo para números + letras en inglés (minúsculas + mayúsculas) y luego, tal vez maneje listas o al menos hasta 10 o 100 contraseñas populares que sean aciertos instantáneos. Luego ve a manejar caracteres especiales y otros idiomas.
Marifarm IT
tal vez eche un vistazo a este cubicspot.blogspot.si/2011/11/ ... tiene una explicación sobre qué contraseñas son buenas o malas
Marifarm IT