Ataques de fuerza bruta

Los ataques de fuerza bruta son llevados a cabo por hackers que intentan descifrar una contraseña simplemente probando diferentes combinaciones de caracteres en rápida sucesión. El algoritmo es muy simple y se limita a probar el mayor número posible de combinaciones de caracteres, por lo que también se denomina "búsqueda exhaustiva". El atacante suele utilizar una computadora de alto rendimiento, que realiza una gran cantidad de cálculos por segundo y, en consecuencia, puede probar un gran número de combinaciones en el menor tiempo posible.

El método suele usarse en la práctica con éxito, ya que muchos usuarios utilizan contraseñas cortas, que suelen consistir únicamente en las letras del alfabeto, lo que reduce drásticamente el número de combinaciones posibles y facilita las adivinanzas.

Descifrado de contraseñas

El Desafío RC5 de la organización Distributed.net muestra lo rápido que se pueden descifrar las contraseñas. El objetivo del proyecto es el descifrado de un mensaje, que fue cifrado con una clave de 72 bits. Para ello, se prueban todas las claves posibles hasta encontrar la clave apropiada. Dado que varios usuarios ponen a disposición del proyecto sus capacidades informáticas, actualmente (al 8 de mayo de 2012) se pueden generar más de 800.000 millones de claves por segundo . Los proyectos más antiguos de esta organización descifraron una clave de 56 bits en 250 días y una clave de 64 bits en 1.757 días.

Combinación y longitud de la contraseña

Algunos ejemplos de cálculo ilustrarán la interacción entre la longitud y el tipo de caracteres utilizados en lo que respecta a la seguridad de una contraseña. En los ejemplos de cálculo, se espera una generación de 2.000 millones de claves por segundo, ya que esto corresponde aproximadamente a la velocidad de un solo ordenador muy potente.

Cuando se crea una contraseña, normalmente se dispone de los siguientes caracteres:

  • Números (10 diferentes: 0-9)
  • Letras (52 diferentes: A-Z y a-z)
  • Caracteres especiales (32 diferentes).

El número de combinaciones posibles se calcula mediante la siguiente fórmula:

Combinaciones posibles = número de caracteres posiblesLongitud de la contraseña

Esto da lugar a los siguientes ejemplos de cálculo sin considerar otros factores, como los ataques por diccionario::

La contraseña consiste de Posibles combinaciones El tiempo necesario para desencriptar

5 caracteres
(3 letras minúsculas,
2 números)

365=60.466.176

60.466.176 /
2.000.000.000 =
0,03 segundos

7 caracteres
(1 mayúscula,
6 minúsculas)

527= 1.028.071.702.528

1.028.071.702.528 /
2.000.000.000 =
514 Segundos =
aprox. 9 minutos

8 caracteres
(4 letras minúsculas,
2 caracteres especiales,
2 números)

688= 457.163.239.653.376

457.163.239.653.376 /
2.000.000.000 =
228.581 Segundos =
aprox. 2,6 días

9 caracteres
(2 mayúsculas,
3 minúsculas,
2 números,
2 caracteres especiales)

949= 572.994.802.228.616.704

572.994.802.228.616.704 /
2.000.000.000 =
286.497.401 Segundos =
aprox. 9,1 años

12 caracteres
(3 mayúsculas,
4 minúsculas,
3 caracteres especiales,
2 números)

9412= 475.920.314.814.253.376.475.136

475.920.314.814.253.376.475.136 /
2.000.000.000 =
237.960.157.407.127 Segundos =
aprox. 7,5 millones de años

Se puede ver muy claramente el impacto de la longitud de la contraseña y el uso de diferentes grupos de caracteres en la seguridad de una contraseña.

Protección contra los ataques de fuerza bruta

La única forma de defenderse de los ataques de fuerza bruta es utilizar una compleja contraseña maestra lo suficientemente larga y compuesta por una combinación de letras, caracteres especiales, números y elementos en mayúsculas y minúsculas. Cuanto más compleja y larga sea su contraseña, menor será la probabilidad de que el software utilizado "adivine" por casualidad la combinación elegida, como se puede ver en los anteriores ejemplos de cálculo.

Cuando cree una nueva contraseña en el Password Depot o la haga generar automáticamente mediante el Generador de Contraseñas, verá cuánto tiempo tardaría en descifrar esa contraseña. Password Depot no sólo considera los factores anteriores, como el número de caracteres, sino también otras vulnerabilidades, como la vulnerabilidad a los ataques de diccionario.

Otra forma de dificultar los ataques de fuerza bruta es alargar el tiempo entre dos intentos de acceso (después de introducir una contraseña incorrecta). Como resultado, el ordenador de alto rendimiento del hacker puede ralentizarse a pesar de los numerosos cálculos por segundo de los que teóricamente sería capaz de realizar. Por eso, en el Password Depot el cuadro de diálogo de la contraseña maestra se bloquea durante unos segundos si se introduce una contraseña maestra incorrecta. Si aumenta la frecuencia de contraseñas erróneas que se introducen, este tiempo de espera también aumentará.