Hashes, sales y tablas de arcoíris: Confesiones de un …



Comprender algunos conceptos básicos sobre cómo piensan y se comportan los crackers de contraseñas podría ayudarlo a mantener a sus usuarios más seguros.

Si alguna vez ha visto televisión y películas sobre ciberseguridad, probablemente se imagina a alguien sentado en una habitación oscura tratando de adivinar la contraseña de otra persona basándose en algunos datos, como los nombres de sus hijos o su equipo deportivo favorito.

Incluso Señor robotic, conocida por su representación realista de la tecnología, es culpable de mostrar el descifrado de contraseñas de esta manera.

Si bien ocurren ataques dirigidos a personas que utilizan información private e ingeniería social, no son la norma. Estas representaciones pueden dar a las personas una falsa sensación de seguridad porque no creen que sus cuentas sean valiosas o se bloquearían después de algunas conjeturas incorrectas.

En realidad, los ciberdelincuentes generalmente no están adivinando las contraseñas de una persona y las cuentas se bloquean después de ingresar la contraseña incorrecta. Esa no sería una forma muy eficaz o eficiente de acceder a suficientes cuentas para obtener una ganancia sustancial.

Una vez que un sitio ha sido violado, los actores de amenazas a menudo comparten los archivos de los usuarios filtrados desde ese sitio. El archivo normalmente contiene cada línea en la foundation de datos asociada con un usuario, por ejemplo, correo electrónico, nombre de usuario, contraseña_hash, and so forth. Las filtraciones a muchos sitios, grandes y pequeños, se publican en foros de piratería donde otros delincuentes e investigadores de seguridad ética compiten para analizar y descifrar los hash en el archivo.

Un hash es una representación de la contraseña creada después de ejecutarla a través de un algoritmo de hash. Existe una variedad de estos algoritmos (incluidos SHA1, MD5 y Bcrypt) y varían en su complejidad. Cuando la contraseña «123456» tiene hash, puede almacenarse como «e10adc3949ba59abbe56e057f20f883e». Cada contraseña única tiene un hash único, pero cada algoritmo convierte cada contraseña en el mismo hash, asumiendo que no tiene sal. En otras palabras, «123456» siempre se codificará como «e10adc3949ba59abbe56e057f20f883e» con MD5.

A veces, esto se explica como cifrado, pero el cifrado funciona en dos direcciones: cifrado y descifrado. Si conoce el cifrado de algo que está cifrado, puede revertirlo para descifrar los datos. Los hash solo van en una dirección. No puede tomar el hash «e10adc3949ba59abbe56e057f20f883e» e invertir el código para volver a «123456».

En cambio, el descifrado de contraseñas compara dos hashes para encontrar coincidencias. Genera hash utilizando palabras de texto sin formato conocidas para ver si el hash alguna vez coincide con el hash que está tratando de descifrar. Cuando el hash coincide, ha descifrado la contraseña.

En los primeros días, los crackers se basaban en tablas de arco iris, que son listas de hashes y contraseñas de texto sin formato asociadas. Si conocían un hash y querían ver la contraseña asociada, simplemente comparaban los hash conocidos en su tabla de arco iris con los hash de la base de datos para encontrar coincidencias. Pero las mesas de arco iris son increíblemente grandes y requieren mucho espacio en el disco duro.

Una táctica que utilizan las empresas para disuadir los ataques de tablas de arcoíris es agregar caracteres adicionales, llamados sal, al principio o al final de la contraseña antes de que se convierta en hash. La sal es típicamente única para cada usuario, por lo que si dos personas en ese sitio tienen la misma contraseña, sus gross sales serían diferentes, lo que resultaría en diferentes hashes.

Además de las profits, también hay pimientos, un dato aleatorio que se agrega a la contraseña antes de que se procese. A diferencia de las profits, los pimientos no se almacenan en la base de datos con el picadillo. Están codificados en el código fuente del sitio world wide web.

Incluso con profits y pimientos, las contraseñas se pueden descifrar. El éxito de los crackers de contraseñas a menudo se debe al tiempo y la potencia informática. Casi cualquier contraseña, independientemente de su extensión o complejidad, se puede descifrar con suficiente tiempo y potencia de procesamiento.

En su infancia, el descifrado de contraseñas funcionó como expliqué anteriormente. Los crackers de contraseñas usaban CPU para generar matemáticamente posibles hashes. O emparejarían hashes conocidos con las contraseñas en la tabla del arco iris.

Hoy en día, los ataques de fuerza bruta son más comunes. Los crackers usan GPU, que a menudo se asocian con jugadores y mineros de Bitcoin porque, aunque no pueden hacer cálculos matemáticos complicados, pueden ejecutar cálculos simples a gran escala. Una CPU puede realizar cálculos complejos muy rápido, pero está limitada por núcleos e hilos. Una GPU tiene miles de núcleos o miniprocesadores menos complejos que pueden generar un hash muy rápidamente. Donde una CPU puede adivinar 20.000 combinaciones por segundo, una GPU puede hacer 6 millones por segundo.

En un ataque de fuerza bruta, el cracker usaría la GPU para ejecutar todas las combinaciones de letras, números y caracteres hasta encontrar la correcta. Incluso con una sal que lo hace más difícil, una GPU con suficiente tiempo lo romperá si se conoce la sal.

Si comenzaste a leer con la idea de que tu contraseña es sólida e irrompible, espero que ahora tengas una opinión más realista. Nadie puede predecir cuándo un atacante podría robar datos de un sitio en el que tiene una cuenta. Lo mejor que puede hacer es estar preparado para cuando suceda, y es una cuestión de cuándo, no de si. Protéjase con contraseñas únicas de al menos 16 caracteres y una combinación de letras, números y símbolos para cada cuenta, y realice un seguimiento de sus inicios de sesión en un administrador de contraseñas. Y cuando descubra que un sitio que utiliza ha sido violado, tómelo en serio y cambie su contraseña de inmediato.

Keira Stevens es gerente del equipo de Inteligencia Humana (HUMINT) en SpyCloud. Durante más de 10 años, ha trabajado en seguridad de la información en equipos rojos y azules y ha ayudado a las fuerzas del orden a identificar a los delincuentes. El descifrado de contraseñas es un pasatiempo y una pasión para Keira, también … Ver biografía completa

Lectura recomendada:

Más información





Enlace a la noticia original