我有一个网站,其中人们的“登录”状态由他们的会话cookie(以及他们登录后获得的会话内的值)确认。该cookie设置为httpOnly &需要SSL。ASP.NET会话状态安全问题
比方说,某人有2个Firefox窗口打开,窗口(A)有我的应用程序和他们登录和窗口(B)有别的东西打开。
如果他们没有明确的退出时关闭窗口(A),然后打开一个新的窗口(C)和访问登录,只能从我的web应用程序资源,它仍然会加载,因为cookie是仍然有并且他们被认证。我的会话超时已经很低,但我需要阻止这种攻击的可能性,因为人们可以在公用计算机上访问他们的数据。
我该如何防止这种情况发生?
你是在谈论新的浏览器窗口或新标签在同一个浏览器? – Kamarey
@Kamarey:一个新的浏览器窗口。如果(A)在没有注销的情况下关闭并且打开一个新窗口(C),并且将前一个(A)的URL复制到(C)中,则我可以再次访问登录的内容。 – Alex
我知道最新版本的Firefox在关闭所有窗口后甚至保持同一会话。下一次您将继续像以前一样使用同一个会话。可能你的cookie已经超时了,因为你的超时时间非常短。 – Joop