SUID與SGID、SBIT
阿新 • • 發佈:2019-01-04
SUID與SGID是兩種特殊許可權。
SUID:(僅對二進位制檔案有效)
-rwsr-xr-x 1 root root 22984 Jan 7 2007 /usr/bin/passwd 如果使用者具有該檔案x許可權,在執行時將會對程式涉及資源獲得該程式擁有者的許可權(即root許可權),例如,普通使用者對於/etc/passwd是沒有w許可權的,然後卻可以通過/user/bin/passwd來修改/etc/passwd中的資料,就是因為當普通使用者執行該程式時對於/etc/passwd具有了程式擁有者的許可權,所以可以修改此檔案。
SGID:(對於二進位制檔案及目錄有效)
對二進位制程式:-rwx--s--x 1 root slocate 23856 Mar 15 2007 /usr/bin/locate 如SUID,如果程式擁有SGID許可權,則其他使用者執行該程式時,將獲得該程式所屬群組的許可權。
對目錄:drwxrwsrwx 7 root root 4096 Sep 27 18:23 /tmp 如果該目錄具有s許可權,那麼具有該目錄rx許可權的使用者在該目錄下的有效群組將會變成目錄所屬群組。
SBIT:該許可權只作用於目錄,只有擁有者以及root可以刪除該目錄。
drwxrwxrwt 7 root root 4096 Sep 27 18:23 /tmp 該目錄只有擁有者及root使用者可以刪除。
這三種許可權的配置
在設定許可權時,分別在許可權程式碼前加上4(SUID)、2(SGID)、1(SBIT)即可。例:chmod 4777~/test 給~/test新增SUID許可權。