Компания Canonical объявила о внесении в Ubuntu 23.10 изменений, ограничивающих доступ пользователей к пространствам имён идентификаторов пользователя (user namespace), что позволит повысить защищённость систем, использующих контейнерную изоляцию, от уязвимостей, для эксплуатации которых необходимы манипуляции с user namespace. По данным Google, 44% эксплоитов, участвующих в программе по выплате денежных вознаграждений за выявление уязвимостей в ядре Linux, требуют наличия возможности создания пространств имён идентификаторов пользователя.
Вместо полной блокировки доступа к user namespace в Ubuntu применена гибридная схема, выборочно оставляющая некоторым программам возможность создавать user namespace при наличии профиля AppArmor с правилом “allow userns create” или прав CAP_SYS_ADMIN. Например, для Chrome создан профиль /etc/apparmor.d/opt.google.chrome.chrome, который можно использовать в качестве примера для открытия доступа к user namespace для других программ.
В грядущем выпуске Ubuntu 23.10 ограничение доступа к user namespace планируют предложить в качестве опции, не включённой по умолчанию. В течение нескольких недель после релиза Ubuntu 23.10 разработчики соберут сведения о возможном негативном влиянии отключения доступа к user namespace на работу пакетов и подготовят соответствующие профили AppArmor.
Затем в одном из корректирующих обновлений пакета с ядром (Stable Release Updates) ограничение будет активировано по умолчанию.
Для досрочного включения ограничения можно использовать команды:
sudo sysctl -w kernel.apparmor_restrict_unprivileged_unconfined=1 sudo sysctl -w kernel.apparmor_restrict_unprivileged_userns=1
А для отключения: