国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 操作系統 > 正文

文件特殊權限

2024-06-28 16:04:24
字體:
來源:轉載
供稿:網友

1. SetUID

只有可以執行的二進制文件才能設定SUID權限。命令的執行者要對該可執行文件擁有x(執行)權限。命令的執行者在執行該文件時,身份會臨時變為它的文件所有者(在執行程序的過程中靈魂附體為文件的屬主)。SetUID權限只在該文件執行過程中有效,也就是說身份改變只在程序執行過程中生效)。

其實,passwd命令所對應的可執行文件就擁有SetUID權限。

[root@localhost tmp]# ll /usr/bin/passwd-rwsr-xr-x. 1 root root 25980 2月 22 2012 /usr/bin/passwd

可以發現,/usr/bin/passwd的文件所有者的執行權限是小寫字母s(如果是大寫字母S,就有問題) ,這就說明該可執行文件擁有SUID權限。正是因為如此,普通用戶才能更改自己的密碼,普通用戶更改自己的密碼時,身份臨時變為超級用戶root,所以才能將密碼變更寫入/etc/shadow(權限為000)的文件。

cat 命令沒有SUID權限,所以普通用戶不能查看 /etc/shadow 文件的內容。要想讓普通用戶也能使用cat命令查看 /etc/shadow 文件,可給cat命令賦予SUID權限。

1.1 設定SUID權限

數字4代表SUID,給一個可執行文件(一般為命令)設置SUID權限的方法有兩種:

chmod 4755 文件名chmod u+s 文件名

常見用法:

給cat命令賦予SUID權限:chmod 4755 /bin/cat或chmod u+s /bin/cat

1.2 刪除SUID權限

刪除SUID權限的方法也有兩種:

chmod 755 文件名chmod u-s 文件名

常見用法:

chmod u-s /bin/cat刪除cat命令的SUID權限

1.3 危險的SUID權限

作為一名合格的linux系統管理員,必須定期對系統中默認應該具有SUID權限的可執行文件進行列表,并定期檢查是否有新的可執行文件被設置了SUID權限。

千萬不要對vi命令或vim命令設置SUID權限,否則,所有的普通用戶都能使用vi命令編輯一些特殊文件(如/etc/passwd),進而將自己的UID改為0(普通用戶就會擁有超級用戶root的所有權限),甚至對整個系統安全造成更加嚴重的災難。

2. SetGID

2.1 SetGID針對可執行的二進制文件的作用

只有可執行的二進制文件才能設置SGID權限。命令執行者要對該文件擁有x(執行)權限。執行該二進制文件時,組身份臨時變為該文件的所屬組。SGID權限只在該可執行文件執行過程中有效,也就是說組身份改變只在程序執行過程中生效。

locate命令就具有SGID權限。

[root@localhost ~]# ll /usr/bin/locate-rwx--s--x. 1 root slocate 31492 3月 12 2015 /usr/bin/locate

可以發現,locate命令的所屬組的執行權限是小寫字母s。

[root@localhost etc]# ll /var/lib/mlocate/mlocate.db-rw-r-----. 1 root slocate 2310094 12月 2 08:17 /var/lib/mlocate/mlocate.db

2.2 SetGID針對目錄的作用

普通用戶必須對此目錄擁有rx的權限,才能瀏覽和進入該目錄。普通用戶進入該目錄時,普通用戶的有效組會變為該目錄的所屬組。如果普通用戶對該目錄擁有w權限,新建文件的默認屬組是這個目錄的所屬組。

2.3 設定SGID權限

數字2代表SGID,設置SGID權限的方法有兩種:

chmod 2755 文件或文件夾名chmod g+s 文件或文件夾名

2.4 刪除SGID權限

刪除SGID權限的方法有兩種:

chmod 755 文件或文件夾名chmod g-s 文件或文件夾名

2.5 危險的SGID權限

對于可執行文件,設置SGID權限也是一種很危險的操作。應該盡量避免人為地給可執行文件賦予SGID權限,并定期檢查系統中可能存在的SGID權限的文件,列出清單以供排查。

3. Sticky BIT

3.1 SBIT粘著位的作用

SBIT權限只針對目錄有效。普通用戶對該目錄擁有wx權限,即普通用戶有進入目錄和寫權限。如果沒有SBIT權限,因為普通用戶擁有w權限,所以可隨意刪除該目錄中的文件,包括其他用戶建立的文件。一旦該目錄設置了SBIT粘著位權限,除了root用戶可以刪除目錄中的所有文件,普通用戶就算擁有w權限,也只能刪除自己建立的文件,但無法刪除其他用戶建立的文件。

Linux系統中默認就具有SBIT權限的目錄是 /tmp 目錄。

[root@localhost etc]# ll -d /tmpdrwxrwxrwt. 5 root root 4096 1月 27 17:12 /tmp

可以發現,/tmp目錄的執行權限是小寫字母t。

3.2 設定SBIT權限

數字1代表SBIT,設置SBIT權限的方法有兩種:

chmod 1755 目錄名chmod o+t 目錄名

3.3 刪除SBIT權限

刪除SBIT權限的方法有兩種:

chmod 777 目錄名chmod o-t 目錄名
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 象山县| 大方县| 济源市| 崇文区| 微博| 鄂州市| 庆云县| 策勒县| 进贤县| 德庆县| 鹤山市| 武冈市| 承德市| 六枝特区| 阿鲁科尔沁旗| 保定市| 昭通市| 嘉定区| 溧阳市| 耒阳市| 永清县| 日照市| 精河县| 万载县| 嵩明县| 定远县| 洛南县| 融水| 台安县| 墨竹工卡县| 镇江市| 永嘉县| 汽车| 福贡县| 资兴市| 肥东县| 务川| 屏南县| 崇仁县| 星子县| 济阳县|