Cómo verificar la suma de comprobación de un ISO de Linux y confirmar que no se haya alterado
El mes pasado, el sitio web de Linux Mint fue pirateado y una versión ISO modificada se descargó con una puerta trasera. Si bien el problema se solucionó rápidamente, demuestra la importancia de verificar los archivos ISO de Linux que descarga antes de ejecutarlos e instalarlos. Así es cómo.
Las distribuciones de Linux publican sumas de comprobación para que pueda confirmar que los archivos que descarga son lo que dicen ser, y estos a menudo están firmados para que pueda verificar que las sumas de comprobación no hayan sido manipuladas. Esto es particularmente útil si descarga un ISO desde otro lugar que no sea el sitio principal, como un espejo de terceros, o a través de BItTorrent, donde es mucho más fácil para las personas manipular los archivos..
Cómo funciona este proceso
El proceso de verificación de una ISO es un poco complejo, por lo que antes de comenzar con los pasos exactos, expliquemos exactamente lo que implica el proceso:
- Descargará el archivo ISO de Linux desde el sitio web de la distribución de Linux, o en otro lugar, como de costumbre..
- Descargarás una suma de comprobación y su firma digital desde el sitio web de la distribución de Linux. Estos pueden ser dos archivos TXT separados, o puede obtener un solo archivo TXT que contenga ambos datos.
- Obtendrás una clave PGP pública que pertenece a la distribución de Linux. Puede obtener esto en el sitio web de la distribución de Linux o en un servidor de claves separado administrado por las mismas personas, dependiendo de su distribución de Linux.
- Utilizará la clave PGP para verificar que la firma digital de la suma de comprobación fue creada por la misma persona que creó la clave; en este caso, los mantenedores de esa distribución de Linux. Esto confirma que la suma de comprobación en sí no ha sido manipulada..
- Generará la suma de comprobación del archivo ISO descargado y verificará que coincida con el archivo TXT de la suma de comprobación que descargó. Esto confirma que el archivo ISO no ha sido manipulado o dañado.
El proceso puede diferir un poco para diferentes ISO, pero generalmente sigue ese patrón general. Por ejemplo, hay varios tipos diferentes de sumas de comprobación. Tradicionalmente, las sumas de MD5 han sido las más populares. Sin embargo, las sumas de SHA-256 ahora son utilizadas con más frecuencia por las distribuciones modernas de Linux, ya que SHA-256 es más resistente a los ataques teóricos. Discutiremos principalmente las sumas de SHA-256 aquí, aunque un proceso similar funcionará para las sumas de MD5. Algunas distribuciones de Linux también pueden proporcionar sumas de SHA-1, aunque estas son incluso menos comunes.
Del mismo modo, algunas distribuciones no firman sus sumas de comprobación con PGP. Solo deberá realizar los pasos 1, 2 y 5, pero el proceso es mucho más vulnerable. Después de todo, si el atacante puede reemplazar el archivo ISO para descargar, también puede reemplazar la suma de comprobación.
Usar PGP es mucho más seguro, pero no infalible. El atacante aún podría reemplazar esa clave pública con la suya, podría engañarlo para que piense que la ISO es legítima. Sin embargo, si la clave pública está alojada en un servidor diferente, como es el caso de Linux Mint, esto es mucho menos probable (ya que tendrían que piratear dos servidores en lugar de uno). Pero si la clave pública se almacena en el mismo servidor que la ISO y la suma de comprobación, como ocurre con algunas distribuciones, entonces no ofrece tanta seguridad.
Aun así, si está intentando verificar la firma PGP en un archivo de suma de comprobación y luego validar su descarga con esa suma de comprobación, eso es todo lo que puede hacer razonablemente como usuario final al descargar una ISO de Linux. Sigues siendo mucho más seguro que las personas que no se molestan..
Cómo verificar una suma de comprobación en Linux
Aquí usaremos Linux Mint como ejemplo, pero es posible que deba buscar en el sitio web de su distribución de Linux para encontrar las opciones de verificación que ofrece. Para Linux Mint, se proporcionan dos archivos junto con la descarga ISO en sus espejos de descarga. Descargue la ISO, y luego descargue los archivos “sha256sum.txt” y “sha256sum.txt.gpg” en su computadora. Haga clic derecho en los archivos y seleccione "Guardar enlace como" para descargarlos..
En su escritorio de Linux, abra una ventana de terminal y descargue la clave PGP. En este caso, la clave PGP de Linux Mint está alojada en el servidor de claves de Ubuntu, y debemos ejecutar el siguiente comando para obtenerlo.
gpg --keyserver hkp: //keyserver.ubuntu.com --recv-keys 0FF405B2
El sitio web de su distribución de Linux le indicará la clave que necesita.
Ahora tenemos todo lo que necesitamos: la ISO, el archivo de suma de comprobación, el archivo de firma digital de la suma de comprobación y la clave PGP. A continuación, cambie a la carpeta en la que se descargaron a ...
cd ~ / Descargas
... y ejecute el siguiente comando para verificar la firma del archivo de suma de comprobación:
gpg - verifica sha256sum.txt.gpg sha256sum.txt
Si el comando GPG le permite saber que el archivo sha256sum.txt descargado tiene una "buena firma", puede continuar. En la cuarta línea de la captura de pantalla a continuación, GPG nos informa que esta es una "buena firma" que dice estar asociada con Clement Lefebvre, el creador de Linux Mint..
No se preocupe de que la clave no esté certificada con una "firma confiable". Esto se debe a la forma en que funciona el cifrado PGP: no ha configurado una red de confianza al importar claves de personas de confianza. Este error será muy común..
Finalmente, ahora que sabemos que la suma de control fue creada por los mantenedores de Linux Mint, ejecute el siguiente comando para generar una suma de control del archivo .iso descargado y compárelo con el archivo TXT de suma de control que descargó:
sha256sum - verifica sha256sum.txt
Verá una gran cantidad de mensajes de "no hay tal archivo o directorio" si solo descargó un solo archivo ISO, pero debería ver un mensaje "OK" para el archivo que descargó si coincide con la suma de comprobación.
También puede ejecutar los comandos de suma de comprobación directamente en un archivo .iso. Examinará el archivo .iso y escupirá su suma de comprobación. A continuación, puede verificar que coincida con la suma de comprobación válida observando ambos con sus ojos..
Por ejemplo, para obtener la suma SHA-256 de un archivo ISO:
sha256sum /path/to/file.iso
O, si tiene un valor md5sum y necesita obtener el md5sum de un archivo:
md5sum /path/to/file.iso
Compare el resultado con el archivo de suma de comprobación TXT para ver si coinciden.
Cómo verificar una suma de comprobación en Windows
Si está descargando un ISO de Linux desde una máquina con Windows, también puede verificar la suma de comprobación allí, aunque Windows no tiene el software necesario incorporado. Por lo tanto, deberá descargar e instalar la herramienta de código abierto Gpg4win..
Localice los archivos de la clave de firma y de suma de comprobación de su distribución de Linux. Usaremos Fedora como ejemplo aquí. El sitio web de Fedora proporciona descargas de suma de comprobación y nos dice que podemos descargar la clave de firma de Fedora desde https://getfedora.org/static/fedora.gpg.
Una vez que haya descargado estos archivos, deberá instalar la clave de firma utilizando el programa Kleopatra incluido con Gpg4win. Inicie Kleopatra y haga clic en Archivo> Importar certificados. Seleccione el archivo .gpg que descargó.
Ahora puede verificar si el archivo de suma de comprobación descargado se firmó con uno de los archivos clave que importó. Para hacerlo, haga clic en Archivo> Descifrar / Verificar archivos. Seleccione el archivo de suma de comprobación descargado. Desmarque la opción "El archivo de entrada es una firma separada" y haga clic en "Descifrar / Verificar".
Seguro que verás un mensaje de error si lo haces de esta manera, ya que no te has tomado la molestia de confirmar que los certificados de Fedora son realmente legítimos. Esa es una tarea más difícil. Esta es la forma en que PGP está diseñado para trabajar: te reúnes e intercambias claves en persona, por ejemplo, y unes una red de confianza. La mayoría de la gente no lo usa de esta manera.
Sin embargo, puede ver más detalles y confirmar que el archivo de suma de comprobación se firmó con una de las claves que importó. Esto es mucho mejor que simplemente confiar en un archivo ISO descargado sin verificarlo, de todos modos.
Ahora debería poder seleccionar Archivo> Verificar archivos de suma de comprobación y confirmar que la información en el archivo de suma de comprobación coincide con el archivo .iso descargado. Sin embargo, esto no funcionó para nosotros, tal vez sea la forma en que se presenta el archivo de suma de comprobación de Fedora. Cuando intentamos esto con el archivo sha256sum.txt de Linux Mint, funcionó.
Si esto no funciona para su distribución de Linux de elección, aquí hay una solución. Primero, haga clic en Configuración> Configurar Kleopatra. Seleccione "Operaciones de cifrado", seleccione "Operaciones de archivo" y configure Kleopatra para que use el programa de suma de comprobación "sha256sum", ya que es con lo que se generó esta suma de comprobación en particular. Si tiene una suma de comprobación MD5, seleccione "md5sum" en la lista aquí.
Ahora, haga clic en Archivo> Crear archivos de suma de comprobación y seleccione el archivo ISO descargado. Kleopatra generará una suma de comprobación del archivo .iso descargado y la guardará en un archivo nuevo..
Puede abrir ambos archivos, el archivo de suma de comprobación descargado y el que acaba de generar, en un editor de texto como el Bloc de notas. Confirme que la suma de comprobación es idéntica en ambos con sus propios ojos. Si es idéntico, ha confirmado que su archivo ISO descargado no ha sido manipulado..
Estos métodos de verificación no fueron diseñados originalmente para la protección contra malware. Fueron diseñados para confirmar que su archivo ISO se descargó correctamente y no se corrompió durante la descarga, por lo que podría grabarlo y usarlo sin preocuparse. No son una solución completamente infalible, ya que tiene que confiar en la clave PGP que descarga. Sin embargo, esto todavía proporciona mucha más seguridad que solo usar un archivo ISO sin comprobarlo en absoluto..
Crédito de la imagen: Eduardo Quagliato en Flickr.