特殊权限之suid

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了特殊权限之suid相关的知识,希望对你有一定的参考价值。

注:suid它有局限性,只作用于可执行二进制的文件


1、查看umask值

[[email protected] ~]# umask

0022

前面第一位是权限中的特殊权限


2、查看存放密码文件

[[email protected] ~]# ls -l /etc/shadow

---------- 1 root root 799 9月  20 20:48 /etc/shadow

说明:这个是存放密码的文件,是不可以进行任何操作的,但是root这个用户却可以进行任何操作,而其实普通用户可以修改自己的密码,但这里显示的权限却是不可的,这样的说法似乎不成立,但是我们的passwd命令它是一个比较特殊的文件

查看它的权限分配:

[[email protected] ~]#  ls -l /usr/bin/passwd

-rwsr-xr-x. 1 root root 30768 2月  22 2012 /usr/bin/passwd

说明: 跟我们想象的似乎不太一样,这里有一个s,这s就代着set_uid,这个权限的作用它可以把使用这个命令的人,赋予这个人给它一种临时的权限,而这个临时权限的拥有者是root,也就是说当普通用户使用这个命令的时候,它就可以临时拥有root用户的权限,所以它才能更改自己的密码。


3、举例

[[email protected] ~]# su - wyy               #切换到一个普通用户下

[[email protected] ~]$ ls /root

ls: 无法打开目录/root: 权限不够

[[email protected] ~]$ logout

[[email protected] ~]# which ls

alias ls=‘ls --color=auto‘

/bin/ls

[[email protected] ~]# chmod u+s /bin/ls          #修改特殊权限

[[email protected] ~]# su - wyy

[[email protected] ~]$ ls /root

anaconda-ks.cfg  install.log  install.log.syslog


4、把特殊权限去掉

chmod   u-s  /bin/ls


5、若去掉了执行权限,小s就变成了大S

[[email protected] ~]# chmod u+s /bin/ls

[[email protected] ~]# ls -l /bin/ls

-rwsr-xr-x 1 root root 117024 11月 22 2013 /bin/ls

#去掉执行权限后

[[email protected] ~]# chmod u-x /bin/ls

[[email protected] ~]# ls -l /bin/ls

-rwSr-xr-x 1 root root 117024 11月 22 2013 /bin/ls


本文出自 “linux” 博客,转载请与作者联系!

以上是关于特殊权限之suid的主要内容,如果未能解决你的问题,请参考以下文章

特殊权限之suid

Linux基础之特殊权限

Linux-特殊权限设置(SUIDSGIDSBIT)

suid 特殊权限

文件特殊权限:SUID,SGID,SBIT

特殊权限SUID等详解