Chinaunix
标题:
关于文件权限的疑问!
[打印本页]
作者:
nmon
时间:
2003-01-28 16:32
标题:
关于文件权限的疑问!
用Ls -l 看出的文件权限中有时会有"s" "S"
对“S”和“s”的解释如下:
如果是用户权限中s:表示用户有x许可权限,且此文件 是一个setuid程序。S:表示用户没有许可权限,此文件是一个steuid程序。
问一下,setuid和setuid是什么?
作者:
feeling
时间:
2003-01-28 18:23
标题:
关于文件权限的疑问!
顾名思义,就是设置UID和设置GID的意思啊!
一般而言,setuid、setgid都是指可执行文件的。
如果这个可执行文件是一个setuid程序,那么该程序执行时进程扮演的将不再是它原来的角色
这样吧,一个程序a.out属主为guest,guest执行之时该程序的有效UID就是guest的UID,别的用户执行之时该程序的有效UID就是别的用户的UID,也就是说用户feeling执行a.out时可能会出现一些问题:如该程序a.out要写一个文件my.log,由于该文件my.log是用户guest所有的,我feeling执行a.out就不能够写该文件。
但是引入seduid的概念后,该问题就不存在了,我feeling执行a.out后程序就具有了用户guest的UID,就可以名正言顺的去写文件my.log了。
setgid依此类推~~~~
我说明白了吗!?
我也不知道!!!
作者:
feeling
时间:
2003-01-28 18:29
标题:
关于文件权限的疑问!
实例大放送
大家可以看一下可执行文件passwd,一般在/usr/bin下,也就是文件/usr/bin/passwd
我们执行passwd可以对文件/etc/passwd进行一些操作,但是处于安全性考虑文件/etc/passwd都是root用户可读写的,别的用户只有读的资格。如:
[/home/feeling]ls -al /etc/passwd
-rw-r--r-- 1 root security 2791 Jan 28 13:25 /etc/passwd
怎么办?
看程序/usr/bin/passwd吧 :
[/home/feeling]ls -al /usr/bin/passwd
-r-sr-xr-x 1 root security 16944 Feb 11 2002 /usr/bin/passwd
看出来什么没有?
程序/usr/bin/passwd是经过了setuid的,就是说即使是普通用户执行它也会具有root用户的权限(尽管只是临时的),从而可以完成对文件/etc/passwd的写操作。
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2