linux特殊权限
Linux特殊权限介绍
[root@www ~]# ll /usr/bin/passwd
-rwsr-xr-x. 1 root root 27832 6月 10 2014 /usr/bin/passwd
[root@www ~]# ll /usr/bin/write
-rwxr-sr-x. 1 root tty 19624 4月 11 2018 /usr/bin/write
[root@www ~]# ll /tmp/ -d
drwxrwxrwt. 9 root root 4096 4月 3 09:49 /tmp/
SUID
全拼:set uid
在属主权限位上,本来应该是x执行权限出现了一个s
一般是针对可执行文件
如果一个可执行文件,在属主权限位的x位上有s权限,那么证明该文件有set uid特殊权限。
set uid:任何用户(除了root外)执行具有suid权限的文件时,会以该文件属主的身份去执行
## SUID授权
# chmod ugo方式
[root@www ~]# chmod u+s 文件或目录
# chmod number方式 4000
[root@www ~]# chmod 4755 aaaa
[root@www ~]# chmod 4000 aaaa
注意:当授权文件,原本属主位上有x权限时,是s,原本属主位上没有x权限时,是S
SGID
全拼:set gid权限
在属组权限位上,本来应该是x执行权限出现了一个s
一般是针对目录,也有可执行文件(大部分针对目录)
[root@www ~]# ll /usr/bin/write
-rwxr-sr-x. 1 root tty 19624 4月 11 2018 /usr/bin/write
1.针对用户组权限位修改,用户创建的目录或文件所属组和该目录的所属组一致。
2.当某个目录设置了sgid后,在该目录中新建的文件不在是创建该文件的默认所属组
3.使用sgid可以使得多个用户之间共享一个目录的所有文件变得简单。
主要目的:共享目录
## SGID授权方式
# chmod ugo方式
[root@www ~]# chmod g+s /tmp/test/
# chmod number方式 2000
[root@www ~]# chmod 2000 3
注意:当授权文件,原本属组位上有x权限时,是s,原本属组位上没有x权限时,是S
SBIT(粘滞位)
sticky
(SI TI KI)粘滞
在其他用户权限位上,本来应该是x执行权限出现了一个t
普通用户对该目录拥有w和x权限,即普通用户可以在此目录中拥有写入权限,如果没有粘滞位,那么普通用户拥有w权限,就可以删除此目录下的所有文件,包括其他用户简历的文件。但是一旦被赋予了粘滞位,除了root可以删除所有文件,普通用户就算有w权限也只能删除自己建立的文件,而不能删除其他用户简历的文件。
系统中存在的/tmp
目录是经典的粘滞位目录,谁都有写权限,因此安全成问题,常常是木马第一手跳板。
## SB授权方式
# chmod ugo 方式
[root@www ~]# chmod o+t SB
# chmod number方式
[root@www ~]# chmod 1755 IT
注意:当授权目录,原本其他用户权限位上有x权限时,是t,原本其他用户权限位上没有x权限时,是T
命令中的''慈禧''
# 当创建一个用户用户的时候:
1.创建用户 信息记录到 > /etc/passwd
1.1 用户相关的密码 记录到 > /etc/shadow
2.创建用户组 信息记录到 > /etc/group
2.1 用户组相关的密码 记录到 > /etc/gshadow
chattr 枷锁(root都无法操作被chattr命令加锁的文件)
i:上锁,什么都不能做,只能看
a:只能看和追加内容(不能覆盖)
lsattr 查看额外的权限
Linux系统进程掩码 UMASK
[root@www ~]# umask
0022
mkdir dir
0777
0022
----
0755
touch file
0666
0022
----
0644
[root@www ~]# umask 0033
[root@www ~]# umask
0033
dir:744
file:644
[root@www ~]# umask 0011
dir:766
file:666
0777
0011
----
0766
0666
0011
----
0655
0666
[root@www ~]# umask 0044
dir:733
file:622
umask计算,当umask中出现奇数时:目录计算方式不变,但是奇数位的结果要+1
0777
0033
----
0744
0666
0033
----
0633
0644
[root@www ~]# umask 0045
dir:732
0777
0045
----
0732
file:622
0666
0045
----
0622