Вопрос

I've been noticed that normal users can change their own passwords without sudo. But as far as i know, to change password has to write the /etc/shadow file which is accessible only by root.

How does that happen??

Это было полезно?

Решение

The passwd program in installed setuid root:

$ ls -l `which passwd`
-rwsr-xr-x 1 root root 41284 Sep 12  2012 /usr/bin/passwd

Note the s in the fourth position. This is a flag that can be set in the file permissions that tells Linux to assume the privileges of the user that owns the executable when it is run - in this case, root.

Другие советы

User can just change the password running

passwd

from linux command line.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top