故事引入
今天碰到了一條指令,
chmod 4777 test
怎么在777前還有一位,顛覆了我的認知啊,這時候必須翻鳥哥神書了,找到一個鏈接《7.4.3 檔案特殊權限:SUID/SGID/Sticky Bit》,啃了一會終于明白了,整理如下:
除了傳統的讀r、寫w、執行x以外,還有Linux的檔案特殊權限,他們分別是Set UID、Set GID、Sticky Bit三種,也就是多出來的那一位,功能介紹如下:
Set UID,SUID
權值:4
符號:x --> s
特點:僅對可執行檔案有效。
功能:可執行檔案執行時,擁有檔案所有者的權限。
案例:/usr/bin/passwd 權限為4755,普通用戶可執行passwd命令時,對應的普通用戶,隨機秒變高富帥,獲得了root權限,可以修改普通用戶平常根本想都不敢想、無法修改的root擁有的/etc/shadow系統檔案(如果/usr/bin/passwd 權限為755,則普通用戶執行passwd的時候,會出現無權限修改root own的/etc/shadow檔案的問題)
Set GID,SGID
權值:2
符號:x --> s
特點:檔案、目錄都可施法。
功能:可執行檔案、目錄執行時,相同用戶組的 擁有檔案所有者權限。
案例:SGID多用在特定的多人團隊的專案開發上,在系統中用得較少
Sticky Bit,SBit
權值:1
符號:x --> t
特點:僅對目錄有效。
功能:當目錄SBit=1,權限變為rwx rwx rwt時,在此檔案夾下洗掉、重命名、移動的操作只允許是對應創建者用戶或root(如果SBit=0,則用戶間創建的檔案可以互相洗掉,互相傷害)
案例:/tmp 權限為1777,該目錄下不同用戶間不可互刪檔案,只能刪自己的(如果/test 權限為777,則test目錄下不同用戶間可互刪檔案)
【Linux檔案特殊權限“隱藏關卡”】
看到這里,大家應該明白了SUID SGID StickyBit均含有類似“設定后就有了創建者相應權限”的功能(可能不嚴謹,大家明白意思就好),那么當創建者也沒有執行權限(x位為0,例如rw-rw-rw-)時,那么就會出現暗藏關卡——大寫SST,即rwSrwSrwT,代表空權限。就像鳥哥書里說的那樣“擁有者都無法執行了,哪里來的權限給其他人使用呢?當然就是空的”
來源:https://www.cnblogs.com/zklidd/p/7100276.html
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/118888.html
標籤:專題技術討論區
上一篇:請大家幫幫忙
下一篇:Linux
