验证消息失败

时间:2009-11-11 20:20:52

标签: security

以下是我提出的问题:

“登录网站时处理有效凭据的最佳方式是什么。我们是否告诉用户他们的用户名是否无效?或者他们的密码是否无效?”

我做了一些搜索,但是我找不到具有一些最佳做法的网站,以便将它们引用。

我在这里的社区问题: 有没有人知道这个网站有一些很好的指导方针/最佳做法?

2 个答案:

答案 0 :(得分:5)

只是说他们的凭据不正确。

告诉他们一条信息是正确的意味着你至少要帮助黑客发现用户名。

如果我输入:

  

管理员

     

密码1

例如,我收到密码无效的回复我现在知道你的系统上有一个名为“admin”的用户。我现在可以改变密码以获取访问权限。

如果回复是“无效的用户名或密码”,那么我对于是否有名为“admin”的用户并不明智。

答案 1 :(得分:0)

我可以在这个问题上找到的最权威的讨论来自“网络安全测试手册”,方法12.8。

这本书指出:

  1. 您应该提供一条通用消息,指出用户名或密码不正确;揭示只有用户名是正确的,允许攻击者枚举有效的用户名。
  2. 在X次尝试之后,帐户锁定功能也具有相同的风险;攻击者可以锁定帐户以查明用户名是否有效。
  3. 您可以在此处通过Google图书阅读整个“食谱”: http://books.google.com/books?id=VmrSJ3V-s_MC&lpg=PA249&ots=cU7V62FQOA&dq=web%20security%20reveal%20valid%20username&pg=PA248#v=onepage&q=web%20security%20reveal%20valid%20username&f=false