什么是Suid

什么是Suid,第1张

是一种特殊权限,设置了suid的程序文件,在用户执行该程序时,用户的权限是该程序文乱扰滚件属主的权限。

例如程序文件的属主是root,那么执行该程序的用户就将暂时获得root账户的权限。sgid与suid类哗余似,只是执行程序时获得的是文件属组的权限。passwd这个命令程序的权限设置,它就是设置了suid权限的。

passwd 命令

当要改变账户的密码的时候,我们使用passwd命令,此命令的所有者为root。在我们改变密码的时候, passwd命令将编辑一些配置文件, 如/etc/passwd, /etc/shadow,这些文档只能通过root账户拥有权限打开或者浏览。

所以如果我们试着去除SUID并给予passwd全部权限,它无法打开其他文件,如/etc/shadow更新密码。在我们执行 passwd命令的时候,我们将会遇到权限拒绝的错误或者一些其他的错误。

所以passwd命令设置SUID将root用户权限给予普通用户 ,使得后者可以更新/etc/shadow和李州其他文件。

执行该程序时,用户的权限是该程序文件属主的权限。例如程序文件的属主是root,那么执行该程序的用户就将暂时获得root账户的权限。sgid与suid类似森如裤,只此简是执行程序时获得的是文件属组的权限。

你可以看一下passwd这个命令程序的权限设置,它就是设置了橡罩suid权限的。

设置方法为:

chmod u+s filename (suid)

chmod g+s filename (sgid)

另外,站长团上有产品团购,便宜有保证

文件的特殊权限有三种:1、suid2、sgid3、sticky,其中,suid和sgid用于累加提升权限,简单来说就是如果原来的用户可以访问,反而切换到的用户或者组不能访问,这时候照样是可以访问的,下面介绍下森坦这此手桐三种权限。

SUID:

1、需要注意的是,只对二进制可执行程序有效,不能为普通文件

2、发起者对程序文件必须拥有执行权限

3、启动为进程之后,其进程的宿主为原程序文件的宿主

4、SUID设置在目录上毫无意义。

SGID:

可以应用在二进制文件和作用在文件夹下,当作用在二进制文件下时,作用和SUID相似,只不过SUID是把发起者临时变为文件的所有者,而SGID是把进程的发起者变成源程序文件的属组,默认情况下,用户创建文件时,其属组为此用户所属的主组,当SGID作用在目录下时,则对此目录有写权限的用户在此目录中创建的文件所属的组为此目录的属组,通常用于创建一个协作目录薯消。

Sticky:

默认情况下用户可以删除具有写权限的目录中的任何文件,无论该文件的权限或拥有权,如果在目录设置Sticky位,只有文件的所有者或root**可以删除该文件,Sticky位是作用在文件夹的,设置在文件上毫无意义。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12341722.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-24
下一篇 2023-05-24

发表评论

登录后才能评论

评论列表(0条)

保存