Hacking para novatos II: Password Cracking y Guessing

¡Hola seguidores!

Es esta nueva entrada de Hacking para novatos, vamos a aprender a utilizar herramientas para el crackeo de contraseñas, a través de la técnicas denominadas como fuerza bruta y password guessing 😮

Nuestro laboratorio de pruebas

Recordar que este tipo de practicas las realizaremos siempre bajo un entorno controlado y bien aislado. Para ello utilizaremos la siguientes máquinas virtuales:

  • Kali Linux 2017.2
    • NIC A «Red interna»: 192.168.0.19/24
  • Metasploitable 2
    • NIC A «Red interna»: 192.168.0.18/24

Un poco de «chapa»…

¿Qué es password cracking?

El password cracking, es un técnica muy simple basada principalmente en los denominadas, ataques de fuerza brutaEl ataque tiene como objetivo principalmente,  «romper» la contraseña de un usuario. Es decir, consiste en romper cifrados, de forma automatizada, para obtener las credenciales de un usuario.

¿Y password guessing?

Aunque parecido, el password guessing se basa en intentar «adivinar» una contraseña, a partir de la automatización de intentos, haciendo uso de los denominados diccionarios. Es una técnica muy simple y que hoy en dia, es practicamente inutil…

¿Y qué es un diccionario?

Bueno, yo creo que todos sabemos qué es un diccionario… Pero a la hora de hablar de hacking, un diccionario es aquel contenedor o fichero de datos, que contienen cientos o incluso miles de contraseñas. Estas contraseñas, se obtienen a partir del estudio de las mas utilizadas a nivel mundial. Es decir, las típicas como, 1234, admin, password,…

¿Qué herramientas vamos a utilizar ?

Los dos herramientas que utilizaremos para esta practica seran: Hydra y John The Ripper, las dos incluidas en nuestra distrubución Kali Linux.

Hydra nos permite realizar el guessing de cualquier contraseña, a traves de servicios como HTTP, FTP, SSH, POP3, a través de cualquier diccionario que importemos.

En cambio, John The Ripper, es capaz de romper varios algoritmos de cifrado o hash, comparandolo siempre con el diccionario que importemos. Es una herramientas muy util a la hora de comprobar que nuestras contraseñas son lo suficientemente seguras.


Objetivos

Vamos a realizar un ataque dirigido para obtener las credenciales de acceso del usuario luigiasir, y asi, poder hacer el mal (no, mentira…) 🙂 Para ello realizaremos los siguientes pasos:

  • Encontrar máquinas con el servicio SSH activo
  • Obtener credenciales de acceso a SSH
  • Obtener la contraseña de nuestra victima

Usemos la fuerza 🙂

1. Analizando la red en busca de objetivos con nmap

A partir de la herramienta nmap, vamos a obtener direcciones IP en nuestra red local que escuchen peticiones SSH (puerto 22). Para ello utilizamos el comando: nmap -sV -p 22 @network

En mi caso, voy a guardar los resultado en el Escritorio:

nmap.PNG

Como podemos observar en fichero creado, nuestra maquina Metasploitable esta escuchando peticiones al puerto 22.

objetivossh_versionantigua.PNG

Si navegamos un poquito en las zonas oscuras de Internet, podemos obtener un exploit por el cual, una vez conectados al SSH (a través de cualquier usuario), obtendremos privilegios de superusuario. Es decir, escalaremos privilegios.

Si os interesa, os dejo un buen artículo que explica cómo hacerlo aquí. Como nosotros sabemos que Metasploitable utiliza el mismo usuario como password, y ademas el usuario msfadmin es un posible administrador, nos evitamos el paso 🙂

2. Password guessing → Usando Hydra para obtener las credenciales de acceso:

Para realizar el ataque de fuerza bruta, Hydra necesita de un diccionario de dónde obtener posibles contraseñas. Como hemos comentado anteriormente, existen múltiples diccionarios en Internet con miles de las contraseñas mas usadas.

Para agilizar el proceso, vamos a crear un diccionario propio, en el cual escribiremos unas cuantas contraseñas.

diccionario.PNG

Y lanzamos el ataque usando la siguiente sintaxis: Hydra -l «posible usuario» -P «ubicacion del diccionario» «@ip_atacado» ssh

contraseña_ssh_hydra.PNG

En mi caso, he almacenado el resultado en contraseña_ssh. Si contemplamos el fichero…

contraseña_ssh_hydra

Ya tenemos contraseña!!! 🙂

3. Accediendo a SSH y «robando» ficheros 

Una vez tenemos las credenciales para iniciar sesión. Vamos a acceder a SSH y convertirnos a administrador. Como he mencionando anteriormente, la contraseña para volvernos superusuario, es la misma que para acceder al usuario msfadmin, casualidades 😉

ssh_root

Como ya sabemos, John The Ripper, necesita de los ficheros shadow y passwd para calcular la contraseña a partir del hash y el diccionario que importamos nosotros. Por tanto, vamos a cambiar el propietario de los ficheros de root a msfadmin, para poder así, copiarnos estos ficheros a través de scp:

copy_shadow.PNG

passwd.PNG

scp.PNG

Si visualizamos estos dos ficheros:

shadow

passwd1

4. Password cracking → Utilizando John The Ripper para calcular la contraseña

Una vez hemos obtenido los ficheros de usuarios y contraseñas, vamos a calcular esta ultima, a partir del mismo diccionario que utilizamos anteriormente, password.lst

Nuestros usuario objetivo va a ser luigiasirPor tanto, vamos a eliminar el resto de lineas, ya que no nos interesan y únicamente ralentizaran el proceso:

passwd2shadow2

Recordamos que, el diccionario que utilizamos para calcular el hash y compararlo, es un fichero que incluye las contraseñas mas utilizadas. Nosotros hemos creado uno propio anteriormente por simplificar el proceso, y ya incluimos la contraseña para el usuario luigiasir:

luigisecreto.PNG

Una vez tenemos todo preparado, comenzamos el proceso:

  1. Vamos a combinar los dos ficheros obtenidos anteriormente en un solo, a través del comando unshadowfusionado.PNG
  2. Ejecutamos el proceso de John The Ripper pasándole los parámetros correspondientesjohn.PNG
  3. Contemplamos los resultados obtenidosjohn2.PNG

Luigiasir ha sido hackeado 😦

Listo! Ya hemos completado nuestro ataque dirigido al usuario luigiasir. Como hemos podido comprobar, el hackeo de contraseñas a partir de la fuerza bruta y password guessing, son técnicas, poco sutiles, como su propio nombre indicia 🙂

Podemos sacar como conclusión que, para evitar ser victimas de este tipo de ataques, debemos utilizar contraseñas fuertes, compuestas por diferentes caracteres tanto alfanuméricos y especiales outilizar mecanismos de prevención de estos ataques automatizados como el típico captcha.

Es todo por hoy chic@s!! Hasta la próxima 😉

Deja un comentario

Web construida con WordPress.com.

Subir ↑