Странное поведение для setuid и setgid
Я делаю небольшой эксперимент со специальными битами привилегий следующим образом:
[root@localhost~]# useradd user1 [root@localhost~]# cp /bin/touch /home/ [root@localhost~]# chown user1:user1 /home/touch [root@localhost~]# chmod u+s,g+s /home/touch [root@localhost~]# ls -l /home/touch -rwsr-sr-x 1 user1 user1 52656 Jun 26 14:17 /home/touch [root@localhost~]# chmod o+w /usr/local/etc/ [root@localhost~]# ls -ld /usr/local/etc drwxr-xrwx.2 root root 4096 Jun 26 14:14 /usr/local/etc/ [root@localhost~]# /home/touch /usr/local/etc/root.1 /home/touch: cannot touch '/usr/local/etc/root.1': Permission denied
Поскольку для исполняемого файла установлены биты suid и sgid /home/touch
, я ожидал, что когда root выполнит команду /home/touch /usr/local/etc/root.1
, user:group
должен быть эффективный user1:user1
, который должен иметь доступ на запись в /usr/local/etc
каталог (см. o=rwx
).
Но результат заставил меня озадачиться. На самом деле, любой, принадлежащий к root
группе, потерпит неудачу, как root, но другие пользователи могут успешно выполнить вышеуказанную команду.
Только после того, как я изменил режим каталога chmod g+w /usr/local/etc
, пользователи, принадлежащие к root
группе, могут выполнить команду без ошибки разрешения.
Эффективный пользователь не должен: группа для тех, кто работает /home/touch
быть user1:user1
? Что не так с корневой группой? Я что-то пропустил?
Я взял эксперимент на RHEL 6.4 64-битной
0 ответов на вопрос
Похожие вопросы
-
9
В чем разница между командами "su -s" и "sudo -s"?
-
4
Требуется хороший бесплатный образ Ubuntu Server VMWare
-
4
Каковы различия между основными дистрибутивами Linux? Я замечу?
-
-
2
Ограничить использование процессора для Flash в Firefox?
-
2
Как мне заставить мой микрофон работать под Debian GNOME?
-
2
Конки установки - образцы / идеи?
-
3
Каковы различия между оконными менеджерами Linux?
-
2
ThunderBird / Синхронизация освещения с SE k770i
-
4
Файловая система Linux
-
6
Полноэкранная медленная вспышка в KDE 4