login - 由于登录 3 次失败而禁用帐户

标签 login

就目前而言,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引起辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visit the help center为指导。




8年前关闭。




最近我读了一篇关于防止暴力攻击的文章。它说自动禁用用户帐户是对抗字典攻击的一种糟糕的安全机制。首先,如果攻击者能够通过每 30 分钟错误地猜测密码 3 次来禁用帐户,他就可以有效地阻止该用户访问系统。其次,因为这种技术假设攻击者保持用户名不变并改变密码。如果攻击者保持密码不变并更改用户名怎么办?我们已经知道,很大一部分用户使用像“password”这样的常用密码。使用字典攻击的黑客可以为他的用户名列表中的每个用户尝试“密码”,这不仅有很高的成功机会,而且还可以逃避帐户锁定逻辑。攻击者可以进行数千次登录尝试,即使每一次都失败,系统也只会为每个帐户注册一次错误登录。

任何人都可以给我一些建议以使禁用帐户更安全吗?

最佳答案

一些想法:

  • 您可以保留历史上用于登录给定帐户的 IP 地址的历史记录。锁定机制可能会有所帮助,但对那些已识别的地址要稍微宽容一些,以免使用户的糟糕日子变得更糟。
  • 对于一个 IP 在多个帐户上尝试相同密码的另一种情况,请跟踪同一 IP 地址是否在不同帐户上进行了多次无效尝试,并将该 IP 锁定一个小时左右。
  • 如果僵尸网络使用多个 IP 在多个帐户上尝试使用相同的密码,请跟踪是否有大量 IP 地址尝试使用相同的密码。如果是这样,请暂时设置为即使密码正确也必须连续输入两次。 (普通用户只会认为他们输错了密码。)
  • 如前所述,如果检测到攻击,暂时需要验证码或其他一些安全问题(除了在第一次尝试时假装有效密码不正确)。虽然验证码阅读工具是可能的,但我认为它们还没有普及,而且 OCR 需要大量的 CPU 时间。
  • 关于login - 由于登录 3 次失败而禁用帐户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1081660/

    相关文章:

    user-interface - vaadin UI.getcurrent 在请求处理程序中返回 null

    wordpress - 在我的网站和 wordpress 博客之间共享 session

    sql-server - 导出/备份 SQL 登录信息

    windows-7 - 在 Windows 7 中显示关闭动画

    login - 具有Janrain Engage(以前称为RPX)等登录系统的免费软件库

    security - symfony2 在登录页面上获取防火墙名称

    login - 当 ember-data 收到 http 状态 401 时,Ember.js 应用程序应该重定向到登录

    android - Android Studio Fabric插件中的“无效登录”

    asp.net - 发布asp.net网站以在本地IIS服务器上进行测试

    svn - 如何使svn命令行客户端忘记Windows(sliksvn)上的登录凭据?