26 dic 2011

Rompiendo hashes con findmyhash.py

Buenas a todos, en el artículo de hoy os hablaremos de la aplicación findmyhash, desarrollada para crackear contraseñas a partir de sus hashes.

Findmyhash se encuentra desarrollada en python, y utiliza un total de 49 servicios online de crackeo de contraseñas para intentar averiguar las passwords a partir de los hashes que hayamos recuperado. De esta manera se abren las posibilidades de averiguar la contraseña más rápidamente.

Soporta diez tipos de algoritmos de hash diferentes: MD4, MD5, SHA1, SHA256, RMD160, LM, NTLM, MYSQL, CISCO7 y JUNIPER.

Según las pruebas que han realizado los desarrolladores, el éxito de encontrar la contraseña a partir de un hash LM/NTLM es de un 60%-70%. Yo hice una prueba con un hash recuperado de una máquina Windows y tardó apenas 30 segundos en recuperar la clave: 

 La página oficial del proyecto donde podréis bajar la aplicación es: http://code.google.com/p/findmyhash/A continuación os listo los distintos comandos para arrancar la aplicación en función del algoritmo con el que se generó el hash:
  •  python findmyhash.py MD4 -h "db346d691d7acc4dc2625db19f9e3f52"
  • python findmyhash.py MD5 -h "098f6bcd4621d373cade4e832627b4f6"
  • python findmyhash.py SHA1 -h "a94a8fe5ccb19ba61c4c0873d391e987982fbbd3"
  • python findmyhash.py SHA224 -h "90a3ed9e32b2aaf4c61c410eb925426119e1a9dc53d4286ade99a809"
  • python findmyhash.py SHA256 -h "9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08"
  • python findmyhash.py SHA384 -h "768412320f7b0aa5812fce428dc4706b3cae50e02a64caa16a782249bfe8efc4b7ef1ccb126255d196047dfedf17a0a9"
  • python findmyhash.py SHA512 -h "ee26b0dd4af7e749aa1a8ee3c10ae9923f618980772e473f8819a5d4940e0db27ac185f8a0e1d5f84f88bc887fd67b143732c304cc5fa9ad8e6f57f50028a8ff" python findmyhash.py RMD160 -h "5e52fee47e6b070565f74372468cdc699de89107"
  • python findmyhash.py GOST -h "a6e1acdd0cc7e00d02b90bccb2e21892289d1e93f622b8760cb0e076def1f42b"
  • python findmyhash.py WHIRLPOOL -h "b913d5bbb8e461c2c5961cbe0edcdadfd29f068225ceb37da6defcf89849368f8c6c2eb6a4c4ac75775d032a0ecfdfe8550573062b653fe92fc7b8fb3b7be8d6" python findmyhash.py LM -h "01fc5a6be7bc6929aad3b435b51404ee:0cb6948805f797bf2a82807973b89537"
  • python findmyhash.py LM -h "01fc5a6be7bc6929aad3b435b51404ee"
  • python findmyhash.py NTLM -h "01fc5a6be7bc6929aad3b435b51404ee:0cb6948805f797bf2a82807973b89537"
  • python findmyhash.py NTLM -h "0cb6948805f797bf2a82807973b89537"
  • python findmyhash.py MYSQL -h "378b243e220ca493"
  • python findmyhash.py MYSQL -h "*94bdcebe19083ce2a1f959fd02f964c7af4cfc29"
  • python findmyhash.py MYSQL -h "94bdcebe19083ce2a1f959fd02f964c7af4cfc29"
  • python findmyhash.py CISCO7 -h "12090404011C03162E"
  • python findmyhash.py JUNIPER -h "\$9\$90m6AO1EcyKWLhcYgaZji" python findmyhash.py LDAP_MD5 -h "{MD5}CY9rzUYh03PK3k6DJie09g=="
  • python findmyhash.py LDAP_SHA1 -h "{SHA}qUqP5cyxm6YcTAhz05Hph5gvu9M="
Saludos!

2 comentarios:

  1. Pensaba que la encriptación sha2 era segura. Entonces no hay forma de mantener a salvo los datos de los clientes??

    ResponderEliminar
  2. ch3ssmaster: Pensaba que la encriptación sha2 era segura. Entonces no hay forma de mantener a salvo los datos de los clientes??Te comento. findmyhash no tiene porque lograr romper ese hash, lo que hará primero es buscarlo en BBDD, a ver si por casualidad ya ha sido roto alguna vez y está la clave publicada, si no, ya si que utiliza servicios online que intentan romperlo por ejemplo mediante ataques por colisión, ahora que no tienen porque tener éxito..Sha2 es bastante seguro, y sha1 también, siempre que pongamos una clave larga difícil.saludos!

    ResponderEliminar