SUID,SGID和SBIT

一.SUID(SetUID):文件执行者可以暂时获得文件所有者的身份;

注意事项:

Θ只有可执行的二进制文件才能设定SUID权限,也可以给文件夹添加SUID权限,不会报错,但没有意义;

Θ命令执行者必须对文件有x权限,如没有,s会变成大写S,代表报错了.

ΘSUID权限只在该程序执行过程中有效.

具体命令:

添加SUID权限:

chmod 4755 filename

chmod u+s filename

取消SUID权限:

chmod 755 filename

chmod u-s filename

#典型的具有SUID性质的文件是 passwd 命令;

 

由于普通用户不能操作 /etc/shadow 密码文件,所以在修改shadow文件时,需借助passed工具来暂时性的称为root用户,获得万能权限来操作shadow文件.

♥SUID权限十分危险,没事不要给一般文件此权限.

举例:当vim文件获得SUID权限时,一般用户就可以用vim修改 /etc/passwd 文件,来使自己成为超级用户,十分危险!

二.SGID(SetGID):对二进制文件:文件执行者在执行该文件时,组身份会变更为该文件的所属组;

θ这方面与SUID十分相似.

θ典型的命令有locate.

#我当时系统没有locate命令,用yum  install locate 安装失败了,用yum -y install locate安装成功了,下面说一下两者的不同:

|如果使用yum install xxxx,会找到安装包之后,询问你Is this OK[y/d/N],需要你手动进行选择。但是如果加上参数-y,就会自动选择y,不需要你再手动选择!|

对文件夹:1.需对目录有r+x权限

    2.在目录内创建文件时,文件的所属组会变为给目录添加SGID权限的用户的用户组;

具体命令:

添加SGID权限:

chmod 2755 filename

chmod g+s filename

取消SGID权限:

chmod 755 filename

chmod g-s filename

三.SBIT(Sticky Bit,意为粘滞位)权限:

简单说明下:在拥有此权限的目录下,用户只能操作,删除自己创建的文件.

命令:

添加权限:

chmod 1755 filename

chmod o+t filename

取消权限:

chmod 755 filename

chmod o-t filename

原文地址:https://www.cnblogs.com/Ravenzzz/p/9747133.html