Gibt es einen Grund, warum / etc / passwd weltweit lesbar sein sollte? Es ist nicht wie bei Passwort-Hashes, die nicht offen gelegt werden sollten, ich möchte nur wissen, warum.
Gibt es einen Grund, warum / etc / passwd weltweit lesbar sein sollte? Es ist nicht wie bei Passwort-Hashes, die nicht offen gelegt werden sollten, ich möchte nur wissen, warum.
Antworten:
/etc/passwd
wird manchmal als Benutzerdatenbank bezeichnet. Das sollte uns einen Hinweis geben, warum es für alle lesbar sein muss. Jede Dienstprogramm , dass Prüft Dateimetadaten muss in der Lage sein zu lesen /etc/passwd
(und /etc/group
) um in der Lage zu sein , die numerische IDs vom Kernel und seine Subsysteme auf die menschenfreundlichen Namen verwendet , um zu beheben , dass wir verlassen. Tools, die Ihr Home-Verzeichnis finden müssen (E-Mail-Zustellungsagenten usw.) /etc/passwd
, inet
durchsuchen diese Informationen und Miniserver fingerd
suchen Ihre Details in /etc/passwd
.
Wie bereits an anderer Stelle erwähnt, enthält die Datei keine besonders sensiblen Daten, da moderne Systeme die Kennwort-Hashes in eine Shadow-Kennwort-Datei schreiben, die nur von root gelesen werden kann.
passwd
wenn dieser Name tatsächlich nicht widerspiegelt, was in der Datei enthalten ist?
/etc/passwd
(zunächst unverschlüsselt!) Gespeichert . Als Kennwort-Hashes in eine Schattendatei verschoben wurden, gab es bereits viele Dienstprogramme, die sich auf andere Informationen stützten. /etc/passwd
Der Name blieb also erhalten.
/etc/passwd
enthält keine Passwort-Hashes (also kein großes Problem). /etc/shadow
enthält Passwort-Hashes und kann nur von root (& shadow group) gelesen werden
~user
dass sie in das Home-Verzeichnis des Benutzers expandiert , sieht sie tatsächlich danach/etc/passwd
, also ist es schön, dass sie lesbar ist, anstatt allen Shells erhöhte Rechte zu erteilen.