1

保持对 passwd 文件的开放世界读取访问是否有任何风险?为什么默认 passwd 文件是世界可读的

4

3 回答 3

9

所有用户都可以读取此文件中的用户名和其他数据。现代 UNIX 系统中的敏感数据保存在/etc/shadow文件中。

于 2012-03-27T10:04:05.967 回答
3

/etc/passwd 是全球可读的,因为它包含系统范围的帐户信息,例如用户名到实名的映射。它不包含密码哈希;这些位于 /etc/shadow 中,只有 root 才能读取。任何需要进行身份验证的东西都必须通过可以检查该文件的受信任的 setuid-root 服务。

(当然,许多系统不再使用 passwd/shadow 来获取帐户信息。但是,如果您使用 C 库而不是直接读取文件,您将不会注意到。)

于 2012-03-27T10:03:51.807 回答
2

passwd 文件不再包含密码哈希 - 它们在影子文件中。

/etc/passwd 现在只包含计算机上的用户列表,以及一些基本参数,如他们的 shell。让它成为世界可读的原因是为了让世界可以阅读它。

这通常不被视为安全漏洞,尽管在某些情况下可能不合适。

于 2012-03-27T10:02:33.690 回答