Выбор ответа Middle Файловая система и права обновлено

Зачем SUID у passwd

Вопрос

Почему у /usr/bin/passwd стоит бит SUID (-rwsr-xr-x root root)?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: Чтобы процесс работал с правами root и мог писать в /etc/shadow. SUID меняет эффективный UID процесса на владельца файла.

Варианты ответа

  1. Чтобы процесс работал с правами root и мог писать в /etc/shadowправильный ответ
  2. Чтобы программу мог запускать только root, а остальные через sudo
  3. Чтобы файл нельзя было удалить или заменить даже пользователю root
  4. Чтобы программа запускалась с группой каталога, где она лежит

Разбор

SUID меняет эффективный UID процесса на владельца файла. Обычный пользователь запускает passwd, а процесс получает права root и пишет в /etc/shadow (права 640 или 600, root). Запуск ограничивает бит x, а не SUID. От удаления защищают права каталога или атрибут chattr +i. Наследование группы каталога это SGID на каталоге.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.