19Aug

Ataques de fuerza bruta explicados: Cómo todo el cifrado es vulnerable

llave en la cerradura

Los ataques de fuerza bruta son bastante simples de entender, pero difíciles de proteger. El cifrado es matemático y, a medida que las computadoras se vuelven más rápidas en matemáticas, se vuelven más rápidas al probar todas las soluciones y ver cuál encaja.

Estos ataques se pueden usar contra cualquier tipo de cifrado, con diversos grados de éxito. Los ataques de fuerza bruta se vuelven más rápidos y más efectivos con cada día que pasa, a medida que se lanza un hardware de computadora más rápido y nuevo.

Aspectos básicos de la fuerza bruta

Los ataques de fuerza bruta son simples de entender. Un atacante tiene un archivo encriptado, por ejemplo, su base de datos de contraseñas LastPass o KeePass. Saben que este archivo contiene los datos que desean ver, y saben que hay una clave de cifrado que lo desbloquea. Para descifrarlo, pueden comenzar a probar cada contraseña posible y ver si eso da como resultado un archivo descifrado.

Lo hacen automáticamente con un programa informático, por lo que la velocidad a la que alguien puede aumentar el cifrado de la fuerza bruta aumenta a medida que el hardware informático disponible se vuelve cada vez más rápido, capaz de hacer más cálculos por segundo. El ataque de fuerza bruta probablemente comenzaría con contraseñas de un dígito antes de pasar a contraseñas de dos dígitos, y así sucesivamente, probando todas las combinaciones posibles hasta que uno funcione.

Un "ataque de diccionario" es similar e intenta palabras en un diccionario, o una lista de contraseñas comunes, en lugar de todas las contraseñas posibles. Esto puede ser muy efectivo, ya que muchas personas usan contraseñas tan débiles y comunes.

Por qué los atacantes no pueden hacer fuerza bruta en los servicios web

Hay una diferencia entre los ataques de fuerza bruta en línea y fuera de línea. Por ejemplo, si un atacante quiere abrirse paso a fuerza bruta en su cuenta de Gmail, puede comenzar a probar todas las posibles contraseñas, pero Google las cortará rápidamente. Los servicios que brindan acceso a tales cuentas limitarán los intentos de acceso y prohibirán las direcciones IP que intentan iniciar sesión tantas veces. Por lo tanto, un ataque contra un servicio en línea no funcionaría demasiado bien porque se pueden hacer muy pocos intentos antes de que se detenga el ataque.

Por ejemplo, después de unos pocos intentos de inicio de sesión fallidos, Gmail le mostrará una imagen de CATPCHA para verificar que no es una computadora que está tratando automáticamente las contraseñas. Es probable que detengan completamente sus intentos de inicio de sesión si lograron continuar durante el tiempo suficiente.

gmail-captcha

Por otro lado, digamos que un atacante enganchó un archivo cifrado de su computadora o logró poner en peligro un servicio en línea y descargar dichos archivos cifrados. El atacante ahora tiene los datos cifrados en su propio hardware y puede probar tantas contraseñas como desee en su tiempo libre. Si tienen acceso a los datos encriptados, no hay manera de evitar que prueben una gran cantidad de contraseñas en un corto período de tiempo. Incluso si usa una encriptación fuerte, es beneficioso para usted mantener sus datos seguros y asegurar que otros no puedan acceder a ellos.

Hashing

Los fuertes algoritmos hash pueden ralentizar los ataques de fuerza bruta. Básicamente, los algoritmos de hash realizan un trabajo matemático adicional en una contraseña antes de almacenar un valor derivado de la contraseña en el disco. Si se usa un algoritmo hash más lento, requerirá miles de veces más trabajo matemático probar cada contraseña y ralentizar dramáticamente los ataques de fuerza bruta. Sin embargo, cuanto más trabajo se requiere, más trabajo debe hacer un servidor u otra computadora cada vez que el usuario inicia sesión con su contraseña. El software debe equilibrar la resiliencia contra los ataques de fuerza bruta con el uso de recursos.

Velocidad de fuerza bruta

La velocidad depende del hardware. Las agencias de inteligencia pueden construir hardware especializado solo para ataques de fuerza bruta, al igual que los mineros de Bitcoin construyen su propio hardware especializado optimizado para la minería de Bitcoin. Cuando se trata de hardware de consumo, el tipo más efectivo de hardware para ataques de fuerza bruta es una tarjeta gráfica( GPU).Como es fácil probar muchas claves de cifrado diferentes a la vez, muchas tarjetas gráficas que se ejecutan en paralelo son ideales.

A fines de 2012, Ars Technica informó que un clúster de 25 GPU podría descifrar cada contraseña de Windows con 8 caracteres en menos de seis horas. El algoritmo NTLM que Microsoft usó simplemente no era lo suficientemente resistente. Sin embargo, cuando se creó NTLM, habría llevado mucho más tiempo probar todas estas contraseñas. Esto no se consideró una amenaza suficiente para que Microsoft fortaleciera el cifrado.

La velocidad va en aumento, y en unas pocas décadas podemos descubrir que incluso los algoritmos criptográficos y claves de encriptación más fuertes que usamos hoy en día pueden ser rápidamente descifrados por computadoras cuánticas o cualquier otro hardware que usemos en el futuro.

25-gpu-password-cracking-cluster

Protección de sus datos contra ataques de fuerza bruta

No hay forma de protegerse por completo. Es imposible decir qué tan rápido se obtendrá el hardware de la computadora y si alguno de los algoritmos de encriptación que usamos hoy tiene puntos débiles que serán descubiertos y explotados en el futuro. Sin embargo, estos son los conceptos básicos:

  • Mantenga sus datos cifrados a salvo donde los atacantes no puedan tener acceso. Una vez que copian sus datos a su hardware, pueden intentar ataques de fuerza bruta contra él en su tiempo libre.
  • Si ejecuta cualquier servicio que acepte inicios de sesión a través de Internet, asegúrese de que limita los intentos de inicio de sesión y bloquea las personas que intentan iniciar sesión con muchas contraseñas diferentes en un corto período de tiempo. El software del servidor generalmente está configurado para hacer esto de manera inmediata, ya que es una buena práctica de seguridad.
  • Utiliza algoritmos de cifrado potentes, como SHA-512.Asegúrese de no utilizar algoritmos de cifrado antiguos con debilidades conocidas que sean fáciles de descifrar.
  • Use contraseñas largas y seguras. Toda la tecnología de encriptación en el mundo no ayudará si está usando "contraseña" o el siempre popular "hunter2".

Los ataques de fuerza bruta son algo a lo que preocuparse cuando protege sus datos, elige algoritmos de encriptación y selecciona contraseñas. También son una razón para seguir desarrollando algoritmos criptográficos más sólidos: el cifrado debe mantenerse al día con la rapidez con la que el hardware nuevo lo vuelve ineficaz. Crédito de imagen

: Johan Larsson en Flickr, Jeremy Gosney