domingo, 21 de octubre de 2007

Hashing con md5deep

Se encuentra disponible la versión 2.0 de md5deep de Jesse Kornblum, una herramienta multi-plataforma que sirve para comprobar la integridad de los archivos utilizando una firma "hash" de los mismos.

md5deep puede realizar el hashing de los archivos utilizando los algoritmos MD5, SHA-1, SHA-256, Tiger o Whirlpool. Funciona bajo Windows, Linux, xBSD, Mac OS X, OpenSolaris y HP/UX, y dentro de sus principales características podemos encontrar:

  • Operación Recursiva: examina recursivamente dentro de un árbol de directorios y realiza un hash de cada archivo encontrado.
  • Comparación: puede aceptar una lista de hashes y compararla con un grupo de archivos.
  • Estimación de Tiempo: puede calcular el tiempo estimado cuando procesa archivos muy grandes.
  • Hashing por Pedazos: puede realizar el hashing de archivos separados en bloques.
  • Tipo de Archivo: realiza el hashing solo a un determinado tipo de archivo como block devices, archivos comunes, etc.

En el siguiente ejemplo, realizamos un hashing recursivo de todos los archivos que se encuentran dentro del directorio "/bin", para ello utilizamos la sintaxis: "md5deep -r /bin"


También podríamos redireccionar la salida a un archivo, para crear un "set de hashes":

md5deep -r /bin > hash-bin.txt

y luego con la opción "-m" podríamos comparar que archivos que se encuentran dentro del directorio "/bin" tienen el mismo hash que alguno de los que se encuentra dentro de "hash-bin.txt":

md5deep -m hash-bin.txt -r /bin/

con la opción "-x" podríamos visualizar solamente los archivos que se encuentran dentro del directorio "/bin" y cuyo hash no es igual a ninguno de los que se encuentra dentro del archivo "hash-bin.txt":

md5deep -x hash-bin.txt -r /bin/

Esto es muy útil para la búsqueda de archivos en un sistema, o para comparar nuestros archivos con una lista de hashes de rootkits o backdoors conocida.

Dentro de las nuevas features de md5deep, podemos encontrar soporte para los hash sets de EnCase (archivos .hash), soporte para archivos que poseen caracteres Unicode en su nombre bajo Windows, y algunos Bugs corregidos.

1 comentario:

Anónimo dijo...

Buen post.

Al grano 100%. Completitud 99% de lo que voy a usar.

Gracias.

LinkWithin