Cómo asegurarse de que el ejecutable que descargué coincide con el código fuente

Es difícil estar seguro de esto sin algún tipo de firma de Código.

Hay varios puntos en los que el malware podría ocultarse en una aplicación de código abierto.

  1. De alguna manera colarse en la fuente.
  2. Alterar los ejecutables después de que se construyen.
  3. Algún tipo de ataque MITM donde el binario se modifica en tránsito, o su solicitud se cambia de forma transparente para devolver un archivo infectado.

Puede auditar el código usted mismo para asegurarse de que (1) no haya sucedido.

Muchos proyectos de OSS proporcionarán algún tipo de firma o suma de verificación que le permite verificar que (2) no ha sucedido. Esto también proporciona cierta protección contra (3), aunque debe confiar en que la firma es auténtica y no ha sido alterada.

Para poder compilar una versión binaria idéntica del ejecutable sospechoso, tendrá que replicar la configuración de compilación exactamente (mismo compilador, versión y opciones). Luego podría descompilar e investigar si nota alguna diferencia.

La mayoría de los proyectos de código abierto proporcionarán firmas de archivos binarios que puede verificar su descarga contra estos archivos de firma.

La página de descarga de PuTTY es un buen ejemplo:
EXE: http://the.earth.li/~sgtatham/putty/latest/x86/putty.exe
FIRMA: http://the.earth.li/~sgtatham/putty/latest/x86/putty.exe.RSA

También verifique, PuTTY Descargar claves y firmas.
Este es solo un ejemplo, para otro software la verificación puede diferir (depende del algoritmo clave), pero la idea general es la misma.

Siempre puede intentar compilarlo en las mismas condiciones que lo hizo el editor. Esto incluye SO, variables de entorno, obviamente compilador, bibliotecas y un largo etcétera. Si el resultado producido no es el mismo que el binario que descargó, hay algo sospechoso al respecto.

Por lo general, esto no se puede lograr ya que el entorno de compilación original es desconocido o no es factible reproducirlo.

Incluso si no le gusta escucharlo, simplemente no ejecute binarios no confiables y compile desde la fuente si es posible.

Compile el código con exactamente el mismo compilador y exactamente las mismas opciones de compilador mientras está exactamente en el mismo tipo de procesador y hardware, entonces el resultado debe coincidir con el binario que descargó. ¿Suena inconveniente? Es. Es por eso que algunos lugares proporcionan hashes del binario que descargas para que puedas estar razonablemente seguro de que tienes el correcto, pero debes confiar en que el hash no fue alterado.