最近,我在设置密码时遇到了两条奇怪的错误消息,一条在Chipolte 移动订购应用程序上,另一条在金融服务门户上。在这两种情况下,我都无法设置密码,因为它包含非字母数字字符。金融服务网站还规定了一个我认为相当奇怪的最大长度(密码不能超过 8 个字符,似乎非常短视)。我想知道对于防止某些字符的密码策略是否有任何安全理由。
问问题
151 次
3 回答
1
这种类型的限制通常是因为后端的旧系统无法处理非字母数字字符,或者为数据库中的密码字符定义了较短的最大字段宽度。
有时对遗留应用程序进行更改可能非常具有挑战性(并不是说它本身很难,但它通常不是 IT 优先事项)。
我已经特别看到它与 SAP 集成。
于 2012-12-18T18:51:45.523 回答
1
没有安全理由。为了安全起见,允许更多的字符总是更好,因为它增加了潜在组合的数量。
唯一的“理由”要么是短视,要么是某种形式的存储或传输问题(可以通过适当的编码来解决)。也许他们不知道如何进行参数化查询并担心用户试图使用密码进行注入攻击?谁知道。无论如何,它们至少应该是盐渍和散列,这至少真正解决了大多数存储问题。
他们可能试图确保用户不会写下他们的密码,而是选择那些“容易记住”的密码,但这会适得其反:已经打算写下密码的用户仍然会写下密码,并且蛮力强迫其他人的密码。密码变得容易多了。
如果他们还试图对密码不区分大小写,而这在某种程度上是这种选择的原因,那么在许多层面上,我会更加担心。
于 2012-12-18T18:59:01.013 回答
0
这可能是因为在您创建密码后检查密码是否正确时,它会将所有字符转换为其 ASCII 值,并且特殊字符不包含在编程范围内。至于只有 8 个字符,当他们将您的密码和用户名信息存储在他们的服务器上时,它会减少占用的空间,确实不是很多,但最终可能会变得可以克服。
于 2012-12-18T18:53:38.017 回答