Как стать автором
Обновить

Разработчик Леннарт Поттеринг представил утилиту run0, позволяющую выполнять процессы под идентификаторами других пользователей. Утилита позиционируется как более безопасная замена программы sudo, реализованная в форме надстройки над командой systemd-run и позволяющая избавиться от применения исполняемого файла с флагом SUID.

Утилита run0 включена в состав выпуска systemd 256, который находится на стадии кандидата в релизы.

В run0 осуществляется обращение к системному менеджеру с запросом запуска командной оболочки или процесса с указанным идентификатором пользователя, создания нового псевдотерминала (PTY) и пересылки данных между ним и текущим терминалом (TTY). Подобное поведение напоминает запуск при помощи ssh, чем выполнение при помощи классического sudo. Привилегированный процесс запускается в изолированном контексте, который порождается процессом PID 1, а не процессом пользователя, не наследует свойства окружения пользователя, за исключением проброса переменной окружения $TERM. Проброс регулируется через список явно разрешённых свойств, вместо попыток запретить опасные свойства (концепция белого списка).

Для авторизации и определения возможностей пользователя в run0 используется Polkit. Классический язык описания правил (/etc/sudoers), применяемых в sudo, не поддерживается. Функциональность для запуска программ с другими привилегиями встроена в systemd-run, а команда run0 создаётся как символическая ссылка на systemd-run.

Источник: OpenNET.

Теги:
Всего голосов 3: ↑3 и ↓0+4
Комментарии2

Публикации

Истории

Работа

Ближайшие события

Конференция HR API 2024
Дата14 – 15 июня
Время10:00 – 18:00
Место
Санкт-ПетербургОнлайн
Конференция «IT IS CONF 2024»
Дата20 июня
Время09:00 – 19:00
Место
Екатеринбург
Summer Merge
Дата28 – 30 июня
Время11:00
Место
Ульяновская область