为什么密码要求会禁止最后一个字符中的数字?

信息安全 密码 密码策略
2021-09-06 14:00:45

今天在配置一个新系统(Juniper Space,基于 Linux 的网络管理平台)时,我遇到了一个奇怪的密码要求,我很好奇。使用默认凭据登录 Web UI 后,系统提示我更改密码,这很好,我去做了,但我随机生成的密码被拒绝了,因为最后一个字符是数字。这让我感到更加奇怪,因为我为命令行界面提供的密码以数字结尾,并且被接受了。

更改默认密码截屏

以我的经验,像这样的密码要求通常有一些潜在的原因,比如 Q 和 Z 没有出现在旧电话键盘上,或者遗留系统的兼容性,或者只是简单的糟糕的系统/策略/其他不过,我在用这些解释中的任何一个来解释这个特定的政策时都会遇到很多困难。

是否有人对禁止数字最后一个字符的密码策略背后的原因有任何见解?

3个回答

这可能是为了阻止适合常见格式或字符掩码的密码。如果密码策略需要使用数字,许多人会选择将他们的数字放在一个或多个单词的末尾。以下是来自企业环境的几个示例:

攻击者喜欢这种用户习惯,因为它使他们的混合密码破解或猜测攻击更容易。他们可以专注于将单词列表与添加到末尾的数字相结合,而不是更耗时的蛮力方法。

因此,一些组织实施这样的策略,试图通过让用户输入他们的数字来提高安全性,这是一个不太可预测的地方。听起来在您的情况下,他们没有将其与任何其他复杂性检查相结合,而是拒绝所有以数字结尾的密码,无论它们的随机性如何。这不是实现这种检查的好方法,但他们并不是唯一采用这种方法的人。

根据经验,该Must not reuse previous 6 passwords规则可能会导致用户采用密码轮换方案,在该方案中当前密码循环通过something-that-fits-the-other-rules1something-that-fits-the-other-rules7以便在遵守Must change password every 90 days公司使用中常见的规则时更容易。

密码破解工具可以利用这种习惯的知识来设计密码来猜测。

Must not contain number as the last character规则可能是试图规避此类方案,以迫使用户选择与旧密码明显不同的新密码。

因为程序员考虑的是编程计算机,而不是真正的人如何操作。他们发现自己可以行使任意权力,所以他们这样做了,同时忘记了真正的问题是什么。在这种情况下,问题是“尽管人们的自然行为使系统安全”。

“让密码规则变得非常复杂;让他们每周更改它们”——几乎可以保证您可以在贴在显示器上的便利贴上找到密码。