Storicamente, il movimento open source non riguarda la sicurezza ma la libertà . Fondamentalmente, Richard Stallman era molto preoccupato di non essere in grado di armeggiare con la sua stampante perché la fonte del driver non era disponibile.
La posizione di OpenBSD sull'essere "sicuro" non deriva dal fatto che sia open source, ma da un obiettivo dichiarato e si impegna a fare le cose correttamente per quanto riguarda la sicurezza (storicamente, OpenBSD è nato perché alcuni sviluppatori di NetBSD erano molto meglio nella programmazione che nella gestione delle relazioni pacifiche uomo-uomo).
L'associazione tra sicurezza e open source è più recente. Infatti, fin dall'inizio, è stato spiegato come un concetto incompleto (vedere il famoso Riflessioni su Trust Trust ). Un elemento della discussione è la legge di Linus che dice:
given enough eyeballs, all bugs are shallow
L'idea di base è che, con un numero sufficiente di revisori, verranno trovati bug e questo si estende ai bug relativi alla sicurezza. Ciò vale, tuttavia, solo sulla premessa che ci sono revisori. Il software open source semplifica le revisioni esterne, ma ciò non significa che le revisioni esterne avvengano effettivamente. Quando è stata l'ultima volta che hai esaminato il codice sorgente esistente?
Caso in questione: OpenSSL. Dopo l'individuazione di un'altra vulnerabilità nel codice base, è stato creato un fork, denominato LibreSSL , che ha avviato uno sforzo esplicito di revisione , che ha riscontrato diversi problemi gravi nella base del codice. Questi problemi esistevano da anni, proprio nel mezzo di una biblioteca che si può dire che sia una delle librerie più importanti per la sicurezza nell'ecosistema Linux. Quindi questo era open source, e tuttavia non sufficiente (del tutto) per ottenere un rilevamento della vulnerabilità adeguato.
Quindi ovviamente l'open-sourceness aiuta con la sicurezza, ma non quanto si possa sperare.
Ciò che l'open source apporta veramente è un rischio molto più elevato per le persone che vogliono piazzare intenzionalmente backdoor. È difficile rendere il codice apparentemente innocuo per i revisori e fa ancora cose cattive (esiste un concorso per tale codice).