Permissions

預設情況下,世界可寫目錄是什麼?

  • August 24, 2017

在標準的 Linux 文件系統中,這些公共目錄中的哪些預設情況下是全域可寫的

/tmp 
/etc
/var 
/proc 
/bin 
/boot
/....
....

為什麼它們是世界可寫的?這會帶來安全風險嗎?

唯一的FHS 強制目錄通常是全域可寫的,/tmp並且/var/tmp. 在這兩種情況下,這是因為它們旨在儲存任何人都可能製作的臨時文件。

同樣常見的是/dev/shm,作為tmpfs(由 RAM 支持的文件系統),用於快速訪問程序之間共享的中型數據,或者只是創建保證在重啟時被銷毀的文件。

也可能有/var/mailor /var/spool/mail,有時還有其他假離線目錄。這些用於在處理之前暫時保存郵件。它們並不總是可寫的,具體取決於使用的​​工具。當它們存在時,這是因為使用者工具可以在那裡創建文件以供守護程序處理。

所有這些目錄通常都設置了粘性位( t),這意味著只有文件或目錄的所有者才能移動或刪除其中的文件。

以任何使用者身份執行的任何程序都可以在這些目錄中創建文件,就其特定數據的安全性而言,由創建程序來做正確的事情。除了有人可能填滿文件系統之外,沒有特別的一般安全問題,但程序有足夠的空間出錯。

已經朝著特定於服務的目錄邁出了一些步伐。/tmp這些避免了一些可能出現的潛在錯誤,因此程序在使用目錄的方式上沒有錯誤並不是那麼重要。


您可以使用以下命令在系統上找到全域可寫目錄:

find / -maxdepth 3 -type d -perm -777

引用自:https://unix.stackexchange.com/questions/139764