Барои ҷудокунӣ, технологияҳои анъанавии виртуализатсияи контейнерии Linux истифода мешаванд, ки дар асоси истифодаи гурӯҳҳо, фазоҳои номҳо, Seccomp ва SELinux истифода мешаванд. Барои иҷрои амалиёти имтиёзнок барои танзими контейнер, Bubblewrap бо ҳуқуқи реша (файли иҷрошаванда бо парчами suid) оғоз карда мешавад ва пас аз оғоз кардани контейнер имтиёзҳоро аз нав барқарор мекунад.
Активация в системе пространств имён идентификаторов пользователя (user namespaces), позволяющих использовать в контейнерах собственный отдельный набор идентификаторов, для работы не требуется, так как по умолчанию не работает во многих дистрибутивах (Bubblewrap позиционируется как ограниченная suid-реализация подмножества возможностей user namespaces — для исключения всех идентификаторов пользователей и процессов из окружения, кроме текущего, используются режимы CLONE_NEWUSER и CLONE_NEWPID). Для дополнительной защиты исполняемые под управлением
Bubblewrap программы запускаются в режиме PR_SET_NO_NEW_PRIVS, запрещающем получение новых привилегий, например, при наличии флага setuid.
Ҷудокунӣ дар сатҳи системаи файлӣ тавассути эҷоди фазои нави васлкунӣ ба таври нобаёнӣ анҷом дода мешавад, ки дар он қисмати решаи холӣ бо истифода аз tmpfs сохта мешавад. Дар ҳолати зарурӣ, қисмҳои берунаи FS ба ин қисм дар реҷаи "mount —bind" замима карда мешаванд (масалан, ҳангоми ба кор андохтани опсияи "bwrap —ro-bind /usr /usr", қисмати /usr аз системаи асосӣ интиқол дода мешавад. дар ҳолати танҳо барои хондан). Имкониятҳои шабака бо дастрасӣ ба интерфейси бозгашт бо изолятсияи стек шабака тавассути парчамҳои CLONE_NEWNET ва CLONE_NEWUTS маҳдуданд.
Фарқи калидӣ аз лоиҳаи шабеҳ
Новый выпуск примечателен реализацией поддержки присоединения существующих пространств имён идентификаторов пользователей (user namespaces) и процессов (pid namespaces). Для управления подключением пространств имён добавлены флаги «—userns», «—userns2» и «—pidns».
Данная возможность не работает в режиме setuid и требует применения отдельного режима, который может работать без получения прав root, но требует активации
user namespaces в системе (по умолчанию отключены в Debian и RHEL/CentOS) и не исключает возможность
Манбаъ: opennet.ru