- комментарий 0:
From: kmeaw
Date: 2021-01-27 14:39:25Z
doas всё ещё требует setuid:
> if (geteuid())
> errx(1, "not installed setuid");
Эту утилиту можно переписать таким образом, чтобы ей не требовался
setuid, а права она могла только понижать.
Прототип: https://github.com/kmeaw/escalator
Давая возможность пользователю запускать setuid-программу, мы подвергаем
систему большему риску, чем давая ему же возможность взаимодействовать
через сокет с привилегированным процессом.
- комментарий 1:
From: Sergey Matveev
Date: 2021-01-27 14:49:33Z
*** kmeaw [2021-01-27 17:32]:
>Давая возможность пользователю запускать setuid-программу, мы подвергаем
>систему большему риску, чем давая ему же возможность взаимодействовать
>через сокет с привилегированным процессом.
С одной стороны согласен. С другой -- если setuid программа достаточно
проста, то и напортачить в ней куда сложнее и setuid не есть абсолютное
зло. Всё хорошо в меру :-)
- комментарий 2:
From: Sergey Matveev
Date: 2021-01-28 08:34:27Z
*** kmeaw [2021-01-27 17:32]:
>Прототип: https://github.com/kmeaw/escalator
Интересно выглядит, кстати! И небольшого размера и сама идея отсутствия
setuid (хотя, против которого я не сильно много чего против имею) и факт
только понижения прав.