¿Los binarios precompilados pueden ser diferentes que si alguien construye desde una fuente?

1

Dado que tengo un código fuente "aceptable" de algún programa (Tor fue mencionado en una versión anterior de esta pregunta), donde "aceptable" significa que confío en este código fuente y quiero usarlo para mis necesidades; ¿Existe la posibilidad de que, si utilizo binarios previamente cumplidos (la compilación de otra persona), obtenga un binario "inaceptable" que contenga un código diferente al código fuente "aceptable" que vi (por ejemplo, un binario de puerta trasera)?

    
pregunta Mars 14.06.2015 - 13:35
fuente

2 respuestas

5

La respuesta es, por supuesto, que es posible. Hay cuatro formas principales en que puede suceder.

1) Los binarios que descargaste incluyen una vulnerabilidad y no fueron creados con el código fuente firmado.

  • Respuesta: realice su propia compilación determinista basada en las instrucciones proporcionadas en blog.torproject.org , que dice "Alcanzamos nuestra seguridad de compilación a través de un proceso de compilación reproducible que permite a cualquiera producir binarios idénticos byte a byte a los que lanzamos. En otros lugares de Internet, este proceso se denomina de forma variable" compilaciones deterministas "," compilaciones reproducibles " , "compilaciones idempotentes", y probablemente algunos otros términos, también. "

2) El compilador que usaste incluía una vulnerabilidad en tus binarios, tal vez una implementación específica del hack de Ken Thompson desde 1984

  • Respuesta parcial: esta es más difícil, aunque usar diferentes compiladores de diferentes fuentes y luego hacer un análisis cuidadoso de los resultados para ver si tienen los mismos comportamientos sería razonable, aunque llevara mucho tiempo.

3) Su sistema operativo o sus controladores están comprometidos.

  • Eso está fuera del alcance de esta respuesta.

4) Su CPU y / o NIC están comprometidos.

  • Eso también está fuera del alcance de esta respuesta.
respondido por el Anti-weakpasswords 15.06.2015 - 00:46
fuente
0

Hoy en día los compiladores generarán diferentes binarios cada vez:

  • BuildID será diferente
  • el tiempo de compilación (presente en algunos tipos de binarios) será diferente

Así que nunca esperes obtener archivos idénticos de un código idéntico.

Además de esto, TOR es un software muy específico, que es un problema para muchos gobiernos, agencias de 3 letras y todos los responsables de la seguridad defensiva. Por lo tanto, espere que haya muchas personas con un interés vital en agregarle una puerta trasera.

No hay una respuesta 100% segura, si los binarios TOR están en la puerta trasera. Es una cuestión de confianza para sus editores:

  • si está tratando de ocultar algunas actividades menores, puede confiar en ellas (en general), ya que sería demasiado ruidoso si alguien realmente usara esa puerta trasera para atacar a los usuarios de TOR existentes haciendo actividades menores

  • Si estás tratando de evitar vivir en prisión por algunas actividades realmente serias como Silk Road X.0, no confíes en nadie

respondido por el Tomasz Klim 15.06.2015 - 00:22
fuente

Lea otras preguntas en las etiquetas