以前對setuid這個功能實在是搞不清楚,不過經由這位網友的文章
我終於知道setuid到底有什麼功用啦。



作者 Tomcat (我想我瘋了) 看板 Linux
標題 Re: [問題] setuid的疑問
時間 Sun Jan 28 23:34:28 2007
───────────────────────────────────────
setuid最容易懂的例子 應該是更改密碼的passwd指令 如下:

-rwsr-xr-x 1 root root 22960 Jul 17 2006 /usr/bin/passwd 檔案為root所有

我們在更改密碼的時候 必須去修改/etc/shadow裡面的密碼欄位

但是/etc/shadow的權限如下:

-rw-r----- 1 root shadow 1470 Dec 31 16:08 /etc/shadow

這是一般人可讀但不可寫的 所以使用者無法直接更動這個檔案

那為了使一般user可以更改密碼 就透過讓passwd指令setuid來達成

user在改密碼時 可透過passwd取得修改/etc/shadow時所需的root權限


而如果把/etc/shadow權限開放給大家可修改 那就糟了...

我可以隨便把大家的密碼換掉 或是把這個檔案砍掉

全站熱搜

kewang 發表在 痞客邦 留言(0) 人氣()