Cracker de contraseñas: ¿Cómo descifrar (piratear) una contraseña

Cracker de contraseñas: ¿Cómo descifrar (piratear) una contraseña?

¿Qué es el descifrado de contraseñas?

Descifrar contraseñas es el proceso de intentar obtener acceso no autorizado a sistemas restringidos utilizando contraseñas comunes o algoritmos que adivinan contraseñas. En otras palabras, es un arte de obtener la contraseña correcta que da acceso a un sistema protegido por un método de autenticación.

El descifrado de contraseñas emplea una serie de técnicas para lograr sus objetivos. El proceso de descifrado puede implicar comparar las contraseñas almacenadas con la lista de palabras o utilizar algoritmos para generar contraseñas que coincidan.

En este tutorial, le presentaremos las técnicas comunes para descifrar contraseñas y las contramedidas que puede implementar para proteger los sistemas contra dichos ataques.

¿Qué es la seguridad de la contraseña?

La seguridad de la contraseña es la medida de la eficiencia de una contraseña para resistir ataques de descifrado de contraseñas . La seguridad de una contraseña está determinada por;

  • Longitud : el número de caracteres que contiene la contraseña.
  • Complejidad : ¿utiliza una combinación de letras, números y símbolos?
  • Imprevisibilidad : ¿es algo que un atacante puede adivinar fácilmente?

Veamos ahora un ejemplo práctico. Usaremos tres contraseñas, a saber

1. contraseña

2. contraseña 1

3. #contraseña 1$

Para este ejemplo, usaremos el indicador de seguridad de contraseña de Cpanel al crear contraseñas. Las imágenes a continuación muestran la seguridad de cada una de las contraseñas enumeradas anteriormente.

seguridad de la contraseña

Nota : la contraseña utilizada es contraseña, la fuerza es 1 y es muy débil.

seguridad de la contraseña

Nota : la contraseña utilizada es contraseña 1, la seguridad es 28 y aún es débil.

seguridad de la contraseña

Nota : La contraseña utilizada es #contraseña 1$, la seguridad es 60 y es segura.

Cuanto mayor sea el número de seguridad, mejor será la contraseña.

Mira Tambien¿Diferencia entre virus, gusanos y caballos de Troya?¿Diferencia entre virus, gusanos y caballos de Troya?

Supongamos que tenemos que almacenar nuestras contraseñas anteriores utilizando cifrado md5. Usaremos un generador de hash md5 en línea para convertir nuestras contraseñas en hashes md5.

La siguiente tabla muestra los hashes de contraseña.

ContraseñaHash MD5Indicador de fuerza del panel
contraseña5f4dcc3b5aa765d61d8327deb882cf991
contraseña 17c6a180b36896a0a8c02787eeafb0e4c28
#contraseña 1$29e08fb7103c327d68327f23d8d9256c60

Ahora usaremos http://www.md5this.com/para descifrar los hashes anteriores. Las imágenes a continuación muestran los resultados de descifrado de contraseñas para las contraseñas anteriores.

Resultados de descifrado de contraseñas
Resultados de descifrado de contraseñas
Resultados de descifrado de contraseñas

Como puede ver en los resultados anteriores, logramos descifrar la primera y la segunda contraseña que tenían números de seguridad más bajos. No logramos descifrar la tercera contraseña, que era más larga, compleja e impredecible. Tenía un número de fuerza más alto.

¿Cómo Funciona el Hash de Contraseñas?

El hash de contraseñas es un proceso que convierte una contraseña en una cadena de caracteres única utilizando un algoritmo criptográfico. Cuando un usuario crea una contraseña, esta es procesada por la aplicación para generar un valor hash, que se almacena en la base de datos. El resultado es un conjunto de caracteres de longitud fija, representado en bits, la unidad mínima de datos que un ordenador puede gestionar.

Cuando el usuario intenta iniciar sesión, el sistema vuelve a aplicar el algoritmo de hash a la contraseña que se ingresa y compara el resultado con el valor almacenado en la base de datos. Si coinciden, la autenticación es exitosa y se permite el acceso.

Veamos un ejemplo para entender cómo funciona. Supongamos que eliges la contraseña «hAsh! nGisC00L» y la sometes a un algoritmo de hash como MD5. El resultado es «5d640ca634edfaa17813cab1492208f2», un conjunto de caracteres que no revela nada sobre la contraseña original.

Un aspecto importante del hash de contraseñas es su sensibilidad a cambios mínimos. Si modificas la contraseña, por ejemplo, cambiando «!» por «i», y la vuelves a hashear, el resultado será completamente diferente. El nuevo valor podría ser «1c70088b4b9c650d49fd3ee04349dfb9», mostrando que incluso una pequeña alteración en la entrada cambia por completo el valor hash.

¿Qué Significa Salar una Contraseña?

Aunque el hash es un método robusto para asegurar contraseñas, los ciberdelincuentes pueden utilizar técnicas avanzadas para descifrarlo. Una estrategia para aumentar la seguridad es «salar» las contraseñas.

«Salar» en este contexto no tiene nada que ver con la cocina. Se refiere a agregar una cadena de caracteres aleatoria y única a la contraseña antes de aplicar el hash. Esta «sal» adicional complica el proceso de descifrado y dificulta la tarea de los atacantes. Con la adición de una sal, incluso si dos usuarios tienen la misma contraseña, sus valores hash serán distintos, lo que brinda una capa adicional de seguridad.

Este método de salado aumenta la robustez de las contraseñas sin dificultar su uso por parte de los usuarios. Es una estrategia esencial para proteger las bases de datos de contraseñas contra ataques de fuerza bruta y ataques de diccionario.

Técnicas para descifrar contraseñas

Hay una serie de técnicas que se pueden utilizar para descifrar contraseñas . A continuación describiremos los más utilizados;

  • Ataque de diccionario : este método implica el uso de una lista de palabras para compararlas con las contraseñas de los usuarios.
  • Ataque de fuerza bruta : este método es similar al ataque de diccionario. Los ataques de fuerza bruta utilizan algoritmos que combinan caracteres alfanuméricos y símbolos para generar contraseñas para el ataque. Por ejemplo, una contraseña con el valor «contraseña» también se puede probar como p@$$word usando el ataque de fuerza bruta.
  • Ataque de tabla Rainbow : este método utiliza hashes precalculados. Supongamos que tenemos una base de datos que almacena contraseñas como hashes md5. Podemos crear otra base de datos que tenga hashes md5 de contraseñas de uso común. Luego podemos comparar el hash de contraseña que tenemos con los hashes almacenados en la base de datos. Si se encuentra una coincidencia, entonces tenemos la contraseña.
  • Adivina : como sugiere el nombre, este método implica adivinar. Contraseñas cómo qwerty, contraseña, admin, etc. se utilizan comúnmente o se configuran como contraseñas predeterminadas. Si no se han modificado o si el usuario es descuidado al seleccionar las contraseñas, pueden verse comprometidas fácilmente.
  • Spidering : la mayoría de las organizaciones utilizan contraseñas que contienen información de la empresa. Esta información se puede encontrar en los sitios web de la empresa, redes sociales como Facebook, Twitter, etc. Spidering recopila información de estas fuentes para elaborar listas de palabras. Luego, la lista de palabras se utiliza para realizar ataques de diccionario y de fuerza bruta.

Lista de palabras de ataque de diccionario de muestra de Spidering

1976 <año de nacimiento del fundador>

Mira Tambien¿Qué es el envenenamiento por ARP (ARP Spoofing)?¿Qué es el envenenamiento por ARP (ARP Spoofing)?

smith jones <nombre del fundador>

acme <nombre de la empresa/iniciales>

construido|hasta|las últimas <palabras en la visión/misión de la empresa>

golf|ajedrez|fútbol <aficiones de los fundadores

Herramientas para descifrar contraseñas

Estos son programas de software que se utilizan para descifrar contraseñas de usuarios . Ya vimos una herramienta similar en el ejemplo anterior sobre la seguridad de las contraseñas. El sitio web http://www.md5this.com/utiliza una tabla de arcoíris para descifrar contraseñas. Ahora veremos algunas de las herramientas más utilizadas.

1) John the Ripper

John the Ripper usa el símbolo del sistema para descifrar contraseñas. Esto lo hace adecuado para usuarios avanzados que se sienten cómodos trabajando con comandos. Utiliza una lista de palabras para descifrar contraseñas. El programa es gratuito, pero es necesario comprar la lista de palabras. Tiene listas de palabras alternativas gratuitas que puedes utilizar. Visite el sitio web del producto https://www.openwall.com/john/ para obtener más información y cómo utilizarlo.

2) Caín y Abel

Caín y Abel se ejecutan en Windows. Se utiliza para recuperar contraseñas de cuentas de usuario, recuperación de contraseñas de Microsoft Access, rastreo de redes, etc. A diferencia de John the Ripper, Cain & Abel utiliza una interfaz gráfica de usuario. Es muy común entre los novatos y los guionistas debido a su simplicidad de uso. Visite el sitio web del producto https://sectools.org/tool/cain/ para obtener más información y cómo utilizarlo.

3) Ophcrack

Ophcrack es un descifrador de contraseñas de Windows multiplataforma que utiliza tablas de arcoíris para descifrar contraseñas. Se ejecuta en Windows, Linux y Mac OS. También cuenta con un módulo para ataques de fuerza bruta entre otras características. Visite el sitio web del producto https://ophcrack.sourceforge.io/ para obtener más información y cómo utilizarlo.

mSpy

Con mspy , una aplicación de registro de pulsaciones de teclas, puedes observar discretamente todas las palabras que alguien escribe sin necesidad de estar físicamente presente. Esta herramienta le permite realizar un seguimiento de cada pulsación de tecla y toque en un dispositivo, así como monitorear aplicaciones de chat populares como WhatsApp, Instagram, Tinder, Snapchat y Viber. Vea sin esfuerzo todos los mensajes de texto y mensajes instantáneos, y utilice el rastreador GPS integrado para localizar la posición de un dispositivo.

¿Cómo protegerse contra ataques de descifrado de contraseñas?

  • Una organización puede utilizar los siguientes métodos para reducir las posibilidades de que se descifren las contraseñas.
  • Evite contraseñas cortas y fácilmente predecibles
  • Evite el uso de contraseñas con patrones predecibles como 11552266.
  • Las contraseñas almacenadas en la base de datos siempre deben estar cifradas. Para cifrados md5, es mejor salar los hashes de contraseñas antes de almacenarlos. La salazón implica agregar alguna palabra a la contraseña proporcionada antes de crear el hash.
  • La mayoría de los sistemas de registro tienen indicadores de seguridad de contraseñas; las organizaciones deben adoptar políticas que favorezcan números altos de seguridad de contraseñas.

Actividad de piratería: ¡Hackea ahora!

En este escenario práctico, vamos a descifrar una cuenta de Windows con una simple contraseña . Windows utiliza hashes NTLM para cifrar contraseñas . Usaremos la herramienta de cracker NTLM en Caín y Abel para hacer eso.

Cain and Abel cracker se puede utilizar para descifrar contraseñas usando;

  • Ataque de diccionario
  • Fuerza bruta
  • Criptoanálisis

Usaremos el ataque de diccionario en este ejemplo. Deberá descargar la lista de palabras de ataque del diccionario aquí 10k-Most-Common.zip

Para esta demostración, hemos creado una cuenta llamada Cuentas con la contraseña qwerty en Windows 7.

Actividad de piratería

Cómo descifrar una contraseña

Paso 1) Abre Caín y Abel.

Mira TambienTutorial de Wireshark: Rastreador de Redes y ContraseñasTutorial de Wireshark: Rastreador de Redes y Contraseñas

Obtendrá la siguiente pantalla principal.

Descifrar una contraseña

Paso 2) Busque el botón Agregar.

Asegúrese de que la pestaña Cracker esté seleccionada como se muestra arriba y haga clic en el botón Agregar en la barra de herramientas.

Descifrar una contraseña

Paso 3) Verifique el cuadro de diálogo.

Aparecerá la siguiente ventana de diálogo. Importe usuarios locales y haga clic en el botón siguiente.

Descifrar una contraseña

Paso 4) Las cuentas de usuario locales se mostrarán de la siguiente manera.

Tenga en cuenta que los resultados mostrados serán de las cuentas de usuario en su máquina local.

Descifrar una contraseña

Paso 5) Haz clic derecho en la cuenta que deseas descifrar.

Para este tutorial, usaremos Cuentas como cuenta de usuario.

Descifrar una contraseña

Paso 6) Verifique la siguiente pantalla.

Haga clic derecho en la sección del diccionario y seleccione Agregar al menú de la lista como se muestra arriba.

Descifrar una contraseña

Paso 7) Examinar archivo.

Busque los 10.000 archivos.txt más comunes que acaba de descargar

Descifrar una contraseña

Paso 8) Verifique los resultados.

Mira TambienCómo descifrar la contraseña de WiFi (Hackear red Wi-Fi)Cómo descifrar la contraseña de WiFi (Hackear red Wi-Fi)

Si el usuario utilizó una contraseña simple como qwerty, entonces debería poder obtener los siguientes resultados.

Descifrar una contraseña
  • Nota : el tiempo necesario para descifrar la contraseña depende de la seguridad, la complejidad y la potencia de procesamiento de la contraseña de su máquina.
  • Si la contraseña no se descifra mediante un ataque de diccionario, puede intentar ataques de fuerza bruta o criptoanálisis.

Resumen

  • Descifrar contraseñas es el arte de recuperar contraseñas almacenadas o transmitidas.
  • La seguridad de la contraseña está determinada por la longitud, la complejidad y la imprevisibilidad del valor de una contraseña.
  • Las técnicas de contraseñas comunes incluyen ataques de diccionario, fuerza bruta, tablas de arco iris, arañas y craqueo.
  • Las herramientas para descifrar contraseñas simplifican el proceso de descifrar contraseñas.

Nos vemos en la siguiente lección

Deja un comentario