浏览OWASP网站,可以找到最底层秘密问答的文章不仅无效,而且作为系统的安全后门:
OWASP: Guide to Authentication
问题和答案是后门凭证 - 它们等同于用户的用户名和密码。这些计划经常使用"母亲的少女姓名"或其他容易找到的信息。如果所有系统都使用相同的Q& As,则可以使用相同的信息分成许多帐户。 由于以下原因,它们是不可接受的: 在大多数隐私制度下,未经他们明确同意(例如"母亲的姓氏和#34;)收集有关人的信息是非法的。此类收集受隐私法律的约束,受试者的审查和更正等。 IT安全政策和标准(如ISO 27000)禁止明文密码存储,但几乎所有Q& A计划都明确存储问题和答案 答案中的信息对于互联网的大部分用户是公开的,因此可以使用公共资源找到 秘密问题和答案已被公开滥用,最明显的是攻击Sarah Palin的电子邮件帐户,暴露了她使用她的雅虎免费邮箱帐户进行政府业务。
然后再次浏览:
OWASP: Authentication Cheat Sheet
您实际上可以找到密码重置实施的链接,其中包括Secret Q& A作为流程的一部分。
这使得确定Secret Q& A是否是不好的做法有点不一致。我提出的是以下结论:
如果ie系统仅使用通过电子邮件发送的重置令牌,如果攻击者已获得对用户电子邮件的访问权限,则所有使用该电子邮件地址的应用程序都可以被攻击者启动密码重置程序。
但是,如果使用令牌也要求您执行Secret Q& A步骤,那么无论电子邮件是否被渗透,攻击者仍然无法访问Web应用程序。
话虽如此,仍然没有关于是否必须从用户收集秘密问题的最佳实践,或者可以要求用户从预定义问题列表中选择问题(可用性场景)。
此外,目前尚不清楚是否应该对密码应用进行哈希处理(某些机制正在对其进行哈希处理,有些机制不进行哈希处理),同样适用于用户提供的密码问题。
是否有其他标准可以定义除OWASP之外的所有这些?
答案 0 :(得分:1)
应该使用秘密Q& A吗?
您已经解释了应该和不应该使用秘密问题的地方,以及为什么这么好。它们几乎总是比传统的用户名和密码组合弱得多,但如果用作另一种方法的辅助验证,它们肯定会增加密码重置过程的安全性。
<强>实施强>
我建议使用预定义的问题而不是用户定义的问题。虽然用户可以创建一个比你应该强迫它们更强大的Q&amp; A,但他们也可以设置一个像 &#34;问:一种可以让医生远离的甜水果,&#34;你真的无法阻止,但根本没有提供任何保护。
答案应该是什么?可能。
但是如果你要哈希它,我会建议做一些事情,比如先将它设置为全部小写;像大写这样的东西在密码中很重要,但秘密Q&amp; A的要点是(正确的)用户可以冷静地给出正确的答案。允许像大写这样的东西打破这个可能是一个坏主意。事实上,我可能会删除任何非字母数字的内容,以便一段时间,短划线等不会中断比赛。当然,你所做的任何删除熵的事情都会进一步削弱秘密Q&amp; A,就像在密码上一样,所以你必须对你的安全性的真正重要程度做出判断。
其他标准
我不知道任何超出OWASP的其他标准。