Cómo Verificar la Autenticidad del Software de Windows con Firmas Digitales

Verificar Firmas de Software Destacada

Cada vez que descargas un programa de Internet, tienes que confiar en el desarrollador de que no es malicioso. No hay forma de evitar eso. Pero esto no suele ser un problema, especialmente con software y desarrolladores bien conocidos.

Sin embargo, los sitios web que alojan software son más vulnerables. Los atacantes pueden subvertir la seguridad de un sitio web y reemplazar programas con su propia versión maliciosa. Esto se ve y funciona exactamente como el original, excepto que tiene una puerta trasera insertada. Con esta puerta trasera, los atacantes pueden controlar varias partes de tu computación diaria normal. Tu computadora está insertada en una botnet, o peor aún, la utilidad espera hasta que uses tu tarjeta de crédito/débito y roba sus credenciales. Debes tener especial cuidado cuando descargues software importante como un sistema operativo, billetera de criptomonedas o similar.

Las Firmas Digitales Pueden Salvar el Día

Los escritores de software pueden firmar sus productos. A menos que un atacante pueda robar su clave privada, no hay forma conocida de que alguien pueda falsificar esta firma. Hay numerosos casos en los que miles de usuarios han descargado programas maliciosos, y en casi todos los casos, si hubieran verificado las firmas digitales, habrían notado que eran inválidas, evitando así la situación. Es relativamente fácil reemplazar software en un sitio web vulnerable, pero increíblemente difícil robar una clave privada que esté adecuadamente almacenada y aislada del acceso a Internet.

Puedes leer mucho más sobre firmas digitales aquí. Este artículo discute lo mismo, excepto que usarás utilidades de Windows para validar descargas.

Cómo Usar Gpg4win para Verificar Firmas Digitales

Ve a esta página y descarga e instala Gpg4win. Las personas inteligentes se preguntarán: “¿Pero cómo sé que esto es legítimo?” Y es una buena pregunta. Si esto estuviera roto, entonces todos los pasos posteriores serían inútiles.

Afortunadamente, el desarrollador se tomó todas las molestias para que su software fuera firmado por una autoridad de certificación. Y detalla los pasos para verificar su programa en su sitio web. Aunque se utiliza criptografía similar para comprobar la validez, el método general es diferente. Se utilizan certificados digitales para esto.

Verificar Sumas de Comprobación de Archivos

Supongamos que deseas descargar la billetera Bitcoin Core. Descarga el ejecutable de Windows x64 (exe, no zip). Después, haz clic en “Verificar firmas de lanzamiento” para descargar el archivo “SHA256SUMS.asc”. El primer paso es verificar el hash del archivo de instalación. Puedes leer más sobre hashes aquí.

Ve a tu carpeta de descargas, y con Gpg4win instalado, ahora puedes hacer clic derecho en un archivo, y aparecerá un nuevo menú contextual. Haz clic derecho en el archivo de instalación de Bitcoin (el exe que descargaste) y selecciona “Más Opciones de GpgEX -> Crear sumas de comprobación,” como en la imagen a continuación.

Verificar Firmas de Software Clic Derecho Sumas de Comprobación

Abre tanto “sha256sum.txt” que se ha generado como “SHA256SUMS.asc” que descargaste. Compara las sumas de comprobación SHA256. Deberían coincidir perfectamente.

Verificar Firmas de Software Comparar Sumas de Comprobación Sha256

Verificar la Firma del Archivo que Lista las Sumas de Comprobación

Mientras acabas de descargar un archivo de instalación y una lista de sumas de comprobación del mismo sitio web, si un atacante reemplazó el archivo de instalación, podría fácilmente reemplazar la lista de sumas de comprobación también. Lo que no puede hacer, sin embargo, es falsificar una firma. Eso puede ser validado por una clave pública conocida (legítima). Primero, necesitas descargar esta clave.

La siguiente imagen es cómo se ve una firma.

Verificar Firmas de Software Ejemplo de Firma en Línea

Esta es una firma en línea (incluida en el mismo archivo que valida). A veces, esta estará separada, incluida en un archivo diferente. Si cambias solo una letra en este archivo de texto, la firma se vuelve inválida. Esta es una forma de saber que el desarrollador aprobó y firmó estos contenidos exactos y específicos con las sumas de comprobación correctas.

Importar la Clave Pública del Desarrollador

Tienes las claves públicas disponibles para descargar bajo “Claves de Firma de Lanzamiento de Bitcoin Core” en la página de descarga de Bitcoin. Como medida de precaución, puedes descargarlas de otra fuente. Si un atacante reemplazó las claves legítimas con las suyas, es probable que encontremos las claves correctas (y huellas digitales) en todos los demás lugares donde han sido publicadas o discutidas.

Haz clic derecho en “SHA256SUMS.asc,” y selecciona “Descifrar y Verificar.” El programa te dirá que aún no tienes la clave pública. Haz clic en “Buscar.”

Verificar Firmas de Software Buscar Clave Pública

La búsqueda puede tardar un tiempo. Toma nota de la cadena en el campo “Buscar.”

Verificar Firmas de Software Huella Digital de la Clave

Puedes copiar esto y pegarlo en Google para ver si esta huella digital de clave pública ha sido discutida en hilos de foros/websites legítimos, etc. Cuantos más lugares encuentres, más puedes estar seguro de que pertenece al propietario previsto.

Haz clic en la clave y luego impórtala. Puedes hacer clic en “No” en el aviso que recibes a continuación (tomar medidas para certificar la clave) si no sabes cómo o no quieres hacer esto ahora.

Finalmente, haz clic en “Mostrar Registro de Auditoría.”

Verificar Firmas de Software Mostrar Registro de Auditoría

Deberías ver el texto que ha sido resaltado en la siguiente imagen, “Buena firma.”

Verificar Firmas de Software Buena Firma

Intenta cambiar solo una letra en “SHA256SUMS.asc,” y obtendrás lo que se representa en la siguiente imagen.

Verificar Firmas de Software Mala Firma

Conclusión

Pocos desarrolladores te dan la posibilidad de verificar que su software proviene de ellos. Pero generalmente, los programas que manejan datos sensibles o son muy importantes te ofrecerán esta opción. Úsala y podría salvarte de problemas algún día.