Cómo intentar descifrar una contraseña usted mismo para comprobar su seguridad

El artículo probó 3 contraseñas diferentes con una herramienta de descifrado de contraseñas de código abierto para descubrir qué método funciona realmente cuando se trata de seguridad de contraseñas.

Tabla de contenido

¿Qué es el descifrado de contraseñas?

Cómo intentar descifrar una contraseña usted mismo para comprobar su seguridad

Cuando crea una cuenta en un servicio en línea, el proveedor generalmente encripta su información de inicio de sesión en sus servidores. Esto se hace utilizando un algoritmo para crear un "hash", una cadena aleatoria aparentemente única de letras y números para su contraseña. Por supuesto, no es realmente aleatorio, sino una cadena de caracteres muy específica que sólo tu contraseña puede generar, pero para el ojo inexperto parece un desastre.

Convertir una palabra en un hash es mucho más rápido y sencillo que "decodificar" el hash nuevamente en una palabra. Entonces, cuando usted establece una contraseña, el servicio en el que inicia sesión ejecuta su contraseña a través de un hash y almacena el resultado en sus servidores.

Si este archivo de contraseña se filtra, los piratas informáticos intentarán descubrir su contenido descifrando la contraseña. Dado que cifrar contraseñas es más rápido que descifrarlas, los piratas informáticos configurarán un sistema que tome las contraseñas potenciales como entrada, las cifre utilizando el mismo método que el servidor y luego compare los resultados con una base de datos de contraseñas.

Si el hash de una contraseña potencial coincide con cualquier entrada en la base de datos, el hacker sabe que cada intento coincide con la contraseña potencial probada.

Cómo descifrar tus propias contraseñas usando HashCat

Intente descifrar algunas de las contraseñas generadas en el artículo para ver lo fácil que es. Para ello, el ejemplo utilizará Hashcat , una herramienta de descifrado de contraseñas gratuita y de código abierto que cualquiera puede utilizar.

Para estas pruebas, el ejemplo descifrará las siguientes contraseñas:

  • 123456 : Una contraseña clásica y una pesadilla de ciberseguridad, 123456 es la contraseña más utilizada en el mundo . NordPass calculó que 3 millones de cuentas usaban 123456 como contraseña, incluidas 1,2 millones que protegían cuentas de nivel corporativo.
  • ¡Susan48! :Una contraseña que sigue patrones que la mayoría de los usuarios usarían para crear contraseñas seguras. En general, esto cumple con los criterios de protección de contraseña básica, pero, como exploraremos más adelante, tiene algunas debilidades importantes que pueden explotarse.
  • t9^kJ$2q9a : una contraseña generada usando la herramienta de Bitwarden. Está configurado para generar una contraseña de 10 caracteres con letras mayúsculas y minúsculas, símbolos y números.

Ahora, encripte la contraseña usando MD5. Así es como se verían las contraseñas si estuvieran en un archivo de contraseñas guardado:

  • 123456 : e10adc3949ba59abbe56e057f20f883e
  • ¡Susan48! :df1ce7227606805745ee6cbc644ecbe4
  • t9^kJ$2q9a : 450e4e0ad3ed8766cb2ba83081c0a625

Ahora, es el momento de descifrarlos.

Realizar un jailbreak simple usando el método de ataque de diccionario

Cómo intentar descifrar una contraseña usted mismo para comprobar su seguridad

Para comenzar, realicemos un ataque de diccionario, uno de los métodos de ataque de contraseña más comunes. Se trata de un ataque simple en el que el hacker toma una lista de contraseñas potenciales, le pide a Hashcat que las convierta a MD5 y ve si alguna de las contraseñas coincide con las 3 entradas anteriores. Para esta prueba, utilizaremos el archivo "rockyou.txt" como nuestro diccionario, que es una de las mayores filtraciones de contraseñas de la historia.

Para comenzar a descifrar, el autor del artículo fue a la carpeta Hashcat, hizo clic derecho en un espacio vacío y presionó Abrir en Terminal . Ahora que la Terminal está abierta y configurada en el directorio Hashcat, invoque la aplicación Hashcat con el siguiente comando:

.\hashcat -m 0 -a 0 passwordfile.txt rockyou.txt -o results.txt

Esto es lo que hace el comando:

  • .\hashcat llama a Hashcat.
  • -m 0 : especifica el tipo de codificación a utilizar. Este caso utilizará MD5, listado como 0 en la documentación de ayuda de Hashcat.
  • -a 0 : Especifica el ataque a realizar. La documentación de ayuda de Hashcat enumera el Ataque de diccionario como un cero, por eso lo llamamos así aquí.
  • passwordfile.txt rockyou.txt : El primer archivo contiene las 3 contraseñas cifradas que configuramos anteriormente. El segundo archivo es la base de datos completa de contraseñas de rockyou.
  • -o results.txt : Esta variable determina dónde colocamos los resultados. En el comando, coloca las contraseñas descifradas en un archivo TXT llamado "resultados".

Aunque rockyou era enorme, Hashcat los procesó todos en 6 segundos. En el archivo resultante, Hashcat dice que descifró la contraseña 123456, pero las contraseñas Susan y Bitwarden siguen sin descifrarse. Esto se debe a que otra persona usó 123456 en el archivo rockyou.txt, pero nadie más usó la contraseña Susan o Bitwarden, lo que significa que eran lo suficientemente seguras para sobrevivir a este ataque.

Realizar un jailbreak más complejo utilizando ataques de fuerza bruta ocultos

Cómo intentar descifrar una contraseña usted mismo para comprobar su seguridad
Realizar un ataque de fuerza bruta con Hashcat

Los ataques de diccionario son efectivos cuando alguien usa la misma contraseña que se encuentra en una lista grande de contraseñas. Son rápidos y fáciles de implementar, pero no pueden descifrar contraseñas que no están en el diccionario. Por lo tanto, si realmente quieres probar tu contraseña, necesitas utilizar ataques de fuerza bruta.

Si los ataques de diccionario simplemente toman una lista preestablecida y los convierten uno por uno, entonces los ataques de fuerza bruta hacen lo mismo pero con todas las combinaciones imaginables. Son más difíciles de implementar y toman más tiempo, pero eventualmente descifrarán cualquier contraseña. Como veremos pronto, esa capacidad a veces puede llevar mucho tiempo.

Aquí está el comando utilizado para realizar un ataque de fuerza bruta "real":

.\hashcat -m 0 -a 3 target.txt --increment ?a?a?a?a?a?a?a?a?a?a -o output.txt

Esto es lo que hace el comando:

  • -a 3 : Esta variable define el ataque que queremos realizar. La documentación de ayuda de Hashcat enumera los ataques de fuerza bruta como el número 3, por eso se los llama aquí.
  • target.txt : Archivo que contiene la contraseña cifrada que queremos descifrar.
  • --increment : este comando le dice a Hashcat que pruebe todas las contraseñas que tengan un carácter, luego dos, luego tres, etc. hasta que encuentre una coincidencia.
  • ?a?a?a?a?a?a?a?a?a?a?a : Esto se llama "máscara". Las máscaras nos permiten decirle a Hashcat qué caracteres se utilizan en qué posiciones. Cada signo de interrogación especifica una posición de carácter en la contraseña y la letra especifica lo que intentamos en cada posición. La letra "a" representa letras mayúsculas y minúsculas, números y símbolos, por eso esta máscara dice "Prueba todo en cada posición". Esta es una máscara terrible, pero veremos cómo usarla efectivamente más adelante.
  • -o output.txt : Esta variable determina dónde colocamos los resultados. El comando de ejemplo coloca las contraseñas descifradas en un archivo TXT llamado "output".

Incluso con esta pésima máscara, la contraseña 123456 se descifra en 15 segundos. Aunque es la contraseña más común, es una de las más débiles.

Contraseña "Susan48!" Mucho mejor: la computadora dice que tomará 4 días descifrarlo. Sin embargo, hay un problema. ¿Recuerdas cuando el artículo decía que la contraseña de Susan tenía algunos fallos graves? El mayor error es que las contraseñas se construyen de forma predecible.

Al crear contraseñas, a menudo colocamos elementos específicos en lugares específicos. Puedes imaginar que la creadora de la contraseña, Susan, intentó usar "susan" al principio, pero le pidieron que agregara letras mayúsculas y números. Para que fuera más fácil recordarlo, escribieron con mayúscula la primera letra y agregaron números al final. Entonces tal vez un servicio de inicio de sesión solicitó un símbolo, por lo que quien creó la contraseña lo agregó al final.

Entonces, podemos usar la máscara para indicarle a Hashcat que solo pruebe caracteres específicos en lugares específicos para aprovechar lo fácil que es para las personas adivinar al crear contraseñas. En esta máscara, "?u" solo usará letras mayúsculas en esa posición, "?l" solo usará letras minúsculas y "?a" representa cualquier carácter:

.\hashcat -m 0 -a 3 -1 ?a target.txt ?u?l?l?l?l?a?a?a -o output.txt

Con esta máscara, Hashcat descifró la contraseña en 3 minutos y 10 segundos, mucho más rápido que 4 días.

La contraseña de Bitwarden tiene 10 caracteres y no utiliza ningún patrón predecible, por lo que se necesitaría un ataque de fuerza bruta sin ninguna máscara para descifrarla. Desafortunadamente, cuando le pedí a Hashcat que hiciera eso, arrojó un error que decía que el número de combinaciones posibles excede el límite de números enteros. El experto en seguridad informática dice que Bitwarden tardó 3 años en descifrar la contraseña, así que eso es suficiente.

Cómo mantener su cuenta a salvo del robo de contraseñas

Los principales factores que impiden que el artículo descifre la contraseña de Bitwarden son su longitud (10 caracteres) y su imprevisibilidad. Por lo tanto, al crear una contraseña, intente hacerla lo más larga posible y distribuir símbolos, números y letras mayúsculas de manera uniforme a lo largo de la contraseña. Esto evita que los piratas informáticos utilicen máscaras para predecir la ubicación de cada elemento y hace que sea mucho más difícil de descifrar.

Probablemente conozcas los viejos refranes sobre contraseñas como "utilizar una matriz de caracteres" y "hacerla lo más larga posible". Esperamos que sepas por qué la gente recomienda estos consejos útiles: son la diferencia clave entre una contraseña fácil de descifrar y una segura.

Sign up and earn $1000 a day ⋙

Leave a Comment

Diferencia entre un televisor normal y un Smart TV

Diferencia entre un televisor normal y un Smart TV

Los televisores inteligentes realmente han conquistado el mundo. Con tantas funciones excelentes y conectividad a Internet, la tecnología ha cambiado la forma en que vemos televisión.

¿Por qué el congelador no tiene luz pero el refrigerador sí?

¿Por qué el congelador no tiene luz pero el refrigerador sí?

Los refrigeradores son electrodomésticos familiares en los hogares. Los refrigeradores suelen tener 2 compartimentos, el compartimento frío es espacioso y tiene una luz que se enciende automáticamente cada vez que el usuario lo abre, mientras que el compartimento congelador es estrecho y no tiene luz.

2 maneras de solucionar la congestión de la red que ralentiza el Wi-Fi

2 maneras de solucionar la congestión de la red que ralentiza el Wi-Fi

Las redes Wi-Fi se ven afectadas por muchos factores más allá de los enrutadores, el ancho de banda y las interferencias, pero existen algunas formas inteligentes de mejorar su red.

Cómo degradar de iOS 17 a iOS 16 sin perder datos usando Tenorshare Reiboot

Cómo degradar de iOS 17 a iOS 16 sin perder datos usando Tenorshare Reiboot

Si quieres volver a iOS 16 estable en tu teléfono, aquí tienes la guía básica para desinstalar iOS 17 y pasar de iOS 17 a 16.

¿Qué le pasa al cuerpo cuando comes yogur todos los días?

¿Qué le pasa al cuerpo cuando comes yogur todos los días?

El yogur es un alimento maravilloso. ¿Es bueno comer yogur todos los días? Si comes yogur todos los días, ¿cómo cambiará tu cuerpo? ¡Descubrámoslo juntos!

¿Qué tipo de arroz es mejor para la salud?

¿Qué tipo de arroz es mejor para la salud?

Este artículo analiza los tipos de arroz más nutritivos y cómo maximizar los beneficios para la salud del arroz que elija.

Cómo despertarse a tiempo por la mañana

Cómo despertarse a tiempo por la mañana

Establecer un horario de sueño y una rutina para la hora de acostarse, cambiar el despertador y ajustar la dieta son algunas de las medidas que pueden ayudarle a dormir mejor y despertarse a tiempo por la mañana.

Consejos para jugar a Rent Please! Simulación de propietario para principiantes

Consejos para jugar a Rent Please! Simulación de propietario para principiantes

¡Alquiler por favor! Landlord Sim es un juego de simulación para dispositivos móviles iOS y Android. Jugarás como propietario de un complejo de apartamentos y comenzarás a alquilar un apartamento con el objetivo de mejorar el interior de tus apartamentos y prepararlos para los inquilinos.

Últimos códigos de defensa de torres para baños y cómo introducirlos

Últimos códigos de defensa de torres para baños y cómo introducirlos

Obtén el código del juego Bathroom Tower Defense de Roblox y canjéalo por emocionantes recompensas. Te ayudarán a mejorar o desbloquear torres con mayor daño.

Estructura, símbolos y principios de funcionamiento de los transformadores

Estructura, símbolos y principios de funcionamiento de los transformadores

Aprendamos la estructura, los símbolos y los principios de funcionamiento de los transformadores de la forma más precisa.

4 maneras en que la IA está mejorando los televisores inteligentes

4 maneras en que la IA está mejorando los televisores inteligentes

Desde una mejor calidad de imagen y sonido hasta control por voz y más, ¡estas funciones impulsadas por IA hacen que los televisores inteligentes sean mucho mejores!

Por qué ChatGPT es mejor que DeepSeek

Por qué ChatGPT es mejor que DeepSeek

Al principio, la gente tenía grandes esperanzas en DeepSeek. Como chatbot de IA comercializado como un fuerte competidor de ChatGPT, promete capacidades y experiencias de chat inteligentes.

Conoce Fireflies.ai: La secretaria con IA gratuita que te ahorra horas de trabajo

Conoce Fireflies.ai: La secretaria con IA gratuita que te ahorra horas de trabajo

Es fácil pasar por alto detalles importantes cuando se anotan otros elementos esenciales, y tratar de tomar notas mientras se chatea puede ser una distracción. Fireflies.ai es la solución.

Cómo criar Ajolote en Minecraft, domesticar Salamandra en Minecraft

Cómo criar Ajolote en Minecraft, domesticar Salamandra en Minecraft

Axolot de Minecraft será un gran asistente para los jugadores cuando trabajen bajo el agua si saben cómo usarlos.

Configuración del juego para PC A Quiet Place: The Road Ahead

Configuración del juego para PC A Quiet Place: The Road Ahead

La configuración de A Quiet Place: The Road Ahead tiene una calificación bastante alta, por lo que deberás tener en cuenta la configuración antes de decidir descargarla.