Linux

在啟用了粘性位的情況下,拒絕符號連結到 nfs 掛載目錄中的執行檔的權限

  • April 24, 2018

我們有一個 NFS 導出供我們的任何使用者安裝和維護安裝在我們客戶端 /public 的網路的有用軟體。在 NFS 伺服器上,這個目錄是全域可寫的,帶有粘性位集(如 /tmp)。

該服務的一個使用者在 /public 中有一個指向執行檔的符號連結。由於我們將工作站從 Ubuntu 9.04 升級到 10.10,當我們嘗試通過符號連結執行此文件時,我們會被拒絕。如果我們刪除粘性位,我們將不再獲得權限被拒絕。

我在我們的日誌或 dmesg 中沒有發現任何內容。這是 Ubuntu 9.04 和 10.10 之間引入的應用程序裝甲功能還是錯誤?

您可能會看到自 Ubuntu 10.10 以來引入的符號連結安全強化的效果。可以通過 關閉此功能/proc/sys/kernel/yama/protected_sticky_symlinks

在 Debian 上,可以通過添加以下內容來關閉此功能/etc/sysctl.conf

fs.protected_symlinks = 0

這個主題的另一個變體是kernel.grsecurity.linking_restrictions ——這是grsecurity 更新檔添加的許多 sysctl 選項之一。

目前 (2012-04-19) 符號連結保護功能尚未合併到上游核心中,儘管最近有一些努力合併更新檔的 Debian 變體(以及其他一些強化更改)。

引用自:https://serverfault.com/questions/284573