15. Firma hash en Windows


El tema de la firma digital es bastante sencillo, pero tiene sus particularidades. Muchos forenses llegan a utilizar firmas que son obsoletas, lo que puede invalidar un proceso judicial o una investigación. Estas firmas simplemente no se pueden utilizar, no son válidas.

Herramientas y algoritmos comunes

Existen herramientas para calcular firmas hash, una muy conocida es HashCalc, una herramienta gratuita que por defecto genera el hash SHA-1. Este es uno de los algoritmos existentes para calcular firmas, al igual que MD5. Sin embargo, como forenses, no podemos utilizar ni MD5 ni SHA-1. ¿Por qué? Porque son algoritmos que presentan colisiones.

¿Qué son las colisiones?

Significa que dos archivos totalmente distintos pueden tener la misma firma digital. Google fue una de las empresas que encontró esta vulnerabilidad, demostrando metodologías para lograr que dos archivos diferentes tengan la misma firma hash. Incluso existen páginas web donde puedes subir archivos y descargar dos archivos diferentes con la misma firma MD5 o SHA-1.

Por ejemplo, si descargas dos PDFs, uno azul y otro rojo, claramente son distintos, pero su firma hash será idéntica. Esto significa técnicamente que, según el hash, serían el mismo archivo, aunque visualmente sean diferentes.

Ejemplo práctico de modificación de archivos

Imaginemos que guardo una imagen en el escritorio y calculo su firma hash. Luego, utilizando una herramienta hexadecimal como HxD, modifico un solo byte en el archivo (por ejemplo, cambiando un 0 por un 1). Este cambio es imperceptible a simple vista, pero al recalcular la firma hash, esta cambia por completo.

Esto demuestra que el hash es una cadena de caracteres que identifica un archivo de manera única. Sin embargo, con SHA-1, aunque la probabilidad de colisión es remota, existe. Por lo tanto, no es válida en un proceso judicial.

Implicaciones en un juicio

Si en un juicio se presenta una evidencia firmada con SHA-1, surge una duda razonable: ¿cómo sabemos que la evidencia no fue modificada por alguna de las partes involucradas? Esta posibilidad invalida su uso en contextos legales.

¿Qué algoritmos debemos utilizar?

Para un caso judicial, debemos utilizar algoritmos que no presenten colisiones, como los de la familia SHA-2SHA-256 o SHA-512. Estos son considerados seguros y válidos. Incluso SHA-224 y SHA-384 son aceptables, pero nunca MD5 ni SHA-1.

Al calcular la firma de un archivo con SHA-256, obtenemos un hash más largo, lo que aumenta la seguridad y reduce la probabilidad de colisión.

Aplicación en copias forenses

Si realizas una copia forense de un disco duro y calculas su hash, todos los archivos dentro de esa copia quedan firmados digitalmente. No es necesario firmar cada archivo por separado, a menos que sea específicamente requerido.

Herramientas recomendadas

Además de herramientas gratuitas como HashCalc, existen opciones comerciales como OS Forenses, que también permiten calcular hashes. Sin embargo, el proceso es el mismo: se trata de aplicar un algoritmo de hash. No es necesario invertir en herramientas costosas si una gratuita cumple con el objetivo.

Recomendaciones finales

  • SHA-256 es más que suficiente para la mayoría de los casos.

  • SHA-512 también es válido, pero el tiempo de cálculo es mayor debido al tamaño del hash.

  • La escritura del hash (mayúsculas o minúsculas) no afecta su validez, ya que los valores hexadecimales son los mismos.

En resumen, como forenses, debemos utilizar algoritmos seguros y actualizados para garantizar la integridad de las evidencias en un proceso legal.


Espero que este post sea de utilidad. Si necesitas ajustes adicionales, no dudes en avisarme.

Comentarios

Entradas más populares de este blog

7. Procesos de la Informática Forense

1-Qué es un Perito y Cuál es su Función

8. Etapa de Identificación