Linux文件特殊权限

落日映苍穹つ 2022-03-28 12:24 391阅读 0赞

Linux文件特殊权限

除了我们前面介绍的rwx权限外,Linux中还有另外三种特殊权限:SUID,SGID,SBIT

一、SUID,SGID,SBIT介绍

1.SUID:s出现在文件所有者的x权限上。
  • 1)SUID只能用于二进制可执行文件,对目录无效
  • 2)执行者若具有该文件的x权限,则将具有文件所有者的权限
  • 3)权限只在文件执行时有效,执行完毕不再拥有所有者权限
2.SGID:s出现在文件所属群组的x权限上。
SGID和SUID不同,可以用于目录
  • 1)使用者若有此目录的x,w权限,则可进入和修改此目录
  • 2)使用者在此目录下的群组将变成该目录的群组,新建的文件,群组是此目录的群组。
SGID对于文件来说
  • 1)SGID只对二进制可执行文件有效
  • 2)执行者若具有该文件的x权限,则将具有文件所属群组的权限
  • 3)权限只在文件执行时有效,执行完毕不再拥有所属群组权限
3.SBIT:t出现在文件其他用户的x权限上。
  • 1)和SUID,SGID不同的是,只能用于目录
  • 2)使用者在该目录下,仅自己与root才有权力删除新建的目录或文件

二、为什么要使用特殊权限

举个例子,比如 /usr/bin/passwd 这个二进制文件。
它的权限是 -rwsr-xr-x ,我不是所有者,我具有”x”权限,我执行它时,获得了它的所有者(即root)的权限,
所以在该二进制程序执行时,我可以用它来读到我平时是没有权限访问的 /etc/shadow 文件(-r————),从而能更改我自己的密码

三、修改SUID,SGID,SBIT权限

1.符号类型修改权限

chmod u+s test —为test文件加上suid权限
chmod g+s test —为test文件加上sgid权限
chmod o+t test —为test文件加上sbit权限

2.数字类型修改权限

我们知道普通文件的rwx权限修改
对于特殊权限,需要在最前面增加一位,SUID:4,SGID:2,SBIT:1
chmod 4777 test —test拥有SUID权限,rwsrwxrwx
chmod 2777 test —test拥有SGID权限,rwxrwsrwx
chmod 1777 test —test拥有SBIT权限,rwxrwxrwt

发表评论

表情:
评论列表 (有 0 条评论,391人围观)

还没有评论,来说两句吧...

相关阅读

    相关 Linux特殊权限

    Linux下的文件权限 前面我们提到了关于文件的三个重要权限,那就是r、w、x这三个读、写、可执行的权限,是不是文件系统只有这三个权限呢?答案当然是否定的,首先,我们来看

    相关 文件特殊权限

    1. SetUID 只有可以执行的二进制文件才能设定SUID权限。 命令的执行者要对该可执行文件拥有x(执行)权限。 命令的执行者在执行该文件时,身份会