Я работаю на виртуальной машине, которая может взаимодействовать с NIS-сервером моей организации. У меня нет большого опыта с этим, но я заметил, что я могу стать другим пользователем с моего хоста без пароля root на сервере NIS. На самом деле, приведенный ниже запрос не запрашивает пароль. Поведение тоже немного странное; возможно, кто-то может объяснить, почему это не работает без sudo
хотя я root.
[root@unsecurehost ~]# su - myusername
su: user myusername does not exist
[root@unsecurehost ~]# sudo su - myusername
Last login: Mon Feb 12 19:24:17 UTC 2018 on pts/0
Last failed login: Mon Feb 12 19:28:13 UTC 2018 on pts/0
There were 2 failed login attempts since the last successful login.
su: warning: cannot change directory to /network/path/home/myusername: No such file or directory
-bash-4.2$ id
uid=012345(myusername) gid=0123(companyname) groups=0123(companyname),9999(othergroupname) context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
Мой uid
, gid
и groups
являются правильными.
Обычно я думаю, что это не проблема, но он пытается получить доступ к /network/path/home/myusername
, который является моим (сетевым) домашним каталогом. У меня не смонтировано хранилище, но я могу сделать это на этом хосте.
Я только сконфигурировал файл yp.conf
, который может прочитать любой на наших машинах, и запустил ypbind
.
Было бы возможно использовать это? У некоторых пользователей есть конфиденциальная информация, и если я смогу стать другим пользователем и получить доступ к файлам, это дыра в безопасности. Я еще не пробовал это в реальной ситуации, потому что хотел бы верить, что это невозможно (возможно, сетевое хранилище не допустит этого, или поле "context" имеет какое-то значение?). Сейчас это не будет большой проблемой, но мы работаем на виртуальных машинах, которые позволяют администраторам пользователей, которые потенциально могут позволить любому из наших пользователей стать пользователем root.
Пожалуйста, дайте мне знать, что здесь происходит.