Open-Source implica l'autenticità?

3

Uno dei presunti vantaggi del software open source è che, in questo modo, consente più occhi sul codice e consente una risoluzione più rapida dei bug. Penso, anche sottinteso, sia una garanzia che non ci siano fori di sicurezza intenzionali in esso.

Ora, è necessariamente vero? Se guardo questo nel contesto di GNU / Linux, riceverai binari firmati dalla tua distro preferita (anche se la fonte, ovviamente non hai abbastanza tempo per passarci tutto prima di installare). Non è questo imperfetto in termini di "autenticità" del software?

Esiste un modo per implementare una struttura di sicurezza in cui il codice rimane su una piattaforma apertamente accessibile da dove puoi calcolare i checksum da confrontare con quello che hai ottenuto? Questa procedura può essere automatizzata? Non è necessaria una tale procedura?

    
posta physkets 08.11.2016 - 15:32
fonte

2 risposte

2

No
Open source significa che il codice sorgente è pubblicamente disponibile. A meno che non si scarichi il codice sorgente e si costruisca un eseguibile autonomamente, non si può essere sicuri che il proprio file binario sia costruito esattamente dallo stesso codice di quello che si è visto.
Come menzionato nei commenti, avere un server pubblico in cui è possibile scaricare il software e verificare il proprio checksum modifica semplicemente la proprietà attendibile di un download. E attenzione, i checksum non sono affidabili: Mint è stato violato

One of the purported advantages of open-source software is that in being so, it allows for multiple eyes on the code, and enables faster resolution of bugs. I think, also implied is an assurance about there not being any intentional security loop-holes in it.

Ci sono più varianti di open source che variano nel grado di apertura e fiducia. Dico questo perché è rilevante per il tuo punto sulle correzioni rapide.

  1. Interno open source
    L'open source interno di solito significa che esiste una libreria sviluppata da più team all'interno di un'organizzazione. Ogni membro di tale organizzazione ha accesso al codice ma le persone al di fuori dell'organizzazione non lo fanno. Poiché queste librerie sono di solito fondamentali per lo sviluppo dell'organizzazione, ottengono una risoluzione rapida.

  2. puro open source
    Questi sono strumenti come Linux mint / Ubuntu ecc. Qui tutti possono vedere il codice sorgente ma non sempre le risoluzioni rapide. Quindi, se trovi un bug di sicurezza in uno strumento open source che stai usando, probabilmente correggi il bug da te stesso e aggiorna le modifiche a monte. Non ci si può davvero fidare del fatto che non abbia buchi di sicurezza intenzionali. Ce ne possono essere alcuni se gli sviluppatori del sistema intendessero farlo.

risposta data 08.11.2016 - 17:13
fonte
0

One of the purported advantages of open-source software is that in being so, it allows for multiple eyes on the code, and enables faster resolution of bugs. I think, also implied is an assurance about there not being any intentional security loop-holes in it.

Now, is that necessarily true?

Assolutamente no. L'implicazione è che se qualcuno introduce intenzionalmente una vulnerabilità,

  1. Almeno una persona esaminerà la modifica, prima o dopo che entrerà nella versione accettata del software,
  2. Almeno una di quelle persone che guardano al cambiamento noteranno la vulnerabilità e
  3. Almeno una di quelle persone che osserva la modifica e nota la vulnerabilità non viene compromessa e solleverà il problema.

Le licenze open source e, più importante, i processi di sviluppo software comuni nello sviluppo di software open source, rendono più probabile tutte queste condizioni sono vere. Tuttavia, non ne garantisce nessuno, il che è particolarmente evidente nei progetti più piccoli con un solo autore principale.

Dal punto di vista della sicurezza, il vantaggio del software open source è che consente di di garantire le asserzioni 1 e 3 eseguendo un audit autonomamente.

    
risposta data 10.11.2016 - 01:37
fonte

Leggi altre domande sui tag