miércoles, 22 de septiembre de 2010

Trabajo Seguridad Informática sobre John The Ripper


John the Ripper es un programa que nos permite recuperar contraseñas a partir de los datos que existen en nuestro sistema. Actualmente está disponible para Unix/Linux, Windows, DOS, BeOS y OpenVMS. El propósito principal de esta herramienta es la detección se contraseñas débiles por parte del administrador del sistema.
John the Ripper no es un simple programa de cracking de contraseñas por fuerza bruta, dispone de varios modos de funcionamiento que permiten una búsqueda “inteligente” de las contraseñas más inseguras. Por ejemplo, el modo single prueba como contraseñas candidatas el nombre de usuario, el nombre real, el nombre del home y combinaciones de estos nombres con números y letras.
Sin embargo, para entender cómo funciona John lo mejor es utilizarlo.
Antes de empezar es conveniente que cuente que para este ejemplo he creado dos usuarios:
  • Javier Trotamundos que tiene como nombre de usuario “javier” y contraseña “trotamundos”. La contraseña forma parte de su nombre real.
  • Juan que tiene como nombre de usuario “juan” y contraseña “juan1982″. La contraseña es su nombre de usuario más una fecha.
Y ahora sí, vamos a ver los pasos para comprobar la calidad de nuestras passwords en Ubuntu:
  1. Actualizamos la información de los repositorios (es conveniente antes de instalar cualquier programa):


    sudo aptitude update
  2. Instalamos John the Ripper desde los repositorios de Ubuntu:


    sudo aptitude install john
  3. A continuación, combinamos los arhivos /etc/passwd y /etc/shadow con el comando unshadow en un nuevo archivo con el nombre mispasswords:


    sudo unshadow /etc/passwd /etc/shadow > mispasswords
  4. Por último, ejecutamos John the Ripper sobre el archivo que hemos creado con unshadow.


    john mispasswords
    Este comando, sin ninguna otra opción, prueba primero el modo single crack, después usa un diccionario con reglas y, por último, utiliza el modo incremental. De esta forma si la contraseña de cualquiera de los usuario del sistema es mala, John the Ripper la encontrará en “apenas unos segundos” (0:00:00) como se muestra en la imagen.



    John the Ripper
    John the Ripper encuentra las malas contraseñas casi instantáneamente
Una vez que conocemos el funcionamiento básico de John vamos a ver alguna de las opciones de las que disponemos:
  • John the Ripper guarda las contraseñas crackeadas en ~/.john/john.pot. Para mostrar estas contraseñas ejecutamos el siguiente comando:


    john --show mispasswords
  • Para usar solamente el modo single (este modo ) ejecutamos:


    john --single mispasswords
  • Para usar solamente el modo incremental ejecutamos:


    john --incremental mispasswords
  • Para usar solamente el modo diccionarios ejecutamos:


    john --wordlist=diccionario.lst --rules mispasswords
Podría ocurrir que al ejecutar el comando john mispasswords nos encontremos frente a este mensaje de error: “No password hashes loaded“. Este error se puede producir por alguno de los siguientes motivos:
  • El fichero de contraseñas que le estamos pasando a John no tiene las contraseñas. Esto se debe a que o bien no hemos escrito bien el nombre del fichero (mispasswords) o bien ha ocurrido algún tipo de error en el paso 3 (por ejemplo, se nos olvidó escribir el sudo).
  • Todas las contraseñas del fichero que se le pasa como parámetro (mispasswords) ya han sido crackeadas. Ejecutamos john --show mispasswords y las mostrará.
Espero que esto nos permita evitar el uso de contraseñas débiles.

A continuación, un video de muestra a través de un sistema operativo Fedora:

John The Ripper Fedora11 Youtube

No hay comentarios:

Publicar un comentario