我有程序,說名字giverootAccess。該程序可以在當前目錄(giverootAccess所在的位置)接收文件名作爲命令行參數。然後該文件將獲得根訪問權限。該文件可以是可執行文件或shell腳本。使用C代碼找到一個文件的inode號碼
現在的問題是,黑客可以通過將請求重定向到bash來獲得root訪問權限。我想限制用戶只對那些giverootAccess所在目錄內的文件提供root權限。黑客可以將文件名重定向到不需要的程序,從而獲得root權限。
所以我需要一個機制來唯一標識一個文件,而不是它的名字(因爲它可以被模仿和黑客入侵)。 inode是否可以用於此目的?
我的計劃是,當應用程序安裝時,我將存儲目錄中所有文件的inode,並且每當有人運行帶文件名的giverootAccess時,我將檢查文件名,其inode與存儲的文件名匹配。如果匹配,那麼只有giverootAccess程序實際上給予root權限的文件。
你有任何其他簡單的機制來完成這項工作嗎?
我正在嘗試做類似的事情。如果你找到答案,請你就此更新我。 – 2012-04-25 11:36:49
「給root訪問權限」是什麼意思?設置'suid'位?你能澄清嗎? – dpp 2012-05-02 21:25:30