Linux
普通使用者可以讀取/etc/passwd,這是安全漏洞嗎?
ls -l /etc/passwd
給
$ ls -l /etc/passwd -rw-r--r-- 1 root root 1862 2011-06-15 21:59 /etc/passwd
所以普通使用者可以讀取文件。這是一個安全漏洞嗎?
實際密碼雜湊儲存在 中
/etc/shadow
,普通使用者無法讀取。/etc/passwd
保存有關使用者 id 和 shell 的其他資訊,所有使用者必須讀取這些資訊才能使系統正常執行。
通常,散列密碼儲存在
/etc/shadow
大多數 Linux 系統中:-rw-r----- 1 root shadow 1349 2011-07-03 03:54 /etc/shadow
(它們儲存在
/etc/master.passwd
BSD系統中。)需要執行身份驗證的程序仍然需要以
root
特權執行:-rwsr-xr-x 1 root root 42792 2011-02-14 14:13 /usr/bin/passwd
如果您不喜歡這些
setuid root
程序和一個包含系統上所有散列密碼的單個文件,您可以將其替換為Openwall TCB PAM 模組。這為每個使用者提供了他們自己的文件來儲存他們的雜湊密碼——因此setuid root
系統上的程序數量可以大大減少。