会话安全到足以验证用户身份吗?

时间:2013-03-14 00:42:47

标签: security session

我想知道会话是否足够安全以验证用户。 基本上,当启动新会话时,服务器会生成唯一的会话ID。 id用于区分不同的用户。

然而,黑客是否有可能窃取其他人的会话ID? 如何防止他人窃取我的会话ID? 在我看来,黑客也可以通过意外或蛮力攻击来猜测会话ID。

您能否回答这个问题,以便我能够理解会话的概念,使其成为更好的软件开发人员?

3 个答案:

答案 0 :(得分:3)

野外饼干最常见obtained using XSS。劫持会话的另一种常见方法是使用Firesheep之类的工具嗅探会话ID。在这种情况下,通过HTTP泄露会话ID将是violation of owasp a9 - Insufficient Transport Layer Protection。如果攻击者可以强制受害者使用特定的会话ID,那么其名为Session Fixation,可用于危害帐户。 CSRFclickjacking是影响会话的其他方式。

我建议您阅读Mozilla WebAppSec Secure Coding Guidelines - Session Management

答案 1 :(得分:0)

你是对的。有一种叫做“会话劫持”的攻击。还存在一个麻烦的攻击,干扰现有会话,称为“跨站点请求伪造”。各种对策是必要的。在这里总结它们并不是很实际。但是,知道攻击的名称,您可以轻松地了解对策。例如,您需要咨询OWASP.org上的Cross-Site Request Forgery (CSRF) Prevention Cheat Sheet

答案 2 :(得分:0)

会话数据容易受到攻击。 Cross-Site Request Forgery或会话骑行是人们警惕的流行语的一种方法。

这里已经提到了几篇关于CSRF的文章。

但总的来说,劫持会话是任何(会话感知的)Web应用程序的安全方面。中间人(MITM)攻击会将敏感数据暴露给未经授权的用户。关于MITM的一篇好文章是here on OWASP。关于此blog的MITM的一些示例。

虽然大多数文章都提供了一些可能因未实施会话劫持措施而产生的漏洞的背景知识,但好消息是有一些工具可以让我们测试应用程序是否存在这些漏洞。已经提到了开放式Web应用程序安全项目(OWASP)。 OWASP提供guide for building secure websites(非常一般的主题),checklist for Session Management testing以及一些resources/tools and examples来检查会话的具体方面。

这些文章提供了测试此类漏洞的方法。就像你已经提到的那样,一些阅读会对你有帮助。