Pourquoi l’open source est-il important?

Qu'est-ce que l'open source?

Un logiciel open source est un logiciel dont le code source a été rendu public par son détenteur des droits d'auteur. Sous une véritable licence open source, le logiciel est développé en collaboration, et d'autres programmeurs peuvent regarder, modifier ou utiliser le code à leurs propres fins. Ce modèle open source «pur» est souvent appelé FOSS (logiciel libre et open source).

Une variante de l'open source est «source disponible», ce qui signifie qu'aucune autorisation n'est accordée pour modifier ou autrement utiliser le code, mais qu'il est disponible pour inspection. Pour des raisons de sécurité, cela est tout aussi bon que la vraie source ouverte, donc quand je fais référence à «open source» dans cet article, j'inclus du code qui est «source disponible».

Qu'est-ce que la source fermée?

La plupart des logiciels sont écrits et développés par des sociétés commerciales. Naturellement, ces entreprises tiennent à ce que personne ne vole leur travail acharné ou leurs secrets commerciaux, elles cachent donc leur code aux regards indiscrets à l'aide du chiffrement, et toute tentative d'utiliser ou de modifier le code sans autorisation entraînera des poursuites ou pire..

Alors quel est le problème?

Comme je l'ai dit, tout cela est tout à fait compréhensible, mais en matière de sécurité, cela pose un problème majeur. Si personne ne peut voir les détails de ce qu'un programme fait, comment pouvons-nous savoir qu'il ne fait pas quelque chose de malveillant? Fondamentalement, nous ne pouvons pas, nous devons donc simplement faire confiance à la société impliquée, ce que les types de sécurité paranoïaques sont réticents à faire (pour une bonne raison).

Pourquoi l'open source est la meilleure solution?

Si le code est open source, il peut être examiné et audité indépendamment par toute personne qualifiée pour le faire, afin de vérifier qu'il n'y a pas de portes dérobées, de vulnérabilités ou d'autres problèmes de sécurité. L'open source n'est pas une solution parfaite (voir ci-dessous), mais c'est le seul moyen d'avoir à vérifier que le logiciel ne fait exactement ce qu'il est censé faire.

Même si le code n'a pas été audité, le fait même qu'il soit librement disponible pour être audité fournit une forte indication qu'il peut être fiable, car il est peu probable que les développeurs incluent du code malveillant et le laissent ensuite ouvert à la découverte de quiconque se soucie de regarder.

Pas une solution parfaite…

Malheureusement, il existe un nombre limité de personnes possédant à la fois les compétences et le temps nécessaires pour auditer des logiciels open source (généralement gratuitement), ce qui signifie que la grande majorité des programmes open source n'ont pas été audités..

Ce problème est aggravé par le fait que de nombreux programmes open source sont extrêmement complexes, contenant des milliers et des milliers de lignes de code, donc même s'ils ont été audités, il est tout à fait possible que les auditeurs aient manqué un problème (surtout si du code malveillant a été délibérément caché).

Mais…

L'open source ne garantit donc pas qu'un programme est «propre», mais c'est néanmoins la meilleure garantie que nous ayons (ou pouvons avoir) qu'il en soit ainsi. L'alternative est la source fermée, qui n'offre aucune garantie.

Vérifiez toujours les programmes open source

L'open source est donc idéal pour la sécurité. Yay! Mais comment savoir avec certitude que le programme open source que vous venez de télécharger n'a pas été falsifié d'une manière ou d'une autre?

Cela peut ressembler à une pensée de fantaisie de conspiration paranoïaque whacko, mais en février 2016, le site Web de l'une des versions les plus populaires du système d'exploitation open source Linux, Linux Mint, a été piraté, et une version compromise du système d'exploitation a été mise à la disposition des téléchargeurs.,

«Les pirates ont créé une ISO de Linux Mint modifiée, avec une porte dérobée, et ont réussi à pirater notre site Web pour le pointer.»

Les images ISO Linux infectées ont installé le système d'exploitation complet avec le tsunami de porte dérobée Internet Relay Chat (IRC), qui a permis aux attaquants d'accéder au système des utilisateurs via des serveurs IRC. La menace est donc bien réelle.

Dans ce cas, les téléchargeurs qui ont pris la peine de faire la somme de contrôle du hachage MD5 du fichier (voir ici pour savoir comment faire) auraient repéré la tromperie, mais ces vérifications de hachage ne sont pas une protection fiable car si un site Web peut être piraté en premier lieu, il est trivial de remplacer la somme de contrôle publiée par une fausse qui vérifie le fichier composé.

Il est bien mieux pour les développeurs de signer numériquement leur logiciel afin que les utilisateurs puissent vérifier l'origine d'un fichier (les développeurs de Mint étaient très laxistes à cet égard, car leur logiciel n'était pas signé numériquement, et même la fonction de hachage MD5 utilisée était connue être cassé!)

Veuillez consulter mon article sur les signatures numériques - pourquoi et comment les utiliser pour plus d'informations. Malheureusement, la vérification des signatures numériques est quelque chose de pénible, mais elle est nécessaire si vous vous souciez de la sécurité.

Je dois également noter que, idéalement, tous les logiciels devraient être signés et vérifiés numériquement, mais comme le code source ouvert peut être librement modifié par n'importe qui, il est plus facile de falsifier que le code source fermé. Il est donc particulièrement important de vérifier les programmes open source.

Open Source: Conclusion

L'open source n'est pas une solution parfaite, mais il offre la meilleure (et la seule!) Garantie possible de la confiance des logiciels. L'alternative est une source fermée, qui n'offre aucune garantie (autre que la foi aveugle dans l'entreprise, qui est une entreprise technologique que les entreprises ne méritent pas).

Brayan Jackson
Brayan Jackson Administrator
Sorry! The Author has not filled his profile.
follow me