Professional Documents
Culture Documents
Blog
Foro
Contacto
Quines somos?
Marcadores
Acceder
Reg
Buscar
Buscar
Encuntranos en
Seguir a @redinfocol
Amigos
Colombia Maztor
El tiempo de procesamiento de un hash depende de muchos factores, uno de estos es la potencia que evala el hash sobre el procesador, por este motivo se hace necesario implementar nuevas soluciones a nuevos algoritmos que hacen la tarea mas difcil pero no imposible de descifrar estos hash. Crear un cluster para el procesamiento distribuido hace esta tarea mas amena y mucho mas agradable tendiendo los tiempos a logartmicos y aumentando la capacidad de respuesta para mltiples escalas de complejidad.
Qu vamos hacer?
En este proyecto utilizaremos un clster en una distro Linux para distribuir el proceso de cracking en diferentes maquinas con el n de lograr un rendimiento mayor que en un solo computador.
Conceptos bsicos
Qu es un clster? Conjuntos o conglomerados de computadoras construidos mediante la utilizacin de componentes de hardware comunes y que se comportan como si fuesen una nica computadora. (Wikipedia) Qu es Cracking? Es un proceso informtico que consiste en descifrar la contrasea de determinadas aplicaciones elegidas por el usuario. Se busca codicar los cdigos de cifrado en todos los mbitos de la informtica. Se trata del rompimiento o desciframiento de claves. (Wikipedia) Qu es Mpi? Es un estndar que dene la sintaxis y la semntica de las funciones contenidas en una biblioteca de paso de mensajes diseada para ser usada en programas que exploten la existencia de mltiples procesadores. (Wikipedia)
Manos a la obra
Para crear este proyecto necesitaremos una distribucin Linux en este caso para comodidad del usuario usaremos Ubuntu 10.10, lo pueden descargar aqu, Para este ejemplo usaremos maquinas virtuales con virtual box para facilitar en entendimiento de lo que se est haciendo.
Hay que recordar que se necesitarn dos maquinas virtuales para esta prueba una que ser el servidor y otro que ser el nodo, las maquinas virtuales tienen que estar conguradas con esta caracterstica:
Lo que debemos hacer es instalar las dos maquinas virtuales Ubuntu 10.10, luego que tengamos instaladas las dos procedemos con abrir una y en ella abrir una terminar y escribir los siguientes paquetes que vamos a instalar. Esta mquina donde descargaremos nuestros paquetes ser nuestro servidor. Paquetes a instalar 1. Jhon the ripper: Es un programa para cracking que aplica fuerza bruta para descifrar contraseas. Es capaz de romper varios algoritmos de cifrado o hash, como DES, SHA-1 y otros. 2. Openssh-server: Es un conjunto de aplicaciones que permiten realizar comunicaciones cifradas a travs de una red, usando el protocolo SSH. Fuecreado como una alternativa libre y abierta al programa Secure Shell, que es software propietario. 3. libmpich1.0-dev: PICH es un programa de biblioteca de desarrollo de libre disposicin implementacin portable de MPI, una norma estndar de paso de mensaje para aplicaciones de memoria distribuida que utilizan computacin paralela. MPICH es software gratuito y disponible para la mayora de sistemas Unix (incluyendo Linux y Mac OS X) y Microsoft Windows. libmpich1.0-dev libmpich-mpd1.0-dev libmpich-shmem1.0-dev mpich2 En resumen para instalar dichos paquetes escribimos en la consola: 1 2 sudo apt-get install libmpich1.0-dev libmpich-mpd1.0-dev libmpich-shmem1.0-dev mpich2 john openssh-server
Con este mini script descargaremos y instalaremos todos los paquetes necesarios para crear nuestro clster para cracking. Ahora lo siguiente es congurar la red del clster para que cada nodo se pueda comunicar entre si, en la misma terminal escribimos 1 gedit /etc/hosts
En ese archivo nos aparecern dos primeras lneas las cuales debemos cambiar la segunda, la direccin ip que aparece (127.0.0.1) por la direccin interna que poseemos, en este caso sino tenemos direccin basta hacer un ifcong para verla.
Ahora para crear una direccin IP con su mscara hacemos dentro de la terminal: 1 sudo ifconfig eth1 192.168.0.3 netmask 255.255.255.0
Donde 192.168.0.3 es la IP de tu maquina. Con esto ya tenemos habilitada nuestra tarjeta de red dentro de la red interna con su respectiva direccin IP. Ahora si cambiamos y guardamos nuestros datos dentro del archivo hosts: 127.0.0.1 localhost 192.168.0.3 virus-laptop servidor Ahora lo que haremos sera crear el ususario cluster con el cual nos comunicaremos con los demas nodos , en la misma consola escribimos: 1 2 3 4 5 6 sudo useradd -m -s /bin/bash cluster //creamos el usuario cluster sudo passwd cluster // creamos la contrasea para el usuario cluster Enter new UNIX password: // Retype new UNIX password: passwd: password updated successfully sudo su - cluster -c "mkdir ~/bin;export PATH=~/bin:$PATH" // Creamos la carpeta en la cual podremos dejar pblico hacia los dems nodos la informacin que se necesite procesar.
Congurando MPICH Creamos un archivo que va hacer nuestro men de conguracin del clster este debe ir en el directorio ~ 1 touch ~/.mpd.conf
Guardamos y listo. Esta conguracin la tenemos que hacer en todos los nodos.
Ahora crearemos el archivo donde estar la informacin de los procesadores de cada nodo , esto servir para que el programa MPICH sepa cuantos procesadores puede utilizar: 1 2 touch ~/mpd.hosts gedit ~/ mpd.hosts
Lo abrimos y escribimos el numero de procesadores que queremos que utilice. Para saber el nmero de procesadores que tiene nuestra PC escribimos en la terminal 1 sudo cat /proc/cpuinfo
De esta forma podemos poner el numero de procesadores deseado para el procesamiento de MPICH. Luego que sepamos cuantos procesadores vamos a poner en la conguracin de mpd.hosts escribimos dentro de este archivo 192.168.0.3:1 en este caso es 1 procesador el que deseamos poner con MPICH. Ahora probaremos si el servidor clster funciona correctamente para eso haremos uso de tres comandos: Mpdboot: Poner en marcha el entorno MPICH2Mpdtrace : devuelve las mquinas que se encuentran dentro del cluster. mpd help : informacin del comando mpdallexit : Apaga el entorno MPICH2 Si todo sale bien podemos continuar con la siguiente etapa sino es porque posiblemente no le hemos dado permiso al archivo ~/mpd.hosts Congurando a Jhonsito (Jhon The Ripper) Vamos a descargar el paquete que permite utilizar a nuestros programas de craking para varios procesadores: 1 cluster@virus-laptop:~$ mkdir source
2 3 4
Para comprobar que el Jhon The Ripper quede bien congurado ejecutamos la siguiente instruccin ubicndonos en la carpeta john-1.7.2-bp17-mpi8/run: 1 john -format=DES test
Movemos todo a la carpeta bin para manejar el jhon de forma ms cmoda 1 mv * ~/bin
Como podemos ver la ejecucin fue satisfactoria y procedemos a continuar congurando los nodos del clster. Ahora debemos congurar los nodos los cuales debern tener la misma contrasea y el mismo usuario que anteriormente llamamos clster. Primero: repetimos la segunda etapa y agregamos esto 1 sudo ifconfig eth1 192.168.0.2 netmask 255.255.255.0
Con esto ya tenemos habilitada nuestra tarjeta de red dentro de la red interna con su respectiva direccin ip. Segundo: pasamos a congurar el MPICH. Todo esto lo haremos desde el usuario clster del servidor
Lo que hicimos all arriba fue crear una llave de identicacin pblica la cual nos servir para que todos los nodos nos reconozcan , ahora el siguiente paso es mandar nuestra llave publica a los dems nodos para que nos reconozcan:
Con esto lo que hicimos fue crear una carpeta para alojar nuestras llaves
Donde dice passphrase colocamos ricteam. Por ltimo abrimos nuestro men de conguracin de clster y ingresamos el nuevo nodo. 1 gedit ~/mpd.hosts
Escribimos dentro :192.168.0.2:0 Scp: es un programa que reemplaza al FTP, y a diferencia de ste, es seguro. Es decir la informacin de usuario y claves, as como el contenido de los archivos transferidos son encriptados antes de ser transferidos para evitar que puedan ser espiados en su paso por la red. Ahora ejecutamos este script: for i in `cut delimiter=: -f1 ~/mpd.hosts`; // desde i vamos a delimiter los campos para que cada maquina copie del servidor el archive mpd.hosts do scp ~/.mpd.conf cluster@$i:~;// para cada uno de las maquinas que posean este usuario haga una copia scp ~/mpd.hosts cluster@$i:~;done // copiamos el archivo mpd.hosts en cada mquina con el usuario cluster
Por ultimo ejecutamos: 1 mpiexec -np 3 john --format:raw-MD5 dato.txt // manda seal a cada nodo para que haga el trabajo uno por parte del archivo pero todos al mismo tiempo.
Por 00000000 Radical es ingeniero de sistemas, le gusta estar en constante aprendizaje y crear aplicaciones que automaticen procesos. Es un apasionado por los patrones en ingeniera social, procesamiento del lenguaje natural y la interaccin hombre mquina. Portavoz de RIC.
Artculos Relacionados
3 Comentarios
pedro - julio 24, 2013, 7:31 pm
Responder
quiero hacer un clouster con ubuntu 10.10 y 4 laptops q deberia hacer sin lo craking
Responder
hola, en la parte que dice Creamos un archivo que va hacer nuestro men de conguracin del clster este debe ir en el directorio ~ 1 touch ~/.mpd.conf Lo abrimos y ponemos dentro: 1 Gedit ~/.mpd.conf 2 secretword=ricteam Guardamos y listo. Esta conguracin la tenemos que hacer en todos los nodos. solo voy a guardar secretword=ricteam? o tambin gedit? y a todos los nodos te reeres a las maquinas que conectare? quiero usar aparte del servidor otras dos laptop mas
Responder
Hola, y para hacer ese procedimiento con maquinas reales que necesito para unir las maquinas?, algn cable que las una?, si es as como se llama el cable?
Deja un comentario
Tu email no ser publicado.
Nombre *
Email *
Sitio Web
Comentar
Comentar
Acceder con Facebook
Usuarios
Nuevos
Activo
Popular
UrbaN77
activo hace 17 horas, 58 minutos
Adnanref Zerreitug
activo hace 1 semana, 5 dias
Zarek Zama
activo hace 1 mes, 3 semanas
Categoras
General Herramientas Humor Ingeniera inversa Laboratorios Maratones Papers Podcast Proyectos Seguridad Informatica SO Utilidades Web WriteUp
RedInfoCol 2007 - 2013 Todos los derechos reservados bajo licencia Creative Commons Colombia