ClickCease Une sécurité de niveau entreprise avec un code source ouvert ? |tuxcare.com

Rejoignez notre populaire bulletin d'information

Rejoignez 4 500+ professionnels de Linux et de l'Open Source !

2 fois par mois. Pas de spam.

L'éthique de la recherche sur la sécurité des logiciels libres

20 mai 2021 - L'équipe de relations publiques de TuxCare

La recherche sur la sécurité est un aspect important de la cybersécurité, mais il n'est pas particulièrement facile de mener des recherches sur la cybersécurité ou de le faire de manière scientifique. Il n'est donc pas tout à fait surprenant qu'une équipe de recherche puisse envisager d'essayer des tactiques "nouvelles" pour mener à bien ses recherches.

Cependant, en avril dernier, une équipe de recherche en sécurité de l'université du Minnesota s'est retrouvée dans l'eau chaude pour des méthodes qui repoussaient les limites éthiques.

Dans cet article, nous expliquons pourquoi nous avons tant besoin de la recherche sur la sécurité en libre accès, pourquoi la recherche sur la cybersécurité nécessite une base scientifique et comment l'équipe de l'université du Minnesota s'est trompée.

Contenu

Introduction à la recherche sur la sécurité des logiciels libres

Comprendre la recherche scientifique

Pourquoi la méthode scientifique est importante

Alors, que s'est-il passé au Minnesota ?

Pourquoi l'approche de l'Université du Minnesota est contraire à l'éthique

Maintenir l'éthique dans la recherche sur la cybersécurité

Conclusion

Contenu bonus : Entretien avec Jay LaCroix (LearnLinuxTV) - L'éthique de l'Open-Source et comment l'Université du Minnesota a échoué avec Linux.

 

Introduction à la recherche sur la sécurité des logiciels libres

La cybersécurité est essentiellement une course. Dans le premier camp, on trouve des acteurs malveillants qui s'efforcent de trouver de nouvelles failles inconnues (vulnérabilités) dans les logiciels informatiques, y compris dans les logiciels libres.

Ces nouvelles failles non découvertes, également appelées "vulnérabilités du jour zéro", sont extrêmement précieuses pour les attaquants. Comme les utilisateurs n'ont pas encore protégé leurs systèmes contre ces failles, les vulnérabilités de type "zero-day" sont plus faciles et plus lucratives à exploiter.

Dans l'autre camp se trouvent les chercheurs en cybersécurité, les équipes qui essaient de trouver des failles avant que les méchants ne trouvent ces vulnérabilités. Lorsque les chercheurs en sécurité découvrent des failles dans les logiciels libres, des mesures correctives peuvent être prises. Les chercheurs testent soigneusement les mesures d'atténuation - comme les correctifs - puis rendent publique la faille, en publiant également les méthodes d'atténuation.

Comme dans toute course, plus l'une des équipes fait d'efforts, plus elle a de chances de gagner la course. C'est pourquoi les efforts déployés dans le cadre de la recherche sur la sécurité des logiciels libres sont si importants : plus les recherches sont nombreuses, moins les acteurs malveillants auront l'occasion d'exploiter les failles de type "jour zéro" découvertes par les méchants.

La description ci-dessus est quelque peu simplifiée. Par exemple, en termes de code logiciel, les chercheurs examineront comment une faille peut conduire à une chaîne de compromissions. Et, au sens large, les chercheurs en cybersécurité ne s'intéresseront pas seulement aux lignes de code logiciel, mais aussi à des éléments tels que les failles des réseaux et du matériel, les procédures et les politiques, ainsi que des aspects plus stratégiques de la cybersécurité.

On peut dire que la recherche sur la sécurité en source ouverte revêt un caractère d'urgence. Ce n'est qu'une question de temps avant qu'une faille ne soit découverte, et il est préférable qu'elle soit découverte par un chercheur en sécurité plutôt que par un pirate.

Toutefois, cette urgence ne justifie pas de prendre des raccourcis. Dans la recherche sur la cybersécurité, le respect d'une méthodologie de recherche scientifique et éthique est tout aussi important que pour les sciences naturelles ou sociales.

 

Comprendre la recherche scientifique

Les méthodes de recherche scientifique peuvent sembler inutilement rigides et restrictives, mais les méthodes de recherche scientifique sont éprouvées et existent pour que les chercheurs puissent soumettre des résultats qui résistent à un examen minutieux. Les méthodes de recherche rigides et structurées aident les chercheurs à éviter les pièges et les erreurs les plus courants qui peuvent compromettre la validité de la recherche.

Par exemple, les méthodes de recherche sont conçues pour éviter les problèmes liés à la manipulation des données - que ce soit intentionnellement ou par accident - et ce, grâce à une conception solide de la recherche. Les risques d'erreurs de recherche, comme le plagiat, sont également atténués lorsque les études de recherche sont conçues selon des méthodologies établies.

Un aperçu complet de la méthode scientifique dépasse le cadre de cet article, mais pour résumer, nous pouvons diviser la recherche scientifique structurée en méthode - et en principes directeurs.

En termes de méthode, les études scientifiques sont essentiellement construites autour d'une hypothèse. Tout d'abord, le chercheur formule une hypothèse sur la base d'observations, d'expériences ou de mesures antérieures. Il fait ensuite une prédiction qui est testée par l'expérimentation. Lorsque les résultats arrivent, l'hypothèse est analysée et confirmée, voire modifiée à la lumière des résultats.

Ensuite, il existe un ensemble de principes qui régissent ce processus. La recherche doit toujours être objective et exempte de tout parti pris - les données doivent être représentatives, par exemple, et non pas un ensemble de données spécialement sélectionnées qui sont rognées à partir des données sources afin de manipuler les résultats.

 

Pourquoi la méthode scientifique est importante

D'autres principes clés de la méthode scientifique sont la capacité de reproduire les résultats et la capacité de vérifier les résultats. Ensemble, ces principes guident les chercheurs afin que les efforts déployés dans la recherche scientifique produisent des résultats solides, fiables et vérifiables.

Nous pouvons citer deux domaines clés. Tout d'abord, lorsque nous pensons au progrès scientifique, que ce soit en matière de cybersécurité ou dans un autre domaine, nous pensons souvent à des blocs de construction. Les chercheurs s'appuient sur les résultats de leurs prédécesseurs et ces blocs de construction doivent donc être suffisamment solides.

En suivant une méthode scientifique solide, les chercheurs créent des "structures" sur lesquelles les futurs chercheurs pourront s'appuyer. En revanche, si la science est défectueuse, la structure peut s'effondrer. C'est la raison pour laquelle la méthode scientifique est si minutieusement lente et restreinte. Elle ne fonctionne qu'avec la collecte systématique et empirique de preuves, afin que la science puisse résister à un examen minutieux.

Mais le deuxième élément, et peut-être l'un des plus importants, des méthodes de recherche scientifique est l'éthique. Il n'est pas difficile de comprendre pourquoi des "raccourcis" qui causent des dommages aux sujets peuvent conduire à des résultats plus rapides dans une étude scientifique. C'est la raison pour laquelle les études sont soumises à un examen minutieux en matière d'éthique, et c'est la raison pour laquelle les grandes institutions éducatives disposent de comités d'éthique - pour examiner minutieusement l'éthique derrière les projets de recherche.

Il est facile d'imaginer comment, en l'absence de toute limite éthique, les études médicales et sociales peuvent porter préjudice aux sujets étudiés.

Même dans le domaine de la recherche en cybersécurité, il peut être tentant de progresser beaucoup plus rapidement en menant des études qui causent du tort aux sujets étudiés. C'est ce qui s'est passé à l'Université du Minnesota cette année.

 

Alors, que s'est-il passé au Minnesota ?

En avril, trois chercheurs de l'université du Minnesota (UMN) ont réalisé une étude sur ce que l'on appelle les attaques de la chaîne d'approvisionnement des logiciels. En d'autres termes, l'équipe de recherche étudiait comment les pirates informatiques pouvaient lancer une attaque en interférant avec la manière dont les logiciels sont développés. L'équipe de l'UMN voulait tester la robustesse de ce processus de développement.

Comme sujets, l'équipe de l'UMN a choisi le groupe qui régit le développement du noyau Linux. La recherche dépendait d'une méthodologie qui fait partie intégrante du développement de logiciels libres - la possibilité pour diverses organisations et personnes de contribuer au code du noyau Linux, sous réserve d'un processus de révision.

Tout comme de nombreuses autres institutions éducatives importantes, l'équipe de l'UMN pourrait contribuer directement au noyau Linux. Les contributions de l'UMN seraient soumises à un examen, et c'est ce processus d'examen qui intéressait les trois étudiants diplômés.

Dans cette étude, l'équipe de recherche a tenté d'insérer une vulnérabilité de type "use-after-free" (UAF) dans le noyau Linux en soumettant un code défectueux en vertu de sa capacité à faire des soumissions au noyau. L'équipe souhaitait évaluer si ce code défectueux était repéré par le processus de révision.

Les soumissions ont été faites plusieurs fois et, il s'avère que les failles ont été repérées par l'équipe qui surveille les soumissions au noyau Linux. Cependant, l'équipe de surveillance du noyau Linux n'a pas été satisfaite lorsqu'elle a découvert qu'elle faisait l'objet d'une étude de recherche dont elle n'avait pas connaissance. Il s'est avéré que les chercheurs avaient soumis un code défectueux et, en conséquence, l 'UMN s'est vu interdire de soumettre d'autres mises à jour du noyau Linux.

Du point de vue de la recherche, on peut comprendre pourquoi les étudiants de l'UMN ont tenté de poser la question qu'ils ont posée. Si un code défectueux est soumis au noyau Linux, sera-t-il signalé ? Et si oui, combien de temps faut-il pour que ce code soit signalé ? Cependant, d'un point de vue éthique, les méthodes de l'équipe n'étaient pas acceptables.

 

Pourquoi l'approche de l'Université du Minnesota est contraire à l'éthique

L'approche de l'équipe UMN comportait plusieurs failles éthiques. Tout d'abord, l'équipe n'a jamais informé la communauté open-source qu'elle prévoyait de mener cette recherche. Par conséquent, les sujets de l'étude ont été soumis à des expériences sans leur consentement, ce qui va à l'encontre de l'approche éthique des études scientifiques.

Ensuite, le code défectueux soumis par l'UMN aurait pu rester dans le noyau et être inclus dans diverses distributions Linux, ce qui aurait pu causer des dommages à un certain nombre de parties en aval.

Là encore, c'était contraire à l'éthique, tout simplement parce qu'une étude de recherche ne devrait jamais entraîner de préjudice. Il est intéressant de noter que le processus de nettoyage, une fois l'équipe de l'UMN découverte, a été assez difficile car les chercheurs de l'UMN n'ont pas documenté clairement leurs efforts. En substance, toutes les contributions de l'UMN au noyau ont dû être retirées pour éliminer le risque que du code "expérimental" défectueux se retrouve dans les distributions Linux courantes.

Les chercheurs à l'origine de cette étude n'ont pas obtenu l'autorisation de leurs sujets - une violation majeure de l'éthique de la recherche. Les chercheurs ont également violé l'un des principes fondamentaux du développement de logiciels libres - la confiance - en introduisant volontairement des bogues dans le noyau. Cela a entraîné une réaction de colère de la part de l'ensemble de la communauté.

Quelle que soit l'opinion que l'on ait sur les mérites de l'étude, il ne fait aucun doute que les limites éthiques ont été violées, et il n'est donc pas étonnant que, il y a quelques semaines, l'équipe de surveillance du noyau Linux ait bloqué toute nouvelle contribution des étudiants et du personnel de l'université du Minnesota.

 

Maintenir l'éthique dans la recherche sur la cybersécurité

Au début de cet article, nous avons expliqué pourquoi la recherche en matière de cybersécurité est si importante : les utilisateurs de technologies sont essentiellement en guerre contre des acteurs malveillants qui vont du simple criminel à des pays entiers. Les cyberattaques coûtent des milliards à l'économie et peuvent détruire des organisations entières.

Il est tout aussi important de mener des recherches sur la cybersécurité dans le respect de l'éthique, afin de pouvoir se fier aux résultats, les vérifier et en tirer des enseignements, et de prévenir tout préjudice. Cependant, un autre enjeu est en jeu.

S'il existe un climat de peur et de méfiance autour de la recherche sur la cybersécurité, cela aura probablement un impact sur les efforts de recherche futurs : à la fois la motivation pour effectuer cette recherche, et la confiance dans les résultats de la recherche.

C'est pourquoi il est si important que les chercheurs dans le domaine de la cybersécurité suivent la méthode scientifique et toutes ses caractéristiques associées - y compris une approche éthique de la recherche en cybersécurité.

Dans le cas de l'UMN, le comité d'éthique doit examiner une étude de recherche et signaler les problèmes éthiques. Nous ne pouvons que spéculer sur les raisons pour lesquelles le comité de l'UMN n'a pas mis un terme à cette étude. Peut-être que le comité d'éthique n'a pas apprécié à leur juste valeur les nuances du développement de logiciels libres ni les questions éthiques soulevées par l'étude de recherche.

Quant à l'équipe de l'UMN, les chercheurs auraient dû au moins demander la permission aux mainteneurs du noyau pour réaliser l'expérience. Ne pas le faire a abusé de la bonne volonté de la communauté open-source étant donné que ces soumissions de noyaux sont simplement acceptées et incluses.

 

Conclusion

Si l'on considère la recherche scientifique dans son ensemble, des incidents tels que celui que nous venons de décrire sont peu fréquents, mais pas inédits. Ils deviennent certainement moins fréquents au fil du temps, à mesure que le processus de recherche et de contrôle devient plus approfondi. Par exemple, nous assistons à peu d'expériences médicales aussi folles qu'il y a un siècle environ.

Lorsqu'un comportement de recherche contraire à l'éthique est détecté, une réaction ferme et une publicité peuvent contribuer à dissuader des comportements similaires. L'équipe de l'UMN a été réprimandée et la réputation générale du département d'informatique de l'université a été quelque peu entachée.

Elle devrait servir de leçon aux autres : même dans la recherche sur la cybersécurité, la méthode scientifique et l'éthique ont leur importance. Nous ne progresserons pas de manière significative contre la menace cybercriminelle sans une approche collaborative qui respecte les intérêts de chacun.

Enfin, la nature confiante de la communauté des logiciels libres doit être préservée. Il n'est pas acceptable que les chercheurs en cybersécurité abusent de la confiance qui est si intrinsèque au progrès des logiciels à code source ouvert. Ceux qui gèrent le développement des logiciels à code source ouvert doivent rester vigilants et décourager activement toute expérimentation inutile.

 

Contenu bonus : L'éthique du logiciel libre et comment l'université du Minnesota a échoué avec Linux.

Regardez la discussion entre Jay de LearnLinuxTV et notre évangéliste TuxCare Joao Correia sur la façon dont l'Université du Minnesota s'est trompée sur l'open-source, les forces et les faiblesses de l'open-source en général.

Vous cherchez à automatiser la correction des vulnérabilités sans redémarrage du noyau, temps d'arrêt du système ou fenêtres de maintenance programmées ?

Découvrez le Live Patching avec TuxCare

Devenez rédacteur invité de TuxCare

Commencer

Courrier

Rejoindre

4,500

Professionnels de Linux et de l'Open Source
!

S'abonner à
notre lettre d'information