Ubuntu ofrece medios convenientes para compilar un paquete en su propia máquina. Sin embargo, no hay forma de verificar que el ejecutable en un paquete binario que descargó se haya obtenido de ese código fuente. El proceso de firma utilizado por Ubuntu reduce el riesgo de que terceros manipulen sustancialmente los paquetes, pero aún debe confiar en que no se ha agregado ningún código dañino antes de la compilación que no se refleja en el código fuente descargable.
La razón es que es tremendamente difícil obtener exactamente los mismos binarios que hay en los paquetes compilados, ya que dependen de la versión precisa del compilador, sus opciones y, probablemente, también hay algunas rutas o variables de entorno compiladas en el binario. Por lo tanto, no podrá obtener exactamente el mismo binario al compilarse, lo que "verificaría" el binario descargado.
En realidad, existe una pequeña comunidad de investigación en torno a este problema: cómo hacer que la compilación sea reproducible.
Dicho esto, una comparación manual de un archivo binario descargado y uno autocompilado puede detectar el código agregado / modificado, por lo que sería riesgoso para alguien que ofrece archivos binarios y el código fuente ocultar algo en los archivos binarios, ya que esto se puede detectar.
Pero también está el problema de confiar en el compilador, como ya se mencionó ...
apt-get source
o usarlo para compilar el suyo. Vea esta pregunta: askubuntu.com/questions/28372/…