会话标识符未更新风险,真正的漏洞或只是误报风险?

时间:2014-01-16 06:46:26

标签: asp.net security sessionid session-hijacking

在我们的一个ASP.NET应用程序中最近使用IBM AppScan进行的安全扫描中,报告了以下中等漏洞

  

会话标识符未更新
  严重程度:中等
  风险:可以窃取或操纵可能用于冒充合法用户的客户会话和Cookie,   允许黑客查看或更改用户记录并执行   作为该用户的交易   原因:不安全的Web应用程序编程或配置。

我发现不同的线程都在讨论相同的问题并找到了建议的解决方案。但在KB article中,Microsoft解释了会话ID的重用是如何有用的,同一篇文章没有提到会话ID重用的任何风险。同样在Session Identifiers | MSDN中,除了作为cookie或作为URL的一部分,以明文形式发送除SessionID值之外的任何风险。

所以我的问题是,风险是一个真正的漏洞/可能的会话固定攻击还是只是假阳性风险?

2 个答案:

答案 0 :(得分:1)

在验证之前,可以轻松跟踪会话标识符。因为标识符定义了浏览器会话,所以当用户浏览登录页面时,将生成会话ID。所以攻击者可以了解会话ID的模式。所以在成功登录后更好地更改会话ID。

您还应该在其他范围内更改会话标识符。 你可以看看该网站 https://www.owasp.org/index.php/Session_Management_Cheat_Sheet

答案 1 :(得分:0)

使用Cookie始终会带来一定程度的漏洞,如果传输媒体不受保护。

这意味着您可以详细说明当有人窃听会话cookie或表单身份验证Cookie或任何其他Cookie时会发生什么,但通过安全线(SSL)进行通信会消除所有此类威胁。

我想不出为什么它会特定于ASP.NET和会话cookie。另外,我不太明白他们的意思

  
    

[...]窃取或操纵会话和cookie

  

首先,“或”。要操纵会话,您必须先窃取它。 然后,“和”。你不能操纵cookie,你只能偷走它们。

这应该是

  
    

窃取cookie并操纵会话。

  

在回应此类警告时,您应确保:

  • 在发布cookie后始终保证通信安全
  • 当用户注销或关闭浏览器时,
  • cookie被正确销毁(没有持久性cookie)