La société Canonical a annoncé des changements dans Ubuntu 23.10 qui limitent l'accès des utilisateurs aux espaces de noms d'identifiants utilisateur (user namespace), permettant ainsi d'améliorer la sécurité des systèmes utilisant l'isolation par conteneurs contre les vulnérabilités nécessitant des manipulations avec le user namespace. Selon Google, 44 % des exploits impliqués dans le programme de récompenses pour la découverte de vulnérabilités dans le noyau Linux nécessitent la possibilité de créer des espaces de noms d'identifiants utilisateur.
Au lieu d'un blocage complet de l'accès au user namespace, Ubuntu a mis en place un schéma hybride qui permet à certaines applications de créer des user namespaces en cas de profil AppArmor avec la règle « allow userns create » ou le droit CAP_SYS_ADMIN. Par exemple, un profil a été créé pour Chrome, situé dans /etc/apparmor.d/opt.google.chrome.chrome, qui peut servir d'exemple pour ouvrir l'accès au user namespace pour d'autres applications.
Dans la prochaine version d'Ubuntu 23.10, la limitation de l'accès au user namespace sera proposée comme une option non activée par défaut. Pendant quelques semaines après la sortie d'Ubuntu 23.10, les développeurs collecteront des informations sur l'impact potentiel négatif de la désactivation de l'accès au user namespace sur le fonctionnement des paquets, et prépareront les profils AppArmor correspondants. Ensuite, lors d'une des mises à jour correctives du paquet noyau (Stable Release Updates), cette restriction sera activée par défaut.
Pour activer prématurément la restriction, vous pouvez utiliser les commandes : sudo sysctl -w kernel.apparmor_restrict_unprivileged_unconfined=1 sudo sysctl -w kernel.apparmor_restrict_unprivileged_userns=1
Et pour désactiver : sudo sysctl -w kernel.apparmor_restrict_unprivileged_unconfined=0 sudo sysctl -w kernel.apparmor_restrict_unprivileged_userns=0
Source : opennet.ru
