L'interdiction de Linux de l'Université du Minnesota soulève des questions sur l'open source

Publié: 2022-03-11

Il existe généralement deux types de pirates : ceux qui s'introduisent dans les systèmes informatiques pour trouver des vulnérabilités afin de les corriger et les criminels qui exploitent les faiblesses pour voler des données et prendre des organisations en otage.

Ensuite, il y a Kangjie Lu, professeur adjoint à l'Université du Minnesota, spécialisé dans la sécurité informatique. Il a récemment acquis une notoriété pour avoir délibérément créé des vulnérabilités dans le système logiciel open source le plus important au monde, le noyau Linux. Après avoir publié un article académique sur ses exploits, l'équipe du noyau Linux a interdit l'université et annulé ses correctifs précédents.

Vulnérabilités intentionnelles du noyau Linux

Les révélations ont suscité des questions sur la sécurité open source et le noyau du système d'exploitation, un composant fondamental d'innombrables appareils et serveurs. Lu a enfoui des vulnérabilités dans quelques correctifs mineurs que lui et un étudiant diplômé ont soumis au vaste référentiel de code logiciel de Linux, renversant une méthode collaborative essentielle pour assurer la sécurité du programme.

"Ils ont connu un succès affligeant", déclare Alexander Sereda, un chef de projet basé à Toronto qui a rejoint le réseau Toptal en 2020. "Leur code malveillant a passé la surveillance de la communauté qui est censée éliminer ce type de soumissions."

Alors que Windows et macOS dominent les ordinateurs de bureau, les systèmes d'exploitation basés sur Linux sont de loin les plus populaires pour les serveurs et les superordinateurs, et Google utilise une version modifiée du noyau pour Android. Des géants de la technologie comme Red Hat ont construit leurs entreprises de logiciels d'entreprise autour de l'open source et même Microsoft, qui pendant des années a été considéré comme l'un des principaux opposants à l'écosystème open source, est revenu : en 2018, il a acheté GitHub, le plus grand hébergeur d'open-source. projets sources ; aujourd'hui, les distributions Linux peuvent être trouvées dans le Microsoft Store.

Il est difficile d'exagérer l'omniprésence du noyau Linux et des logiciels open source, évoluant de l'étoffe des amateurs et des idéalistes à la pierre angulaire du marché des logiciels d'aujourd'hui. Il existe littéralement des millions de projets open source que les développeurs doivent parcourir, et comme ils sont gratuits et pour la plupart fiables, plus de 90 % des applications commerciales contiennent de tels composants. Ce chiffre ne cesse de croître, selon une étude annuelle de la société de conception de silicium et de sécurité logicielle Synopsys.

Être fiable est tout aussi important que d'être gratuit, et la communauté open source est fière de fournir des programmes qui sont égaux, sinon meilleurs, que les logiciels propriétaires. Le mouvement a émergé dans les années 1990 avec un principe central, inventé par le développeur et auteur Eric Raymond, selon lequel "avec suffisamment de globes oculaires, tous les bogues sont superficiels". Le fait que l'open source ait jusqu'à présent survécu relativement indemne - alors même que le monde fait face à une épidémie sans précédent de piratage et de ransomware - n'est qu'une affirmation supplémentaire qu'une telle collaboration ouverte peut encore être efficace.

Mais, comme Lu l'a montré dans ses recherches, aucune sécurité n'est parfaite, même dans quelque chose d'aussi critique et étroitement surveillé que le noyau Linux. Bien qu'écrire du code sécurisé puisse être simple, trouver des vulnérabilités dans le code après coup peut être incroyablement difficile, « comme retirer le lait de votre thé après l'avoir mélangé », explique Sereda. Alors que l'open source s'est en général admirablement comporté, mis à part quelques ratés importants comme le bogue Heartbleed apparu en 2014, il existe de plus en plus de preuves que les développeurs, pour leur part, prennent trop de raccourcis lorsqu'ils intègrent des logiciels libres dans leur des produits.

Risques de sécurité open source

Dans son rapport annuel 2021, Synopsys révèle que chaque entreprise du secteur des technologies marketing qu'elle a auditée avait une base de code open source et que 95 % de ces bases de code contenaient des vulnérabilités. Il a trouvé des résultats similaires en examinant le secteur de la santé, le secteur des services financiers et les industries de la vente au détail et du commerce électronique. Il y a un certain nombre de raisons à ces mauvais résultats, mais la principale d'entre elles est que les logiciels deviennent de plus en plus compliqués et, ce faisant, il devient plus difficile de suivre et de surveiller les composants.

L'open source a un bien meilleur bilan de sécurité que les produits propriétaires, mais cela ne garantit pas qu'il sera toujours de la meilleure qualité, déclare Sam Watkins, un développeur full-stack indépendant qui a rejoint le réseau de Toptal en 2021. problème, qui est des programmes trop compliqués. Ce n'est pas sûr, mais pas par intention malveillante.

Le problème n'est donc pas nécessairement que l'open source est trop ouvert. Au lieu de cela, c'est l'écart qui persiste car aucun fournisseur ne propose de correctifs pour la communauté, même si les cycles logiciels ne cessent de se réduire, déclare Timothy Mackey, stratège principal en matière de sécurité chez Synopsys. Les budgets serrés obligent les programmeurs à utiliser des raccourcis imparfaits comme des systèmes de notation simplistes pour choisir leurs composants, en fonction de leur popularité plutôt que de leur qualité. Il existe plusieurs services qui offrent de tels raccourcis aux programmeurs, notamment Openbase, Stack Builder et l'Open Source Index, qui met en évidence les projets les plus populaires sur GitHub.

Gestion de la vulnérabilité open source

Selon les programmeurs et les universitaires, bien que ces systèmes d'évaluation open source aient une valeur, il doit y avoir plus de validation et de considération lors de l'évaluation des options, plutôt que de simplement saisir les composants qui semblent être la meilleure correspondance. Chaque organisation doit établir un ensemble de meilleures pratiques qui comprend des principes pour choisir soigneusement les logiciels qui prennent en compte la quantité de support requis et les risques encourus. Les entreprises doivent également suivre et mettre à jour fréquemment tous leurs composants open source.

Parmi les autres meilleures pratiques que nos experts ont identifiées pour examen, citons :

  • Utiliser l'automatisation, vérifier les processus, tout documenter et utiliser Git pour suivre les modifications de la base de code.
  • Créer une communauté positive, notamment en aidant les nouveaux venus dans l'open source qui pourraient devenir des collaborateurs importants.
  • Garder toutes les chaînes d'approvisionnement open source vérifiables.
  • Utilisation de conteneurs open source qui partagent le noyau du système d'exploitation hôte.
  • Identifier les composants open source les plus critiques, puis suivre leurs problèmes de sécurité, dialoguer avec leurs développeurs et contribuer aux projets en amont avec des correctifs et des financements.

Ann Barcomb, professeure adjointe à la Schulich School of Engineering de l'Université de Calgary, ajoute que, idéalement, les organisations devraient utiliser un ensemble de meilleures pratiques pour créer des bibliothèques de produits pré-approuvés afin que les logiciels ne soient jamais sélectionnés arbitrairement. Cependant, elle reconnaît que ce processus prend du temps, est coûteux et n'est pas largement pratiqué.

"Vous voulez plus de sécurité, mais cette sécurité a un prix énorme", déclare Ayush Poddar, un développeur back-end indépendant qui a rejoint Toptal en 2021.

Des plates-formes telles que Black Duck, Sonatype, Snyk et WhiteSource fournissent une automatisation pour aider à trouver des composants open source dans la pile d'un programme informatique et à identifier les vulnérabilités. Pourtant, ces outils sont limités et le suivi des correctifs de code est un autre problème qui ne fait qu'empirer - l'agence américaine de cybersécurité et de sécurité des infrastructures signale souvent des centaines de nouvelles vulnérabilités logicielles par semaine.

« Vous ne pouvez pas tester toutes les combinaisons de la façon dont chaque bit de code peut être exécuté », explique Aidan McManus, un cadre technique à la retraite qui a supervisé l'architecture et l'ingénierie informatiques chez CA Technologies. "Cela prendrait des années."

Mats Heimdahl, directeur du département d'informatique et d'ingénierie de l'Université du Minnesota, note que Kangjie et ses chercheurs ont également trouvé de nombreux correctifs défectueux dans le noyau, distincts des bogues qu'ils ont soumis. "Il est, à mon avis, assez clair qu'un processus d'examen manuel par des bénévoles surmenés et sous-estimés (même par des mainteneurs extrêmement qualifiés et dévoués) sera inévitablement imparfait", a écrit Heimdahl dans un e-mail.

Le fait que les vulnérabilités augmentent soulève des questions fondamentales sur la manière dont l'open source va être géré. Bien qu'il accélère l'innovation, il s'agit essentiellement d'une ressource partagée, une vaste bibliothèque de logiciels gratuits qui permet aux consommateurs d'économiser 60 milliards de dollars par an et augmente également les bénéfices des entreprises en réduisant leurs coûts de développement. Il peut tout simplement y avoir trop de resquilleurs, sans suffisamment de ressources consacrées à l'entretien et à la sécurité.

Interdiction du noyau Linux de l'Université du Minnesota : limites apprises

Bien que rien n'indique que la vérification des correctifs ait changé, la Fondation Linux établit un ensemble de meilleures pratiques pour les chercheurs qui travaillent avec le noyau et a recommandé à l'Université du Minnesota de nommer un réviseur pour ses soumissions. Il n'y a vraiment pas d'alternative à la révision du code et la communauté en place fait maintenant un travail raisonnable pour empêcher le code malveillant d'entrer, dit Barcomb. Compte tenu de l'autonomie requise pour le travail intellectuel, dit-elle, "le mieux que vous puissiez faire est d'avoir des processus en place pour identifier les violations de confiance et réagir en conséquence, dans le meilleur des cas avant que les changements ne soient incorporés".

Heimdahl note que son institution organise un comité pour donner des conseils sur les soumissions de correctifs en attendant que l'interdiction soit levée.

Linux était autrefois une idée extérieure, un contrepoint audacieux à la pensée traditionnelle sur les logiciels propriétaires, mais il a évolué en quelque chose qui ressemble beaucoup plus à un projet commercial. Huawei, Intel et Red Hat sont à la tête des centaines d'entreprises qui contribuent régulièrement au code du noyau Linux. Bien que bon nombre de ces entreprises donnent également de l'argent à la Linux Foundation et aux affiliés de l'Open Source Initiative, il est peut-être temps d'adopter une approche plus systématique pour prendre en charge le logiciel afin d'aider à améliorer la sécurité à l'avenir, une approche qui valorise mieux les avantages d'une telle des systèmes open source cruciaux.

"Les gens tiennent pour acquis que l'open source fonctionne", déclare Christopher Tozzi, maître de conférences au Rensselaer Polytechnic Institute. "Il y a toute une nouvelle génération de personnes qui n'ont pas vraiment réfléchi à ces problèmes."