[root@localhost /]# ls -l /bin/bash
-rwxr-xr-x 1 root root 626028 2003-02-11 /bin/bash
-----------------------------------------------------------------------------------
[root@localhost /]# chmod u+s /bin/bash
[root@localhost /]# ls -l /bin/bash
-rwsr-xr-x 1 root root 626028 2003-02-11 /bin/bash
s位的说明:
如上图所示:
一般来说,一个运行中的程序为运行这个程序的用户所拥有。 但如果该程序是suid/guid程序,则运行的程序则为文件所有者拥有,运行中的程序在程序运行期间拥有文件所有者的全部权限。 如果一个普通用户运行了一个属于根用户的带s标志的程序,那么,该程序将不考虑用户权限,而是自动拥有在系统中读/写任何文件及目录的特权。
这样做,有一定的好处,但一般我们不建议采用s位,要严格设置这种权限,避免破坏性。
比如:若你的suid程序是/bin/bash的话,则会导致严重后果,一个普通用户若在某个短时间取得过root权限,他就能设置一个suid程序/binb/bash来取得根特权。 (若拿它来破坏别人的系统,后果自负)
# cp /bin/bash /home/jephe/.backdoor
# chmod 4755 /home/jephe/.backdoor
这样当攻击者执行了/home/jephe/.backdoor后就得到了根特权,可用id命令显示suid=0
t位的说明:
t位就比较好理解了。如下图所示:
[root@localhost root]# ls -l 4444.jpg
-rw-r–r-- 1 root root 550349 3?? 14 14:31 4444.jpg
[root@localhost root]# chmod o+t 4444.jpg
[root@localhost root]# ls -l 4444.jpg
-rw-r–r-T 1 root root 550349 3?? 14 14:31 4444.jpg
程序的t属性表示粘着位,即告诉系统在程序完成后在内存中保存一份运行程序的备份,如该程序常用,可为系统 节省点时间,不用每次从磁盘加载到内存。由本人注明:是保存在虚拟内存中,而不是物理内存中。
目录的t属性,设置了目录的T属性后1000,由只有该目录的所有者及root才能删除该目录,
如/tmp目录就是drwxrwxrwt
记住,记住,呵呵。
文件特殊权限
猜你喜欢
转载自blog.csdn.net/Vickers_xiaowei/article/details/83114043
今日推荐
周排行