Une fonctionnalité de verrouillage dans le noyau Linux, proposée depuis plusieurs années, vient d’être acceptée par le créateur du kernel, Linus Torvalds. Lorsqu’elle sera activée, Lockdown permettra de restreindre l’accès à certaines fonctions du noyau.
(Crédit Photo: DR)
L’introduction d’une fonctionnalité de « lockdown » dans le noyau Linux vient d’être approuvée par Linus Torvalds, après de nombreuses années d’échanges sur le sujet. La plupart des distributions les plus courantes du système d’exploitation en ont proposé des variantes depuis de nombreuses années, mais le créateur du kernel open source était jusque-là réticent à l’insérer dans le noyau de l’OS. Cette fonctionnalité a été présentée par Matthew Garret, ingénieur chez Google, qui en est à l’origine avec David Howells et d’autres développeurs. Elle « introduit une fonctionnalité optionnelle de verrouillage du noyau destinée à renforcer le lien entre UID 0 et le noyau », indique la description d’origine. « Lorsqu’elle est activée, différentes parties du kernel sont restreintes. Les applications qui s’appuient sur un accès de bas niveau vers les matériels ou le kernel cessent alors de fonctionner. C’est la raison pour laquelle cela ne devrait pas être activé sans une évaluation préalable appropriée », préviennent ses zélateurs.
Lockdown va être fourni sous la forme d’un module de sécurité LSM dans la branche 5.4 du noyau qui va être livrée sous peu et permettra donc de verrouiller ce dernier plus tôt dans le processus de démarrage. La fonctionnalité sera désactivée par défaut parce qu’elle pourrait endommager les systèmes existants. Activée, elle permettra de restreindre l’exploitation du noyau, y compris pour les utilisateurs du compte racine, ce qui rendra l’accès au reste de l’OS plus difficile pour les comptes racines compromis.
Linus Torvalds explique que cela restreint l’accès aux fonctions du kernel qui pourraient autoriser l’exécution de code arbitraire via du code apporté par des processus situés en dehors du noyau (userland processes). Ainsi qu’énuméré sur git.kernel.org, cela bloque notamment les processus d’écriture ou de lecture /dev/mem et /dev/kmem memory ainsi que l’accès à l’ouverture /dev/port et renforce la signature de module du kernel.
Article rédigé par Maryse Gros
Le Monde Informatique | publié le 01 Octobre 201