1. 程式人生 > >設置SUID用於提權或降權

設置SUID用於提權或降權

linux suid 提權 降權

一、基礎介紹

剛看了馬哥的視頻介紹SUID說,當為可執行文件設置SUID並當其轉換為進程後,該進程的所屬主為原程序文件的屬主,以原程序文件屬主的身份進行操作,該特殊權限可以用於提權或降權。SUID典型的應用就是passwd命令,使用此命令普通用戶也能以root的身份去讀寫shadow文件。

二、提權

使用SUID提權,準確的說應該是制作後門,當為cat、vim、nano甚至nmap設置SUID後,即可擁有root的權限,示例:

使用普通用戶讀取shadow文件

1.copy命令到/tmp下,用於實驗,設置SUID

2.新建一個普通用戶user1,並切換用戶查看效果

可以看到效果,shadow文件的權限為

000,但是普通用戶user1使用cat卻能讀取出來,這就是SUID.

測試其他沒有設置SUID的命令讀取時就會提示權限不夠:

三、降權

介紹完提權再說降權,說這個是因為這次信息安全比賽,我拿某隊shell root的權限去讀flag,居然提示權限不 夠被拒絕了,因時間緊迫沒仔細研究,回來之後也很困惑,正好今天看了這個SUID可以實現這個效果:

把程序(cat)的屬主改為普通用戶時,設置SUID後即便是root去讀flag也會因為設置了SUID,以普通用戶的身份去讀這個flag繼而提示權限不夠被拒絕,

實現如下:

1.修改cat的屬主,並設置SUID(剛改了)

2.查看效果:

註意看以root的身份去讀取shadow,也報錯提示權限不夠,設置了SUID後root也不是無敵的了。

當時他們可能就是設置了這個,也有可能是一些其他我不懂的操作。。


本文出自 “Jying” 博客,請務必保留此出處http://jying.blog.51cto.com/8169323/1982677

設置SUID用於提權或降權