Есть ли такая вещь, как нормальный рут и реальный рут в Unix/Linux?

Я делаю проект переполнения буфера (в Ubuntu 11.04), и я вызываю /bin /zsh и /bin /bash отдельно. В обоих случаях

$whoami возвращает root

$id возвращает uid = 1000, euid = 0, gid = 1000.

Но когда я пытаюсь бежать

$passwd username

чтобы изменить пароль какого-то пользователя, оболочка возвращает:

passwd: You may not view or modify password information for username

Есть ли что-то, чего мне здесь не хватает, так как я считаю, что это root не имеет привилегий низкого уровня. Я искал по всей сети, но я, кажется, не могу найти исчерпывающий ответ.

1 ответ1

3

Вы имеете в виду «реальный UID / GID» против «эффективного UID / GID» ..?

реальный UID : это UID процесса, который создал этот процесс - например, как вы вошли в систему.

эффективный UID: этот UID используется для оценки привилегий процесса для выполнения действий.

Вы должны проверить здесь:

http://www.lst.de/~okir/blackhats/node23.html

http://mahmudonline.com/?p=278

http://en.wikipedia.org/wiki/Setuid

http://en.allexperts.com/q/Unix-Linux-OS-1064/real-effective-user-id.htm


РЕДАКТИРОВАТЬ:

Только что нашел эту страницу, которая имеет хорошее описание:

http://bashscript.blogspot.com/2010/03/unixlinux-advanced-file-permissions.html

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .