使用任何密码登录



我遇到了一个奇怪的问题,因为我服务器中的一个用户能够使用任何密码登录,其前八个字符与用户的实际密码相同。例如,如果用户的实际密码abcdefgh则以abcdefgh作为密码登录,并且abcdefgh2002abcdefghijkl成功,但不能使用2001abcdefgh。我正在使用带有影子文件的 PAM。关注的用户在/etc/shadow 文件中有一个密码哈希,但据我所知,它没有任何盐。

我用自己的帐户尝试了它,但没有成功登录。

该用户具有古老的crypt哈希。它是腌制的,但它只使用密码的前八个字符。

您可以通过查看 /etc/shadow 中的哈希来验证这一点,如果它没有以$n$标记开头来指示哈希方法,那么它使用的是仅使用前八个字符的原始 unix crypt哈希。有关详细信息,请参阅crypt(3)

如果他更改了密码,即使是相同的密码,它也将被更新为使用系统上设置为默认值的任何哈希值,这通常是更现代和安全的东西,例如 SHA512 .

顺便说一下,在那些旧式哈希中,盐只是哈希的前两个字符,这就是为什么你认为没有一个。较新的哈希看起来像$id$salt$encrypted,这可能是您习惯的,但旧的哈希只有十三个字符,前两个是盐。

相关内容

  • 没有找到相关文章

最新更新