Publicado hace 8 años por arcadiobuen a softwarelibre.miwp.eu

MD5 es un algoritmo criptográfico usado para comprobar la integridad de archivos en este caso por ejemplo nos interesa comprobar la integridad de imágenes ISO de distros que nos bajamos de sitios poco confiables como este. ¿Por que es importante? Por que podríamos ser mala gente y meterte gato por liebre, no tengo nada contra los gatos pero si buscas liebre, buscas liebre.

Comentarios

sorrillo

Me da vergüenza ajena leer artículos que lo único que hacen es ofrecer una falsa sensación de seguridad.

El MD5 tiene utilidad para comprobar si la descarga ha finalizado correctamente o ha acabado de forma corrupta. Para comprobar la seguridad no sirve, es un error ofrecer como consejo que el MD5 se compruebe para evitar ataques maliciosos.

Y ello es así por dos motivos:

1. Éste no aplica para el contenido del artículo pero para los lectores inexpertos estará implícito. Y es que si es la propia web la que te ofrece el MD5 éste representará el archivo de la descarga no así una certificación de que el contenido no sea malicioso. Y es que en la inmensa mayoría de casos el MD5 lo proporciona el propio sitio de descarga por lo que no ofrece seguridad alguna. Reitero que el artículo no se refiere a éste caso pero hay que vigilar con darle autoridad a un MD5 ya que cualquiera puede crearlo sin ninguna dificultad, no es un certificado de calidad.

2. El MD5 está roto. Desde el punto de vista de la seguridad no ofrece ninguna protección. Es trivial añadir software malicioso a una ISO, por ejemplo, y mantener el MD5 original. Basta con añadir porquería al final del archivo para que cree una colisión, cualquier ordenador medianamente moderno puede hacerlo sin ninguna dificultad. El sha256 y otros no tienen ese problema.

Es mejor que el usuario no tenga ni idea de lo que es un MD5 ni para que sirve a que lo utilice creyendo que le aporta seguridad contra ataques maliciosos. Ante lo primero si quiere puede ser consciente de los riesgos, si asume lo segundo creerá que está libre de ellos. Y será falso.

ccguy

#1 El MD5 se suele ofrecer para que el usuario que se descarga lo que sea desde un mirror (por ejemplo de Ubuntu, o de linux) pueda comprobar que lo que se ha descargado coincide con el original.

Evidentemente no sirve de nada para un fichero que te bajas desde la misma web donde ves el MD5, pero es que no suele ser lo normal para los programas más populares que tienen muchísimas réplicas.

arcadiobuen

#1 Joder.. no leíste donde el articulo dice que lo procedente es bajar el md5 de la web original y no de donde te bajas el archivo por que si no podrían meterte la liebre????

ahora dime,¿como coño harías para reemplazar un archivo con otro y el el resultado de hash te de la misma firma md5, lo que da vergüenza es una crítica que arte de una mala lectura.

#2 creo que lo leíste algo mejor ,)

sorrillo

#3 no leíste donde el articulo dice que lo procedente es bajar el md5 de la web original y no de donde te bajas el archivo por que si no podrían meterte la liebre????

Sí lo leí y por eso en mi comentario indico esto respecto al punto 1: Éste no aplica para el contenido del artículo pero para los lectores inexpertos estará implícito.

ahora dime,¿como coño harías para reemplazar un archivo con otro y el el resultado de hash te de la misma firma md5

Se modifica la ISO de tal forma que contenga el contenido malicioso y se le aplica alguno de los ataques existentes para encontrar una colisión con el MD5 original, aquí tienes un ejemplo de cómo obtener un md5 concreto con una imagen completamente distinta a la original: http://natmchugh.blogspot.com.es/2014/10/how-i-created-two-images-with-same-md5.html [ENG]

lo que da vergüenza es una crítica que arte de una mala lectura.

Cierto, no es el caso.

c/c #2