日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

关于SUID、SGID、Sticky

發布時間:2025/3/20 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 关于SUID、SGID、Sticky 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

SUID屬性

passwd命令可以用于更改用戶的密碼,一般用戶可以使用這個命令修改自己的密碼。但是保存用戶密碼的/etc/shadow文件的權限是400,也就是說只有文件的所有者root用戶可以寫入,那為什么其他用戶也可以修改自己的密碼呢?這就是由于Linux的文件系統中的文件有SUID屬性。

[root@srv ~]# ll /etc/shadow

-r--------?1 root root 1128 Feb 15 14:33 /etc/shadow

SUID屬性只能運用在可執行文件上,當用戶執行該執行文件時,會臨時擁有該執行文件所有者的權限。passwd命令啟用了SUID功能,所以一般用戶在使用passwd命令修改密碼時,會臨時擁有了passwd命令所有者root用戶的權限,這樣一般用戶才可以將自己的密碼寫入/etc/shadow文件。在使用“ls -l”或“ll”命令瀏覽文件時,如果可執行文件所有者權限的第三位是一個小寫的“s”就表明該執行文件擁有SUID屬性。

[root@srv ~]# ll /usr/bin/passwd

-rwsr-xr-x 1 root root 22960 Jul 17??2006 /usr/bin/passwd

如果在瀏覽文件時,發現所有者權限的第三位是一個大寫的“S”則表明該文件的SUID屬性無效,比如將SUID屬性給一個沒有執行權限的文件。

SGID屬性

SGID于SUID不同,SGID屬性可以應用在目錄或可執行文件上。當SGID屬性應用在目錄上時,該目錄中所有建立的文件或子目錄的擁有組都會是該目錄的擁有組。比如“/charles”目錄的擁有組是charles,當“/charles”目錄擁有SGID屬性時,任何用戶在該目錄中建立的文件或子目錄的擁有組都會時charles;當SGID屬性應用在可執行文件上時,其他用戶在使用該執行文件時就會臨時擁有該執行文件擁有組的權限。比如/sbin/apachectl文件的擁有組是httpd,當/sbin/apachectl文件有SGID屬性時,任何用戶在執行該文件時都會臨時擁有用戶組httpd的權限。在使用“ls -l”或“ll”命令瀏覽文件或目錄時,如果擁有組權限的第三位是一個小寫的“s”就表明該執行文件或目錄擁有SGID屬性。

[root@srv tmp]# ll

total 4

drwxr-sr-x 2 root root 4096 Feb 15 22:25 test4

-r-xr-sr-x 1 root root??6144 Feb 15 22:25 test6

如果在瀏覽文件時,發現擁有組權限的第三位是一個大寫的“S”則表明該文件的SGID屬性無效,比如將SGID屬性給一個沒有執行權限的文件。

Sticky屬性

Sticky屬性只能應用在目錄,當目錄擁有Sticky屬性所有在該目錄中的文件或子目錄無論是什么權限只有文件或子目錄所有者和root用戶能刪除。比如當用戶test8在“/charles”目錄中建立一個文件并將該文件權限配置為777,當/charles目錄擁有Sticky屬性時,只有root和test8用戶可以將該文件刪除。在使用“ls -l”或“ll”命令瀏覽目錄時,如果其他用戶權限的第三位是一個小寫的“t”就表明該執行文件或目錄擁有Sticky屬性。

[root@srv tmp]# ll

total 4

drwxrwxrwt?2 root root 4096 Feb 15 22:34 test4

配置SUID/SGID/Sticky屬性

配置普通權限時可以使用字符或數字,SUID、SGID、Sticky也是一樣。使用字符時s表示SUID和SGID、t表示Sticky;4表示SUID、2表示SGID、1表示Sticky。在配置這些屬性時還是使用chmod命令。

l??當前目錄目前情況。

[root@srv tmp]# ll

total 52

drwxr-xr-x 2 root root 4096 Feb 15 22:47 test2

drwxr-xr-x 2 root root 4096 Feb 15 22:47 test3

drwxr-xr-x 2 root root 4096 Feb 15 22:46 test4

drwxr-xr-x 2 root root 4096 Feb 15 22:46 test5

-r-xr-xr-x 1 root root 5120 Feb 15 22:46 test6

-r-xr-xr-x 1 root root 3072 Feb 15 22:50 test7

drwxr-xr-x 2 root root 4096 Feb 15 22:56 test1

-r-xr-xr-x 1 root root 6144 Feb 15 22:48 test8

-r-xr-xr-x 1 root root 9216 Feb 15 22:51 test9

為文件test6增加SUID屬性。

[root@srv tmp]#?chmod?u+s test6??????

l??為文件test8增加SUID屬性。在使用數字表示時,原來的三位不變,只是增加了一個千位專門用于SUID、SGID、Sticky屬性。下面的4就是SUID屬性。

[root@srv tmp]#?chmod?4555 test8?????

l??為目錄test2增加SGID屬性。

[root@srv tmp]#?chmod?g+s test2/????????

l??為目錄test3增加SGID屬性。

[root@srv tmp]#?chmod?2755 test3/????

l??#為文件test7增加SUID和SGID屬性,6=4(SUID)+2(SGID)。

[root@srv tmp]#?chmod?6555 test7

l??為目錄test4增加Sticky屬性。

[root@srv tmp]#?chmod?o+t test4/?????

l??為目錄test5增加Sticky屬性。

[root@srv tmp]#?chmod?1755 test5/???

l??為目錄test1增加SGID和Sticky屬性,3=2(SGID)+1(Sticky)。

[root@srv tmp]#?chmod?3755 test1/

l??執行上述更改命令后當前目錄的情況。

?[root@srv tmp]# ll

total 52

drwxr-sr-x 2 root root 4096 Feb 15 22:47 test2

drwxr-sr-x 2 root root 4096 Feb 15 22:47 test3

drwxr-xr-t 2 root root 4096 Feb 15 22:46 test4

drwxr-xr-t 2 root root 4096 Feb 15 22:46 test5

-r-sr-xr-x 1 root root 5120 Feb 15 22:46 test6

-r-sr-sr-x 1 root root 3072 Feb 15 22:50 test7

drwxr-sr-t 2 root root 4096 Feb 15 22:56 test1

-r-sr-xr-x 1 root root 6144 Feb 15 22:48 test8

-r-xr-xr-x 1 root root 9216 Feb 15 22:51 test9

l??取消目錄test1的SGID屬性。

[root@srv tmp]#?chmod?g-s test1/????????

在使用umask命令顯示當前的權限掩碼時,千位的“0”就是表示SUID、SGID、Sticky屬性。

提示:在有些資料上SUID、SGID被翻譯為“強制位”,Sticky被翻譯為“冒險位”。

轉載于:https://www.cnblogs.com/liuchaogege/p/5778971.html

總結

以上是生活随笔為你收集整理的关于SUID、SGID、Sticky的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。