C'è qualche motivo per cui / etc / passwd dovrebbe essere leggibile in tutto il mondo? Non è come gli hash delle password che non dovrebbero essere esposti, voglio solo sapere perché.
C'è qualche motivo per cui / etc / passwd dovrebbe essere leggibile in tutto il mondo? Non è come gli hash delle password che non dovrebbero essere esposti, voglio solo sapere perché.
Risposte:
/etc/passwd
a volte viene chiamato il database utente. Questo dovrebbe darci un indizio sul perché debba essere leggibile da tutti. Qualsiasi utilità che ispeziona i metadati dei file deve essere in grado di leggere /etc/passwd
(e /etc/group
) per poter risolvere gli ID numerici utilizzati dal kernel e dai suoi sottosistemi con i nomi a cui ci affidiamo. Gli strumenti che hanno bisogno di trovare la tua home directory (agenti di consegna della posta, ecc.) Cercano quelle informazioni /etc/passwd
e i inet
miniserver come fingerd
cercano i tuoi dettagli /etc/passwd
.
Come è stato sottolineato altrove, non ci sono dati particolarmente sensibili nel file, poiché i sistemi moderni inseriscono gli hash delle password in un file di password shadow, che è leggibile solo da root.
passwd
quando in realtà questo nome non riflette ciò che è nel file?
/etc/passwd
(inizialmente non crittografate!). Quando gli hash delle password sono stati spostati in un file shadow, esistevano già molte utility che si basavano su altre informazioni /etc/passwd
, quindi il nome rimase bloccato.
/etc/passwd
non contiene hash delle password (quindi non è un grosso problema). /etc/shadow
contiene hash delle password ed è leggibile solo da root (e gruppo ombra)
~user
nella home directory dell'utente, lo sta effettivamente cercando/etc/passwd
, quindi è bello averlo leggibile invece di dare a tutte le shell diritti elevati.