Si quelque chose s'est démarqué Linux Cela a toujours été votre sécurité. Et, comparé à Windows, ce système d'exploitation open source a toujours été considéré comme infiniment plus sécurisé et à l'épreuve du piratage, malgré l'existence de logiciels malveillants et de vulnérabilités. Les menaces informatiques évoluent constamment et il est donc nécessaire de protéger adéquatement les systèmes d'exploitation si l'on veut éviter les problèmes. Mais dans le cas de Linux, les choses sont différentes : même son créateur assure que le système est tellement sécurisé qu'il n'est pas nécessaire d'ajouter de nouveaux modules de sécurité « inutiles ».
La sécurité des systèmes Linux est possible grâce aux différents Modules de sécurité Linux (LSM) qui font partie du système. LSM est un petit framework au sein du noyau chargé d'orchestrer et de mettre en œuvre les différents modèles de sécurité. À l'heure actuelle, certains des modules de sécurité pour Linux les plus connus sont :
- SELinux (Linux à sécurité améliorée). Développé à l’origine par la NSA, c’est le plus complet et en même temps le plus complexe. Grâce à lui, il est possible de mettre en œuvre un système de contrôle d’accès obligatoire (MAC) extrêmement granulaire, basé sur des politiques très détaillées. Il s'agit du module de sécurité utilisé par les distributions Linux d'entreprise, telles que Red Hat Enterprise Linux, Fedora ou CentOS, en plus d'être l'une des mesures de sécurité phares d'Android.
- AppArmor. C'est similaire à SELinux. Ce module implémente également MAC, mais avec une approche beaucoup plus simple et basée sur des profils par application, définis par des routes et des autorisations claires. C'est celui utilisé par les distributions Linux pour un usage domestique et pour les serveurs, comme Ubuntu ou openSUSE. C'est un système beaucoup plus facile à comprendre, il s'intègre bien avec les logiciels modernes, mais il n'est pas aussi granulaire ou flexible que le précédent.
- Smack (noyau de contrôle d'accès obligatoire simplifié). Smack est un LSM plus simple, conçu dès le départ pour les systèmes embarqués et les environnements contrôlés. Il est surtout utilisé dans les systèmes embarqués, les appareils industriels et dans certains projets spécifiques (comme Tizen en son temps). C’est beaucoup plus simple, consomme moins de ressources, mais son écosystème est beaucoup plus petit.
- Enclavement. Landlock est un LSM relativement nouveau qui permet aux applications non privilégiées d'imposer elles-mêmes des restrictions de sécurité, notamment sur l'accès au système de fichiers. Il est utilisé avant tout en complément de SELinux/AppArmor pour apporter une sécurité supplémentaire dans les applications modernes et traiter le sandboxing, mais ses fonctionnalités sont encore très limitées.
- TOMOYO Linux. Ce module se concentre sur le comportement des processus, en apprenant comment fonctionne une application avant d'appliquer des restrictions strictes. Son usage est très minoritaire, et est utilisé notamment au Japon.
Depuis trois ans, une équipe de chercheurs travaillait sur un nouveau module de sécurité, TSEM, un module de sécurité différent de tous les précédents et qui apporte au système une approche de sécurité différente : au lieu de décider si un processus peut ou non accéder à une ressource, il se charge d'évaluer la sécurité du système en fonction des événements et de l'état de confiance. En termes simples : TSEM ne se concentre pas sur les « autorisations », mais plutôt sur « la confiance et le comportement ». Les chercheurs ont tenté d'inclure ce module de sécurité dans le noyau principal avec peu d'examen ou de conseils clairs sur le processus d'inclusion. En réponse, ils ont évoqué la possibilité de porter l'affaire devant le Technical Advisory Board (TAB) de la Linux Foundation afin d'obtenir des critères plus clairs sur la manière de présenter ces nouveaux modules de sécurité.
Mais le créateur de Linux lui-même, Linus Torvalds, n’a pas très bien réussi.
Il y a trop de modules de sécurité « inutiles » sous Linux
Sans être tranchant, mais avec sa dureté caractéristique, Linus Torvalds a répondu franchement à la demande de ces développeurss. Dans sa réponse, le créateur de Linux a été clair : s'ils ne parviennent pas à convaincre les mainteneurs actuels de LSM d'inclure un nouveau module de sécurité, il ne pourra pas non plus le convaincre directement. En fait, c'est dans cette réponse qu'il a admis qu'il avait déjà il y a trop de modules de sécurité « inutiles » ou « redondants » dans le noyau. Dans ce cas, les responsables des modules de sécurité considèrent que TSEM ne rentre pas dans le noyau car il chevauche d'autres fonctions de sécurité déjà présentes, telles que l'audit ou l'IMA (Integrity Measurement Architecture), et il n'y a aucune raison pour qu'il réside à l'intérieur du noyau plutôt que comme solution externe.
La frontière est mince entre diversité et confusion lorsque chacun pense que son approche en matière de sécurité est la meilleure. Et donc, avant que la mise en œuvre de la sécurité ne devienne incontrôlable, Linus lui-même suggère que l’idéal est de créer une norme de sécurité et de se concentrer sur le travail avec les solutions existantes au lieu d’en créer de nouvelles séparément et que tout finisse dans le chaos.
Malgré son point de vue, Linus a également clairement indiqué qu'il ne voulait pas devenir l'arbitre de cette situation. Selon leurs propres déclarations, il y a déjà trop de débats internes entre défenseurs des différents modèles de sécurité pour en générer davantage.
Et qu’en pense la communauté ? Cette fois, ils semblent être d'accord avec le fondateur de Linux. Et ils avaient déjà demandé à d'autres occasions une déclaration formelle pour bloquer les nouveaux LSM afin que Linux puisse maintenir sa cohésion technologique et empêcher la fragmentation de se produire à nouveau, comme cela s'est produit autrefois avec les systèmes Unix commerciaux.