Как обычный пользователь может запустить команду passwd в Linux, не будучи пользователем root

Как обычный пользователь может запустить команду passwd в Linux, не будучи пользователем root

Можете ли вы дать совет по этому поводу? Это был вопрос, который мне нужно было проверить, но я не смог этого сделать. Если группа может помочь, можете ли вы дать совет? Мой вопрос ясен: нам не нужно быть пользователем root или root, чтобы сделать это.

решение1

Утилита passwdимеетsetuidбит установлен. Это означает, что он будет запущен каккорень.

$ ls -lh /usr/bin/passwd 
-rwsr-xr-x 1 root root 53K May 17 01:37 /usr/bin/passwd

Таким образом, эта утилита сможет изменять файлы /etc/shadowи /etc/passwd, владельцем которых является root.

Как написано на странице руководства,

Обычный пользователь может изменить пароль только для своей учетной записи.

Программы, использующие этот setuidбит, должны быть разработаны очень тщательно, поскольку запуск от имени root представляет реальную угрозу безопасности.

решение2

Да. Любой пользователь может запустить passwd, чтобы изменить свойсобственныйпароль.

Связанный контент