¿El código abierto implica autenticidad?

3

Una de las supuestas ventajas del software de código abierto es que, al ser así, permite múltiples ojos en el código y permite una resolución más rápida de errores. Creo que, también implícito, hay una garantía de que no hay ningún agujero de seguridad intencional en él.

Ahora, ¿es eso necesariamente cierto? Si observo esto en el contexto de GNU / Linux, recibe binarios firmados de su disto favorito (incluso si es fuente, obviamente no tiene tiempo suficiente para revisar todo antes de instalar). ¿No es esto defectuoso en términos de 'autenticidad' del software?

¿Existe alguna forma de implementar una estructura de seguridad donde el código permanezca en una plataforma de acceso abierto desde donde pueda calcular las sumas de comprobación para compararlas con lo que obtuvo? ¿Se puede automatizar este procedimiento? ¿No se requiere tal procedimiento?

    
pregunta physkets 08.11.2016 - 15:32
fuente

2 respuestas

2

No
Código abierto significa que el código fuente está disponible públicamente. A menos que descargue el código fuente y genere un ejecutable, no puede estar seguro de que su binario se haya creado exactamente con el mismo código que vio.
Como se mencionó en los comentarios, tener un servidor público donde puede descargar el software y verificar que su suma de comprobación solo cambia la propiedad de confianza de una descarga. Y tenga en cuenta que las sumas de comprobación no son confiables: La menta fue hackeada

  

Una de las supuestas ventajas del software de código abierto es que, al ser así, permite múltiples ojos en el código y permite una resolución más rápida de errores. Creo que, también implícito, hay una garantía de que no hay ningún agujero de seguridad intencional en él.

Existen múltiples variantes de código abierto que varían en el grado de apertura y confianza. Digo esto porque es relevante para su punto sobre soluciones rápidas.

  1. Fuente abierta interna
    El código abierto interno generalmente significa que hay una biblioteca que está siendo desarrollada por varios equipos en toda la organización. Todos los miembros de esa organización tienen acceso al código, pero las personas externas a la organización no lo tienen. Dado que estas bibliotecas suelen ser críticas para el desarrollo de la organización, obtienen una resolución rápida.

  2. Fuente abierta pura
    Estas son herramientas como Linux mint / Ubuntu, etc. Aquí todos pueden ver el código fuente, pero no siempre obtienes resoluciones rápidas. Por lo tanto, si encuentra un error de seguridad en una herramienta de código abierto que está utilizando, probablemente lo arregle usted mismo y actualice los cambios en sentido ascendente. Realmente no se puede confiar en que no tenga agujeros de seguridad intencionales. Puede haber algunos si los desarrolladores del sistema pretenden hacerlo.

respondido por el Limit 08.11.2016 - 17:13
fuente
0
  

Una de las supuestas ventajas del software de código abierto es que, al ser así, permite múltiples ojos en el código y permite una resolución más rápida de errores. Creo que, también implícito, hay una garantía de que no hay ningún agujero de seguridad intencional en él.

     

Ahora, ¿es eso necesariamente cierto?

En absoluto. La implicación es que si alguien introduce intencionalmente una vulnerabilidad,

  1. Al menos una persona verá el cambio, ya sea antes o después de la versión aceptada del software,
  2. Al menos una de las personas que observan el cambio notará la vulnerabilidad y
  3. Al menos una de las personas que observan el cambio y se dan cuenta de la vulnerabilidad no están comprometidas y plantearán el problema.

Las licencias de código abierto, y lo que es más importante, los procesos de desarrollo de software comunes en el desarrollo de software de código abierto, hacen que sea más probable que todas estas condiciones sean ciertas. Sin embargo, no garantiza ninguno de ellos, lo cual es particularmente evidente en proyectos más pequeños con un solo autor primario.

Desde una perspectiva de seguridad, la ventaja del software de código abierto es que le permite a usted garantizar las aserciones 1 y 3 haciendo una auditoría usted mismo.

    
respondido por el Xiong Chiamiov 10.11.2016 - 01:37
fuente

Lea otras preguntas en las etiquetas