Conseguir login por fuerza bruta con Medusa.

Iniciado por Cl0udswX, Enero 30, 2014, 02:38:39 PM

Tema anterior - Siguiente tema

0 Miembros y 1 Visitante están viendo este tema.

Enero 30, 2014, 02:38:39 PM Ultima modificación: Agosto 09, 2014, 09:52:48 AM por Expermicid
Saludos inmensos a todos los que formamos parte de esta maravillosa comunidad de underc0de, acá les traigo este humilde aporte a todos los underc0ders.

  En el camino de la informática y la seguridad sucede que tarde o temprano tendremos que acceder a la configuración de algún router por medio de la interfaz web del mismo al que ya estemos previamente conectados, pero en algunos casos sucederá que no tenemos la combinación correcta entre "usuario" y "contraseña" así que solo nos queda recurrir a la fuerza bruta, a estas alturas todos  ó casi todos sabemos de una u otra forma lo que es la fuerza bruta  y como funciona, pero para los mas que no lo sepan les dire que según wikipedia:

"En criptografía, se denomina ataque de fuerza bruta a la forma de recuperar una clave probando todas las combinaciones posibles hasta encontrar aquella que permite el acceso."

Pues dicho esto viene a la mente:

Cuales herramientas tengo a mi alcance para auditar la seguridad de un router?

Pues existen un catalogo amplio y extenso de donde escoger como por ejemplo L0phtCrack, Brutus,  THC-Hydra,Patator, Cain/Abel, Medusa, etc... Siendo Hydra uno de los mas famosos y utilizados debido a su gran cantidad de documentación disponible, en este caso quisiera hacerlo usando medusa la cual a pesar de tener soporte para menos protocolos que Hydra me gusta mucho por la sencillez de su gramática así como su estabilidad.



Aclarados los conceptos básicos continuamos, así que manos a la obra!!

Escenario.

**Equipo corriendo Linux Mint XFCE
**Router con dirección IP privada 192.168.1.1
**Conectado via Ethernet.

Desde el ordenador intentaremos entrar a la configuración del router escribiendo la dirección IP (192.168.1.1)  en el navegador, con lo cual nos debe saltar un formulario de login parecido a este:



Si sabes de antemano cual es la combinación correcta de "usuario" y "contraseña" entonces no tiene ningún sentido que estes leyendo esto, asi que gracias por tu tiempo y adiós.  :silbar: En cambio si no tienes ni la mas remota idea de cual puede ser esa combinación entonces continuemos y agarra tu terminal.

Lo primero que debemos hacer obviamente es instalarlo, lo cual es tan sencillo como escribir en una terminal:

Código: php
cloudswx@cloudswx-lab ~ $ sudo apt-get install medusa


Después de instalarlo seria muy interesante saber cuales protocolos tienen soporte, lo cual se consigue escribiendo "medusa -d"



Como podemos ver en la imagen medusa tiene soporte para HTTP.

Código: php
+ http.mod : Brute force module for HTTP : version 2.0


Llegados a este punto les diré que existen 3 posibles circunstancias para forzar el acceso de un router y cualquier otro formulario login, así que para cada caso expondré una solución distinta.

1.- Si conocemos el usuario pero nos falta la contraseña.

En este caso tendremos la mitad del problema resuelto y la otra mitad la resolveremos usando medusa en combinación con un diccionario. (La fuerza bruta se hace a base No tienes permitido ver los links. Registrarse o Entrar a mi cuenta que contengan las posibles combinaciones), medusa puede ser alimentado de diccionarios tanto para forzar el usuario como la contraseña. Así que para este caso en particular la sintaxis del ataque sera la siguiente:

Código: php
cloudswx@cloudswx-lab ~ $ medusa -h 192.168.1.1 -u admin -P dic-0294.txt -M http


-h Con esta opción especificamos el host que deseamos auditar
-u Esta opción especifica que ya sabemos el nombre de usuario. (para este caso admin)
-P con esta opción le decimos a medusa que debe encontrar el password en un diccionario, en este caso "dic-0294.txt" (especificando la ruta completa).
-M Esta opcion indica sobre cual protocolo queremos auditar.

Con lo cual si el password se encuentra conseguiremos..



2.- Si conocemos el password pero no tenemos el usuario entonces tenemos que modificar la sintaxis del ataque de la siguiente forma:

Código: php
cloudswx@cloudswx-lab ~ $ medusa -h 192.168.1.1 -U dic-0294.txt -p 1234 -M http


-h El host que deseamos auditar
-U Con esto le decimos que debe buscar el usuario desde un diccionario (-u minuscula indica el usuario a usar, -U en mayuscula indica que debe buscar en un diccionario)
-p Le dice a medusa que no debe buscar el password y se le especifica posteriormente (-p en minuscula indica el password a utilizar, -P en mayuscula indica que debe buscar el correcto en un diccionario).
-M Esta opcion indica sobre cual protocolo queremos auditar.

3.- Si no conocemos ninguno de los valores entonces medusa debe hacer todo el trabajo por nosotros, es decir debe buscar la combinación correcta de "usuario" y "password". La sintaxis es la siguiente:

Código: php
cloudswx@cloudswx-lab ~ $ medusa -h 192.168.1.1 -U userlist.txt -P passwordlist.txt -M http


Al ser ataque por ferza bruta la tasa de éxito dependerá en gran parte de 2 factores:
a.) La robustez de la combinación entre "usuario" y "password"
b.) La eficacia del diccionario que estemos utilizando.

En un siguiente articulo les mostrare como generar diccionarios a nuestra medida  para ser utilizados en este tipo de auditorias ya que por ejemplo algunas personas usan palabras que muy difícilmente estarán en un diccionario de esos que nos bajamos de la web.


No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
El talento se parece al tirador que da en un blanco que los demás no pueden alcanzar; el genio se parece al tirador que da en un blanco que los demás no pueden ver.


Mega aporte!!
Excelente trabajo bro! Como siempre!


Gracias Antrax!!
El talento se parece al tirador que da en un blanco que los demás no pueden alcanzar; el genio se parece al tirador que da en un blanco que los demás no pueden ver.


Hola a todos y enhorabuena por este magnífico foro.

En cuanto a los diccionarios, se podrían utilizar varios a la vez? Algún buen sitio para descargar diccionarios actuales?
Gracias y a seguir así.

@gallok

Google es bueno para dar con paginas buenas que te briandan diccionarios actualizados.

PD: Buen aporte CloudswX

Un saludo
Ralph wiggum

En cuanto a los diccionarios esto esta bien

No tienes permitido ver los links. Registrarse o Entrar a mi cuenta
RollthBuen hacker mejor No tienes permitido ver los links. Registrarse o Entrar a mi cuenta/No tienes permitido ver los links. Registrarse o Entrar a mi cuenta

Acá hay algunos mas: No tienes permitido ver los links. Registrarse o Entrar a mi cuenta


Saludos.

Busca en el tutorial donde dice:

CitarLa fuerza bruta se hace a base diccionarios

Si clickeas en la palabra diccionarios te llevara a una pagina donde hay algunos muy buenos.

Actualmente estoy trabajando en un tuto de como generar nuestros propios diccionarios, asi como alimentar el proceso de fuerza bruta con jhon the ripper, es decir sin descargar diccionarios, Jhon generando y alimentando a medusa en tiempo real.

Lo de usar varios diccionarios no estoy seguro pero tan pronto llegue a mi equipo probare la opcion *.txt a ver si es posible, ya que en la mayoria de las aplicaciones por terminal usando el operador "*" podemos especificar uno o mas archivos. Tan pronto averigue te respondere por aqui mismo.

CitarPD: Buen aporte CloudswX

Gracias Squirtle, saludos por alla tambien.
El talento se parece al tirador que da en un blanco que los demás no pueden alcanzar; el genio se parece al tirador que da en un blanco que los demás no pueden ver.