Antecedentes introductorios de la pregunta a continuación ###
(por lo que la pregunta es más útil para más personas)
Dentro de un paquete Ubuntu / debian-style (archivo * .deb) hay un archivo llamado
/DEBIAN/md5sums
que tiene un contenido de esta forma:
212ee8d0856605eb4546c3cff6aa6d35 usr / bin / file1 4131b66dc3913fcbf795159df912809f ruta / a / archivo2 8c21de23b7c25c9d1a093607fc27656a ruta / a / archivo3 c6d010a475366e0644f3bf77d7f922fd ruta / a / lugar / de / archivo4
Como supongo, este archivo se usará para verificar que los archivos que vienen con el paquete no se hayan dañado de alguna manera. Como el archivo se llama `/ DEBIAN / md5sums", supongo que el número hexadecimal antes de la ruta + nombre de archivo es el algoritmo de resumen de algoritmo de resumen de mensaje MD5 de los archivos del paquete.
Ahora todos los interesados saben que el Hash MD5 se ha roto hace mucho tiempo. Por lo tanto, es totalmente posible cambiar el contenido de un archivo en el paquete (por ejemplo, maliciosamente) y aún tener el archivo con el mismo MD5-Hash (ver por ejemplo Prueba del concepto "Predicción del ganador ..." ).
Pregunta
Teniendo en cuenta la información anterior, quiero saber lo siguiente:
** Suponiendo que instalo un paquete en mi sistema Ubuntu. ¿Es el DEBIAN/md5sums
único medio para asegurarse de que los datos no hayan sido alterados? ** **
Respondiendo a la pregunta, creo que podría ayudar resolver lo siguiente:
- ¿Los paquetes deb en su conjunto también están en hash?
- Si hay otras formas, entonces el
DEBIAN/md5sums
archivo para garantizar la integridad, ¿cuál es el archivo incluido en los paquetes * .deb de todos modos? - ¿Ubuntu utiliza hashes para el repositorio / sistema de paquetes que están "menos rotos" que SHA-1 y MD5?
que desafortunadamente tampoco lo sé.
Cualquier respuesta que pueda arrojar luz sobre la pregunta (o incluso solo una pregunta secundaria) es muy bienvenida.
actualizar
(1) https://help.ubuntu.com/community/Repositories/Ubuntu#Authentication_Tab parece indicar que (como esperaba) hay alguna clave de gpg pública / privada activada (para mantener los repositorios y los sistemas de paquetes) seguros de los ataques Sin embargo, la información en la ubicación vinculada no es mucho. No dice casi nada sobre el aspecto de seguridad del sistema Package. De todos modos, supongo que el enlace ya indica que la respuesta a la pregunta será "NO, al menos los paquetes deb del repositorio, también están asegurados por ...". Espero que alguien tenga algunas ideas para usar aquí como respuesta.
(2) Esta pregunta parece ser también sobre el tema de "seguridad" en el sistema de paquetes de Ubuntu. Así que solo lo agrego aquí para que su mano publicitaria si alguien se esfuerza por resolver la pregunta: ¿ por qué son seguras las correcciones propuestas BADSIG (en la actualización de apt-get)?
fuente
apt
es la política de suma de verificación.Respuestas:
Ubuntu publica un manifiesto firmado con una clave RSA. El manifiesto enumera los
Packages
archivos de índice individuales , cada uno con hash MD5, SHA-1 y SHA-256. CadaPackages
archivo enumera.deb
archivos individuales con hash MD5, SHA-1 y SHA-256.Para la verificación, apt utiliza el mejor hash que admite y lo publica el archivo desde el que se descarga. En el caso del archivo Ubuntu, este es SHA-256.
Entonces, toda la cadena de paquetes de instalación en su sistema Ubuntu está protegida por RSA y SHA-256.
La protección MD5 que existe en dpkg realmente solo es útil para la corrupción accidental, y no es necesaria para proteger la ruta de instalación.
Puede que le interese el
debsums
paquete, pero dado que utiliza MD5, también es útil para verificar si hay daños accidentales.Si desea verificar la modificación maliciosa del sistema, estas no son las herramientas adecuadas para usted. Deberá desconectar el sistema y verificar si se trata de un registro anterior, los archivos del paquete original o los hashes seguros generados a partir de estos.
Tenga en cuenta que, dado que una modificación maliciosa exitosa podría ser simplemente degradar un paquete al anterior a una actualización de seguridad, verificar que todos los archivos de paquetes instalados coincidan con sus originales puede tampoco ser suficiente.
fuente
Quería que esto fuera un comentario, pero no pude incluirlo en la caja, así que lo estoy colocando aquí.
Sí, md5 se ha roto criptológicamente, pero eso no significa que sea un mal algoritmo de hash de propósito general. Modificar un archivo para que tenga el mismo hash es increíblemente difícil, y hacerlo con un cambio malicioso en particular es casi imposible. Al mirar el ejemplo al que hizo referencia, ( Prediciendo al ganador ) vea esto:
Lo que se hizo fue llenar los archivos con datos aleatorios para hacer coincidir los hashes. La tecnología no es capaz de agregar un código malicioso en particular a un archivo y hacer que los hashes se alineen sin romperlo o hacer obvio que el archivo ha cambiado (no sé si apt lo hace, pero muchos hashes de archivos son acompañado por sus tamaños de archivo para aumentar la dificultad de una colisión de hash indetectable).
fuente
md5 no estaba "roto". Lo que encontraron fue una forma de elaborar cuidadosamente un mensaje original y un mensaje modificado que tenía el mismo hash. No es posible tomar un mensaje original no especialmente diseñado para manipular (el archivo correcto) y modificarlo de tal manera que conserve su md5sum.
fuente