Al descargar software de Internet, debe creer que el programa del desarrollador no es malicioso. Sin embargo, también debe preocuparse por los piratas informáticos. Hay muchos atacantes que pueden ingresar a un sitio web y reemplazar el software con una versión maliciosa.
Piense en un sitio web que aloja la utilidad de billetera Bitcoin. Si un atacante toma el control y reemplaza la versión legal con una versión maliciosa, podría robar dinero a decenas de miles de usuarios. Otro objetivo valioso para atacar es el sistema operativo. Esto ha sucedido con Linux Mint en el pasado.
Entonces, ¿qué puede hacer para remediar estas situaciones?
Hash y firma
Los desarrolladores con un sentido de seguridad a menudo empaquetarán archivos configurados con sumas de verificación (software utilizado para garantizar la integridad de un archivo, después de ser transferido desde otro dispositivo) que usted puede verificar. Consulte el artículo: Compruebe MD5 y SHA1 para comprobar la integridad del archivo para obtener más detalles. Sin embargo, el problema con este hash es que si un pirata informático reemplaza los archivos en una página web, puede reemplazar fácilmente el hash. Esto hace que el hash sea casi inútil, especialmente si se almacenan en el mismo servidor donde se encuentran los programas.
Para que esta suma de comprobación sea útil, muchos desarrolladores les han agregado firmas digitales con la ayuda de pares de claves públicas y privadas. Solo el propietario de esta clave privada puede crear una firma y solo puede ser verificado por la clave pública correspondiente, publicada en Internet. Si pasa el proceso de verificación, puede estar seguro de que el propietario de la clave privada ha “firmado” su software.
Para eludir este mecanismo de seguridad, los piratas informáticos deben robar claves privadas de alguna manera, lo que es mucho más difícil de implementar si el propietario toma las medidas de seguridad adecuadas. E incluso si esa clave es robada, el propietario puede desactivarla, revocarla y notificarla. Si esto sucede, cuando descargue la clave pública e intente usarla para verificar la firma, se le notificará que la firma ha sido revocada.
Cómo verificar la firma con GnuPG (GPG)
Las utilidades Gpg generalmente se instalan por defecto en todas las versiones. Si, por alguna razón, falta, puede instalar gpg con los siguientes comandos. En algunas distribuciones, si obtiene un error ‘ gpg: no se pudo iniciar / usr / bin / dirmngr ‘dirmngr’: no existe tal archivo o directorio ‘, necesitas instalar dirmngr además.
En distribuciones basadas en Debian, Ubuntu o Debian, ejecute:
sudo apt install gnupg dirmngr
Para RedHat / CentOS:
sudo yum install gnupg dirmngr
Y en Fedora:
sudo dnf install gnupg dirmngr
Puede seguir el ejemplo siguiente para comprobar cómo comprobar el instalador de Debian ISO 9.8.0.
Descargar SHA256SUMS, SHA256SUMS.sign, y debian-9.8.0-amd64-netinst.iso. Puede que tenga que hacer clic con el botón derecho en los dos primeros archivos y seleccionar ‘Guardar enlace como’ o la opción equivalente, en el navegador web. De lo contrario, hacer clic en estos archivos puede mostrar solo el contenido, en lugar de descargarlo automáticamente.
Abra el emulador de terminal y cambie el directorio que contiene las descargas.
cd Downloads/
Verifique la suma de verificación
Espere a que se complete el proceso de descarga de ISO. Luego verifique la suma de comprobación SHA256.
sha256sum -c SHA256SUMS
Verá el nombre del archivo seguido del mensaje ‘ESTÁ BIEN’ si la suma de comprobación es buena. Para verificar otros tipos de suma de verificación, tiene los siguientes comandos: sha1sum, sha512sum, md5sum. Pero debe usar al menos un SHA256SUMS o más, si está disponible.
Algunos sitios no proporcionan archivos como SHA256SUMS, donde los nombres de archivo y la suma de comprobación se agrupan para facilitar la verificación. Si la página muestra solo la suma, verifique el hash del archivo con un comando como este:
sha256sum debian-9.8.0-amd64-netinst.iso
Utilice GPG para verificar la suma de comprobación firmada
En este ejemplo, el equipo de Debian firmó el archivo SHA256SUMS, con su clave privada y lo guardó en el archivo SHA256SUMS.sign. Confirme la suscripción con el comando:
gpg --verify SHA256SUMS.sign SHA256SUMS
Recibirás un mensaje como este:
gpg: Signature made Sun 17 Feb 2019 05:10:29 PM EET gpg: using RSA key DF9B9C49EAA9298432589D76DA87E80D6294BE9B gpg: Can't check signature: No public key
Esto significa que no tiene una clave pública en su computadora. Esto es muy normal. Debe importarlo desde un servidor de claves.
gpg --keyserver keyring.debian.org --recv-keys DF9B9C49EAA9298432589D76DA87E80D6294BE9B
Si el servidor de claves tiene algún problema, puede utilizar otro servidor de claves. Por ejemplo, puede reemplazar keyring.debian.org con keyerver.ubfox.com.
Pero, ¿cómo sabe que esta clave es legítima? Desafortunadamente, para estar absolutamente seguro, necesitará crear algo llamado Web of Trust (WOT). Obviamente, no tienes eso ahora. Pero hay algunas cosas que puede hacer.
Busque la huella digital de Google de la clave (DF9B9C49EAA9298432589D76DA87E80D6294BE9B). Si no puede encontrar nada, pruebe Google solo los últimos ocho caracteres (6294BE9B). Se mencionará una clave legítima en muchos sitios relacionados con software similar. Además, las publicaciones suelen durar muchos años porque la clave protegida por seguridad se utilizará durante mucho tiempo.
Si no está seguro, descargue la imagen de BitTorrent y verifique la suma de comprobación y la firma. La forma en que funciona el torrent, no puede reemplazar los archivos cargados por cientos de usuarios diferentes. Además, BitTorrent también tiene sus propios mecanismos para verificar la integridad de cada bloque de datos que descarga.
Ahora tiene una clave pública. Por último, también puedes comprobar la firma:
gpg --verify SHA256SUMS.sign SHA256SUMS
Si ves el Mensaje de ‘buena firma’, significa que todo ha sido verificado. No se preocupe por las alertas. Esto es normal porque, como se mencionó, no tiene configurado Web of Trust para la clave pública.
Como probablemente ya sepa, nada es seguro en Internet. Pero ciertamente es más seguro tomar medidas preventivas y verificar la firma electrónica de los archivos descargados. Estas medidas pueden ayudarlo a evitar el malware. Los usuarios a menudo descargan una billetera Bitcoin o sistemas operativos infectados con malware, pero pueden evitar problemas si verifican la suscripción.
Espero que tengas éxito.
linux
Al descargar software de Internet, debe creer que el programa del desarrollador no es malicioso. Sin embargo, también debe preocuparse por los piratas informáticos. Hay muchos atacantes que pueden ingresar a un sitio web y reemplazar el software con una versión maliciosa.
Piense en un sitio web que aloja la utilidad de billetera Bitcoin. Si un atacante toma el control y reemplaza la versión legal con una versión maliciosa, podría robar dinero a decenas de miles de usuarios. Otro objetivo valioso para atacar es el sistema operativo. Esto ha sucedido con Linux Mint en el pasado.
Entonces, ¿qué puede hacer para remediar estas situaciones?
Hash y firma
Los desarrolladores con un sentido de seguridad a menudo empaquetarán archivos configurados con sumas de verificación (software utilizado para garantizar la integridad de un archivo, después de ser transferido desde otro dispositivo) que usted puede verificar. Consulte el artículo: Compruebe MD5 y SHA1 para comprobar la integridad del archivo para obtener más detalles. Sin embargo, el problema con este hash es que si un pirata informático reemplaza los archivos en una página web, puede reemplazar fácilmente el hash. Esto hace que el hash sea casi inútil, especialmente si se almacenan en el mismo servidor donde se encuentran los programas.
Para que esta suma de comprobación sea útil, muchos desarrolladores les han agregado firmas digitales con la ayuda de pares de claves públicas y privadas. Solo el propietario de esta clave privada puede crear una firma y solo puede ser verificada por la clave pública correspondiente, publicada en Internet. Si pasa el proceso de verificación, puede estar seguro de que el propietario de la clave privada ha “firmado” su software.
Para eludir este mecanismo de seguridad, los piratas informáticos deben robar claves privadas de alguna manera, lo que es mucho más difícil de implementar si el propietario toma las medidas de seguridad adecuadas. E incluso si esa clave es robada, el propietario puede deshabilitarla revocando y notificando. Si esto sucede, cuando descargue la clave pública e intente usarla para verificar la firma, se le notificará que la firma ha sido revocada.
Cómo verificar la firma con GnuPG (GPG)
Las utilidades Gpg generalmente se instalan por defecto en todas las versiones. Si, por alguna razón, falta, puede instalar gpg con los siguientes comandos. En algunas distribuciones, si obtiene un error ‘ gpg: no se pudo iniciar / usr / bin / dirmngr ‘dirmngr’: falta un archivo o directorio ‘, necesitas instalar dirmngr además.
En las distribuciones basadas en Debian, Ubuntu o Debian, ejecute:
sudo apt install gnupg dirmngr
Para RedHat / CentOS:
sudo yum install gnupg dirmngr
Y en Fedora:
sudo dnf install gnupg dirmngr
Puede seguir el ejemplo siguiente para comprobar cómo comprobar el instalador de Debian ISO 9.8.0.
Descargar SHA256SUMS, SHA256SUMS.sign, y debian-9.8.0-amd64-netinst.iso. Puede que tenga que hacer clic con el botón derecho en los dos primeros archivos y seleccionar ‘Guardar enlace como’ o la opción equivalente, en el navegador web. De lo contrario, hacer clic en estos archivos puede mostrar solo el contenido, en lugar de descargarlo automáticamente.
Abra el emulador de terminal y cambie el directorio que contiene las descargas.
cd Downloads/
Verifique la suma de verificación
Espere a que se complete el proceso de descarga de ISO. Luego verifique la suma de comprobación SHA256.
sha256sum -c SHA256SUMS
Verá el nombre del archivo seguido del mensaje ‘ESTÁ BIEN’ si la suma de comprobación es buena. Para verificar otros tipos de suma de verificación, tiene los siguientes comandos: sha1sum, sha512sum, md5sum. Pero debe usar al menos un SHA256SUMS o más, si está disponible.
Algunos sitios no proporcionan archivos como SHA256SUMS, donde los nombres de archivo y la suma de comprobación se agrupan para facilitar la verificación. Si la página muestra solo la suma, verifique el hash del archivo con un comando como este:
sha256sum debian-9.8.0-amd64-netinst.iso
Utilice GPG para verificar la suma de comprobación firmada
En este ejemplo, el equipo de Debian firmó el archivo SHA256SUMS, con su clave privada y lo guardó en el archivo SHA256SUMS.sign. Confirme la suscripción con el comando:
gpg --verify SHA256SUMS.sign SHA256SUMS
Recibirás un mensaje como este:
gpg: Signature made Sun 17 Feb 2019 05:10:29 PM EET gpg: using RSA key DF9B9C49EAA9298432589D76DA87E80D6294BE9B gpg: Can't check signature: No public key
Esto significa que no tiene una clave pública en su computadora. Esto es muy normal. Debe importarlo desde un servidor de claves.
gpg --keyserver keyring.debian.org --recv-keys DF9B9C49EAA9298432589D76DA87E80D6294BE9B
Si el servidor de claves tiene algún problema, puede utilizar otro servidor de claves. Por ejemplo, puede reemplazar keyring.debian.org con keyerver.ubfox.com.
Pero, ¿cómo sabe que esta clave es legítima? Desafortunadamente, para estar absolutamente seguro, necesitará crear algo llamado Web of Trust (WOT). Obviamente, no tienes eso ahora. Pero hay algunas cosas que puede hacer.
Busque la huella digital de Google de la clave (DF9B9C49EAA9298432589D76DA87E80D6294BE9B). Si no puede encontrar nada, pruebe Google solo los últimos ocho caracteres (6294BE9B). Una clave legítima se mencionará en muchos sitios relacionados con software similar. Además, las publicaciones suelen durar muchos años porque la clave protegida por seguridad se utilizará durante mucho tiempo.
Si no está seguro, descargue la imagen de BitTorrent y verifique la suma de comprobación y la firma. La forma en que funciona el torrent, no puede reemplazar los archivos cargados por cientos de usuarios diferentes. Además, BitTorrent también tiene sus propios mecanismos para verificar la integridad de cada bloque de datos que descarga.
Ahora tiene una clave pública. Por último, también puedes comprobar la firma:
gpg --verify SHA256SUMS.sign SHA256SUMS
Si ves el Mensaje de ‘buena firma’, significa que todo ha sido verificado. No se preocupe por las alertas. Esto es normal porque, como se mencionó, no tiene configurado Web of Trust para la clave pública.
Como probablemente ya sepa, nada es seguro en Internet. Pero ciertamente es más seguro tomar medidas preventivas y verificar la firma electrónica de los archivos descargados. Estas medidas pueden ayudarlo a evitar el malware. A menudo, los usuarios descargan una billetera Bitcoin o sistemas operativos infectados con malware, pero pueden evitar problemas si verifican la suscripción.
Espero que tengas éxito.