目錄
- 一.關于檔案的特殊權限
- 二.suid
- 三.SGID
- 四.Stickybit
一.關于檔案的特殊權限
1.檔案與目錄設定不止基礎權限:r,w,x,還有所謂的特殊權限,特殊權限會擁有一些“特權”,特殊權限為:suid sgid sticky
2.檔案的特殊權限:suid sgid sticky
- ? SUID(set uid設定用戶ID):限定:只能設定在二進制可執行程式上面,對目錄設定無效,功能:程式運行時的權限從執行者變成程式所有者的權限
- ? SGID:限定:既可以給二進制可執行程式設定,也可以對目錄設定,功能:在設定了SGID權限的目錄下建立檔案時,新創建的檔案的所屬組會繼承上級目錄的所屬組
- ? Stickybit:粘滯位權限是針對目錄的,對檔案無效,也叫防洗掉位
3.這3個特殊權限對應的數值為
| SUID | SGID | Stickybit |
|---|---|---|
| u+s或u=4 | g+s或g=2 | o+t或o=1 |
二.suid
1.SUID屬性一般用在可執行檔案上,當用戶執行該檔案時,會臨時擁有該執行檔案的所有者權限,使用”ls -l” 或者”ll” 命令瀏覽檔案時,如果可執行檔案所有者權限的第三位是一個小寫的”s”,就表明該執行檔案擁有SUID屬性,比如/usr/bin/passwd檔案
[elk@node5 ~]$ which passwd
/bin/passwd
[elk@node5 ~]$ whereis passwd
passwd: /usr/bin/passwd /etc/passwd /usr/share/man/man1/passwd.1.gz
[elk@node5 ~]$ ll /bin/passwd
-rwsr-xr-x. 1 root root 27832 Jun 10 2014 /bin/passwd
[elk@node5 ~]$ ll /usr/bin/passwd
-rwsr-xr-x. 1 root root 27832 Jun 10 2014 /usr/bin/passwd
2.普通用戶elk,沒有對shadow檔案寫入的權限, 但是elk用戶使用passwd修改自己密碼時,可以修改shadow檔案中的內容,這是什么原因?
[root@node5 ~]# ll /etc/shadow
----------. 1 root root 1179 9月 19 2017 /etc/shadow
[root@node5 ~]# su - mk
上一次登錄:二 5月 8 21:07:24 CST 2018pts/0 上
[elk@node5 ~]$ passwd
[root@node5 ~]# vim /etc/shadow #查看shadow檔案已經被elk用戶修改成功,
因為mk用戶執行passwd命令時,權限會提升成root用戶,所以可以修改成功,
3.給less命令添加suid權限
[elk@node5 ~]$ which less
/bin/less
[elk@node5 ~]$ ll /bin/less
-rwxr-xr-x. 1 root root 158240 Jul 31 2015 /bin/less
[elk@node5 ~]$ ll /etc/shadow
---------- 1 root root 1242 Oct 14 02:20 /etc/shadow
[elk@node5 ~]$ less /etc/shadow
/etc/shadow: Permission denied
[elk@node5 ~]$ exit
logout
[root@node5 ~]# chmod u+s /bin/less
[root@node5 ~]# su - elk
Last login: Thu Oct 15 11:39:37 CST 2020 on pts/3
[elk@node5 ~]$ less /etc/shadow
tss:!!:18341::::::
postgres:$6$W/xWXomt$Vry4J0aBsW4EyiMDW90kfzi45lAWKeYwBPBJzdiX3Yj1twH6zn7D9cG8PJXAMhcwTaIiuJNZxCtLFh/Ht6CwK/:18365::::::
esnode:$6$fznP2Oqd$02x2dTMV0kP5Ra780.sw.W06KZVl7ua8sA7QBMfEsYp0iUs1ukz.9H/iqYjToLLLa1TPSGWDC6a8yVJFZCVV5/:18378:0:99999:7:::
elk:$6$An7lKn2Q$dSuliu1h.Wn42GsrRwKPDS6bgEmTR8TlMsWMHIVWIEXOVbsKwvBcKDDNv.Mxki7aOwV8EBASQFAGQ9W.N/LeV.:18548:0:99999:7:::
logstash:$6$9yY5A65j$YzViQt8dC7mb9ID4my1x1o2dZX3ovQbTfsMr3f5UaJkt3THQRMOmt0pq2YIN0W.zlyU/hRlZe.9vocyFepTYl1:18548:0:99999:7:::
#執行less命令的時候,用戶權限提升到了root權限
[root@node5 ~]# ps -ef | grep less
root 68019 67976 0 14:57 pts/3 00:00:00 less /etc/shadow
root 68034 58078 0 14:57 pts/5 00:00:00 grep --color=auto less
[elk@node5 ~]$ ll /bin/less
-rwsr-xr-x. 1 root root 158240 Jul 31 2015 /bin/less
[elk@node5 ~]$ exit
logout
[root@node5 ~]# chmod u-s /bin/less
[root@node5 ~]# ll /bin/less
-rwxr-xr-x. 1 root root 158240 Jul 31 2015 /bin/less
[root@node5 ~]# chmod 4755 /bin/less
[root@node5 ~]# ll /bin/less
-rwsr-xr-x. 1 root root 158240 Jul 31 2015 /bin/less
[root@node5 ~]# chmod u-s /bin/less
[root@node5 ~]# ll /bin/less
-rwxr-xr-x. 1 root root 158240 Jul 31 2015 /bin/less
另外:chmod 4755 /usr/bin/less # 等同于 chmod u+s /usr/bin/less
三.SGID
1.SGID既可以給二進制可執行程式設定,也可以給目錄設定,
2.SGID的功能:在設定了SGID權限的目錄下建立檔案時,新創建的檔案的所屬組會繼承上級目錄的權限,
[root@node5 ~]# mkdir ceshi
[root@node5 ~]# ll -d ceshi
drwxr-xr-x 2 root root 6 Oct 15 15:10 ceshi
[root@node5 ~]# chmod g+s ceshi
[root@node5 ~]# !ll
ll -d ceshi
drwxr-sr-x 2 root root 6 Oct 15 15:10 ceshi
[root@node5 ~]# chown :elk ceshi
[root@node5 ~]# !ll
ll -d ceshi
drwxr-sr-x 2 root elk 6 Oct 15 15:10 ceshi
[root@node5 ~]# touch ceshi/ceshi.txt
[root@node5 ~]# ll ceshi/ceshi.txt
-rw-r--r-- 1 root elk 0 Oct 15 15:12 ceshi/ceshi.txt
四.Stickybit
1.Stickybit只作用于目錄,
2.Stickybit的功能:目錄下創建的檔案只有root、檔案創建者、目錄所有者才能洗掉,
3.Stickybit的用法:chmod o+t /tmp/test/
4.例: 系統中的tmp目錄就是這樣
[root@node5 ~]# ll -d /tmp
drwxrwxrwt. 10 root root 4096 Oct 15 10:12 /tmp
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/208256.html
標籤:Linux
