博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Linux——SUID、SGID、SBIT简介
阅读量:4700 次
发布时间:2019-06-09

本文共 1215 字,大约阅读时间需要 4 分钟。

一、SUID、SGID、SBIT简介

SUID:对一个可执行文件,不是以发起者身份来获取资源,而是以可执行文件的属主身份来执行。

SGID:对一个可执行文件,不是以发起者身份来获取资源,而是以可执行文件的属组身份来执行。
SBIT:粘滞位,通常对目录而言。通常对于全局可写目录(other也可写)来说,让该目录具有SBIT后,删除只对属于自己的文件有效(但是仍能编辑修改别人的文件,除了root的)。不能根据安全上下文获取对别人的文件的写权限。

 

设置方式:

#chmod u+s
#chmod g+s
#chmod o+t

 同上,去除特殊位有: #chmou u-s .等。

SUID:置于 u 的 x 位,原位置有执行权限,就置为 s,没有了为 S .

SGID:置于 g 的 x 位,原位置有执行权限,就置为 s,没有了为 S .
SBIT : 粘滞位,置于 o 的 x 位,原位置有执行权限,就置为 t ,否则为T .

表示方法:
将三个特殊位的用八进制数值表示,放于 u/g/o 位之前。其中 suid :4 sgid:2 SBIT:1
例: 对某个目录:
#chmod 4551 file // 权限: r-sr-x--x
#chmod 2551 file // 权限: r-xr-s--x
#chmod 1551 file // 权限: r-xr-x--t

 

由于SUID和SGID是在执行程序(程序的可执行位被设置)时起作用,而可执行位只对普通文件和目录文件有意义,所以设置其他种类文件的SUID和SGID位是没有多大意义的。
对一个属主为root的可执行文件,如果设置了SUID位,则其他所有普通用户都将可以以root身份运行该文件,获取相应的系统资源。当然这在某些场合时需要的,但是滥用会造成系统的安全隐患。
对一个全局可写目录,若其从属于mygrp组,一个属于mygrp组的用户建立文件后属组为自己的私有组,但是加上给该文件夹加上SGID位后,可以让用户创建的文件从属于该目录所属的组,因为是以文件夹属组的身份来创建的。
对于一个全局可写目录,加上SBIT位以后,普通用户将只能删除自己的文件,而不能删除其他用户的文件。
粘着位(sticky)-----tmp目录
一般来说都是用于目录
其他用户可以写 但是就是不能随便的删除。。。。。。
chmod 777 abc
chmod +t abc
等价于   chmod 1777 abc
,即当一个目录被设置为"粘着位"(用chmod a+t),则该目录下的文件只能由
一、超级管理员删除
二、该目录的所有者删除
三、该文件的所有者删除
也就是说,即便该目录是任何人都可以写,但也只有文件的属主才可以删除文件
UID---4
GID---2
黏贴位-1

 

转载于:https://www.cnblogs.com/joe-four/p/joe_four_L_03.html

你可能感兴趣的文章
Glider Gym - 101911B(二分+前缀和)
查看>>
Greedy Pirate Gym - 101810M (lca)
查看>>
线性基(模板)
查看>>
bzoj-1030: [JSOI2007]文本生成器(ac自动机+dp)
查看>>
Bus Planning(状压DP)
查看>>
HDU 1828 Picture(线段树:扫描线 面积并)
查看>>
GCD - Extreme (II)(欧拉函数)
查看>>
Mondriaan's Dream POJ - 2411(状压dp)
查看>>
hdu-6703 array(主席树+set)
查看>>
LCM from 1 to n
查看>>
Fear Factoring Gym - 101652P(除法分块)
查看>>
Tree POJ - 1741 (点分治)
查看>>
Too Rich UVALive - 7183(贪心)
查看>>
欧拉定理证明&阶乘的逆元
查看>>
Prime Game Gym - 101981J(网络流/二分图)
查看>>
Teamwork Gym - 101492E (dp)
查看>>
No Link, Cut Tree! Gym - 101484F(dp)
查看>>
Coprimes Gym - 101492C(bitset)
查看>>
Partial Tree UVALive - 7190(完全背包)
查看>>
『深度应用』NLP机器翻译深度学习实战课程·零(基础概念)
查看>>