Linux特殊權限詳解

實際上Linux有12位權限,咱們前面說的Linux權限都只說了經常使用的9位權限,剩下的特殊權限也常常被用來進行Linux提權,若是沒有了解了的,能夠移步以前的文章《Linux權限詳解》、《Linux安全權限》shell

目錄

0x01 介紹安全

0x02 特殊權限詳解學習

0x01 介紹

Linux一共有12位權限,除過以前說的rwxrwxrwx的9位權限,還有3位的特殊權限ui

suid位:setuid,用S表示,若是用戶位對應的x位上有x時使用s表示,對應數字爲4,與用戶相關的權限3d

file

sgid位:setgid,用S表示,若是用戶組對應的x位上有x時使用s表示,對應數字爲2,與用戶組相關的權限code

file

sticky位,粘滯位,用T表示,若是其餘用戶組對應的x位上有x時使用t表示,對應數字爲1,與其餘用戶組相關的權限blog

file

粘滯位有一個特殊的目錄就是tmp目錄繼承

file

0x02 特殊權限詳解

suidfile

suid是讓普通用戶能夠以root或其餘的用戶角色運行只有root或其餘帳號才能運行的命令或程序,或程序命令對應原本沒有權限操做的文件等,suid爲某一個命令設置特殊權限,使用者爲全部人搜索

這裏用一個例子來講明這個問題

先添加一個新的用戶,併爲其設置密碼

file

咱們再明確一下更改密碼的話shadow文件是否會更改

file

說明shadow文件確實被更改了,那shadow的權限又是怎樣的

file

會發現只有root用戶擁有寫權限,那是否是意味着其餘用戶不能更改密碼

file

事實並非這樣的,其餘用戶也是能夠修改密碼的,這就是由於這個文件的特殊權限的緣由,能夠發現它是擁有suid權限的,因此任何用戶執行這個命令都會擁有和這個命令所對應的權限,用這個例子來講就是任何用戶執行這個命令就擁有了root的權限

file

咱們再用一個刪除操做來看一下

咱們來看一下默認狀況下的刪除操做

file

若是咱們給刪除命令增長suid權限又會發生什麼狀況

file

能夠發現添加了suid權限,使用低權限用戶就能夠刪除root用戶才能操做的文件

到這裏基本就能夠理解清楚suid的用法了,可是還有幾點須要注意一下的

suid僅對二進制命令程序有效,不能做用在shell等腳本文件上,並且suid權限僅在命令執行過程當中有效

咱們能夠搜索一下哪些文件時有s權限的

find /bin -type f -perm 4755 -exec ls -l {} \;

file

等後面在使用suid進行提權的時候咱們還會再次提到這個東西

若是對這個find命令不太懂的能夠移步《Linux文件查找命令詳解》

sgid

sgid是與用戶組相關的,sgid與suid不一樣的是,sgid既能夠針對文件也能夠針對目錄

對於文件來講,sgid僅對二進制命令程序有效,執行命令的用戶能夠得到該程序執行期間所屬組的權限,suid是擁有這個用戶的權限

對於目錄來講(繼承目錄所屬的組),Linux默認狀況下用戶建立文件,默認用戶和組都是它本身,sgid可讓用戶在此目錄下建立的文件和目錄,具備與此目錄相同的用戶組設置

這裏就再也不舉例子來講明瞭,跟suid所驗證的方式是同樣的

粘滯位

粘滯位就是你能夠往裏面放內容可是卻不能對這個文件進行操做

file

文章首發公衆號:無意的夢囈(wuxinmengyi)

這是一個記錄紅隊學習、信安筆記,我的成長的公衆號

掃碼關注便可

file

相關文章
相關標籤/搜索