Dlaczego / etc / passwd jest otwarty do publicznego czytania?
12
Czy jest jakiś powód, dla którego / etc / passwd powinien być dostępny na całym świecie? To nie jest tak, że hasła nie powinny być ujawniane, chcę tylko wiedzieć, dlaczego.
Wydaje mi się, że kiedy twoja wybrana powłoka wie, aby rozszerzyć ją ~userdo katalogu domowego użytkownika, tak naprawdę to szuka /etc/passwd, więc fajnie jest mieć ją czytelną zamiast dawać wszystkim powłokom podwyższone uprawnienia.
Ulrich Schwarz,
Rozwinięcie „~” jest funkcją zmiennej $ HOME - ustaw $ HOME na / var / tmp, a jeśli zrobisz „cd ~” - zmieni się na / var / tmp.
Saurabh Hirani
Odpowiedzi:
14
/etc/passwdjest czasem nazywany bazą danych użytkowników. To powinno dać nam wskazówkę, dlaczego wszyscy muszą go czytać. Każde narzędzie, które sprawdza metadane pliku, musi być w stanie odczytać /etc/passwd(i /etc/group), aby móc rozpoznać numeryczne identyfikatory używane przez jądro i jego podsystemy na przyjaznych dla człowieka nazwach, na których polegamy. Narzędzia, które muszą znaleźć katalog domowy (agenci dostarczający pocztę itp.) /etc/passwd, inetWyszukują te informacje , a miniserwery, takie jak, fingerdwyszukują twoje dane /etc/passwd.
Jak już wspomniano gdzie indziej, w pliku nie ma szczególnie wrażliwych danych, ponieważ nowoczesne systemy umieszczają skróty haseł w pliku haseł ukrytych, który można odczytać tylko przez root.
Czy zatem jest to wywoływane z powodów historycznych, passwdgdy w rzeczywistości nazwa ta nie odzwierciedla tego, co znajduje się w pliku?
Emanuel Berg,
8
Tak myślę. W bardzo wczesnych wersjach systemu UNIX hasła były rzeczywiście przechowywane /etc/passwd(początkowo niezaszyfrowane!). Do czasu przeniesienia skrótów haseł do pliku cienia istniało już wiele programów narzędziowych, które polegały na innych informacjach /etc/passwd, więc nazwa pozostała.
D_Bye,
7
/etc/passwdnie zawiera skrótów haseł (więc nie jest to duży problem). /etc/shadowzawiera skróty haseł i jest czytelny tylko dla użytkownika root (i grupy cieni)
~user
do katalogu domowego użytkownika, tak naprawdę to szuka/etc/passwd
, więc fajnie jest mieć ją czytelną zamiast dawać wszystkim powłokom podwyższone uprawnienia.Odpowiedzi:
/etc/passwd
jest czasem nazywany bazą danych użytkowników. To powinno dać nam wskazówkę, dlaczego wszyscy muszą go czytać. Każde narzędzie, które sprawdza metadane pliku, musi być w stanie odczytać/etc/passwd
(i/etc/group
), aby móc rozpoznać numeryczne identyfikatory używane przez jądro i jego podsystemy na przyjaznych dla człowieka nazwach, na których polegamy. Narzędzia, które muszą znaleźć katalog domowy (agenci dostarczający pocztę itp.)/etc/passwd
,inet
Wyszukują te informacje , a miniserwery, takie jak,fingerd
wyszukują twoje dane/etc/passwd
.Jak już wspomniano gdzie indziej, w pliku nie ma szczególnie wrażliwych danych, ponieważ nowoczesne systemy umieszczają skróty haseł w pliku haseł ukrytych, który można odczytać tylko przez root.
źródło
passwd
gdy w rzeczywistości nazwa ta nie odzwierciedla tego, co znajduje się w pliku?/etc/passwd
(początkowo niezaszyfrowane!). Do czasu przeniesienia skrótów haseł do pliku cienia istniało już wiele programów narzędziowych, które polegały na innych informacjach/etc/passwd
, więc nazwa pozostała./etc/passwd
nie zawiera skrótów haseł (więc nie jest to duży problem)./etc/shadow
zawiera skróty haseł i jest czytelny tylko dla użytkownika root (i grupy cieni)źródło