谁负责用户密码的强度?

信息安全 密码 密码策略
2021-08-30 19:19:14

谁对用户密码的强度负责?是我们(开发人员、架构师等)还是用户?

作为一名 Web 开发人员,我经常想知道是否应该对我的网站/应用程序用户强制实施最低密码强度。

我经常遇到讨厌它的普通人(不是极客或 IT 专业人士),因为他们需要混合大小写字母、添加数字,更不用说密码中的其他字符了。

我更愿意测量密码强度,只通知用户而不是强制它。这样,那些不喜欢添加数字或混合大小写的人会被告知,但允许使用弱密码。

我仍然会提出最低长度要求,但我应该执行进一步的最低要求吗?

如果一个用户有一个非常简单的单字密码,他的帐户在字典攻击中被黑了,是他的错还是我们的错,我们允许这样一个简单的密码?

4个回答

如果不回答以下问题,您将无法回答此问题

如果用户的密码被泄露,这是否只会使该用户/该用户的数据处于危险之中,或者它是否也会使其他用户处于危险之中?

如果系统不划分帐户,则用户无法通过选择适当的凭据来保证其数据的安全,因此管理员必须对社区的整体安全负责。

如果系统确实划分了帐户,那么用户只能通过选择弱凭据来伤害自己,因此将责任转移给用户可能是适当的。

例如,电子邮件邮箱被很好地划分;损害一个帐户并不会损害其他帐户。某些帐户可能被设置为不视为来自其他帐户的垃圾邮件,但还有许多其他方法可以冒充电子邮件发件人,因此以用户身份发送电子邮件的能力通常不会导致权限的巨大升级。管理员可以在不损害系统安全性的情况下放弃对密码强度的责任。

但是文件系统和源代码存储库没有很好地划分。危害一个帐户,其~/bin目录位于其他用户的目录中PATH,或者具有对重要源代码存储库的提交访问权限,可能会导致许多其他帐户和系统通过特洛伊木马受到危害。在这种情况下,破坏一个帐户会提升整个系统的权限;管理员不能放弃对密码强度的责任,因为他们不能放弃对系统健康的责任。

如果您是开发人员,您不应该是唯一的设置要求 - 这应该由您正在开发的组织在策略中设置,但是如果您有安全意识,您应该能够讨论您认为的最低基线应该是什么。事实上,在当前担心被黑客入侵的环境中,您可以将应用程序的安全性作为竞争的额外卖点。

但这绝对不是您的责任 - 组织政策应根据他们的风险偏好定义密码要求,并且个人始终可以使用比最低要求更强的密码。

只要您希望使用强密码来保护您的服务器/服务,如果您的策略过于宽松,那是您的“错误”。这假设您的服务器/服务受到个人最终用户妥协的威胁,但情况并非总是如此。

只要您的用户希望自己的帐户受到保护,如果他们没有选择足够强的密码,这是他们的“过错”,无论现行政策如何。

如果有足够多的帐户被盗用,那么“错误”取决于谁更快、更有效地将他们的观点转向媒体。

这真的是一个你可以牵马到水边的地方,但你不能让他们喝水。严苛的密码策略通常会导致安全性向其他方向泄露,例如写下密码或依赖可猜测的非字母序列(如出生日期)。缺少密码策略会导致最薄弱的链接问题,因为有人总是选择“秘密”作为他们的密码。

“故障”在这里是一个非常模糊的概念。您可以询问法律责任,这是更坚定的。我相信有一两个涉及银行密码被泄露的案例,银行被指责为不需要足够的保护,但我不记得结果。

实际上,我上周看到了一个有趣的例子。当有人获得银行密码并加以利用时,一家非营利组织损失了 7 万美元。

“我们拒绝了提供给我们的一些安全措施,[但如果]我们有这些措施就不会发生在我们身上,”French 说。“我们认为这会给管理带来负担,我更担心的是内部问题,而不是有人侵入我们的系统。”

接着

此后,MECA 为其网上银行账户添加了更多安全功能,只有通过锁定的专用计算机才能访问该账户。

“我猜,所有这一切都晚了一天,而且还少了一美元,”French 说。“为什么没有人在屋顶上大声疾呼这种欺诈行为?人们需要了解他们的暴露程度。”

这说明了人们对密码安全的态度。“我们拒绝加强我们的安全……为什么没有人告诉我们加强我们的安全?!?” 他们离起诉银行不需要更好的安全性还有多远?

在我看来,这个问题需要涉及两个不同的问题。

用户选择弱密码。

可以想象,这件作品的责任可以分为三种方式:

  1. 组织内的管理和 IT 安全办公室需要为密码强度、刷新和重用定义适当的策略。
  2. 开发人员需要正确实施技术限制以强制执行这些策略。
  3. 用户需要遵循这些政策的精神,而不仅仅是“法律条文”,才能创建“强”密码。

最后,密码“强度”的责任绝对归于用户。(虽然法律可能会做出不同的判断——我不是律师,所以我不能代表这种情况。)不过,如果我们(IT 安全、管理、开发人员等)建立和执行适当的密码策略,并教育用户这些策略的必要性和正确实施。

密码数据库泄露。

要完整回答这个问题:

“如果一个拥有非常简单的单字密码的用户的帐户在字典攻击中被黑,是他的错,还是我们允许这样一个简单的密码是我们的错?”

我们还需要首先解决字典攻击是如何成为可能的。也就是说,谁负责保护密码数据库?这分为两组,并且 - 如果媒体是一个很好的衡量标准 - 可能反映了谁最有可能因为账户被劫持而受到至少公开的指责,如果不是法律上的话。

  1. 组织内的管理和 IT 安全办公室需要定义有关组织服务器维护和安全的适当策略。
  2. 开发人员需要在技术应用和一般实践中正确实施这些策略。

如果密码数据库暴露给攻击者,密码无论强度如何都可以被破解这只是攻击者愿意为任务投入多少时间和计算能力的问题。执行尽职调查并尽最大努力防止这种情况完全是组织(IT 安全、管理和开发人员)的责任。