【发布时间】:2016-06-30 16:43:03
【问题描述】:
Asp.net_SessionId 是系统默认生成的。每当此值从一个浏览器复制到另一个用户时,就会自动访问登录凭据内的页面。
案例:首先,我在一个浏览器 (chrome) 中使用我的凭据登录。现在我在私人模式下打开同一个浏览器(同样是 chrome)。现在,我将登录的浏览器会话值复制到私有模式,并尝试访问仪表板、配置文件、设置等页面。因此,只需复制会话值,我就可以访问所有需要登录的页面。
如何预防?请给我一些建议。
我可以在跨浏览器中阻止这种情况,但我无法在同一个浏览器中阻止它。
我尝试过的:
我实现了此处描述的技术,但在我的情况下它不起作用。是的,它可以使用两个不同的浏览器,但不能使用单个浏览器。
http://www.codeproject.com/Articles/859579/Hack-proof-your-asp-net-applications-from-Session
请帮我解决这个问题。
【问题讨论】:
-
你有什么可能的用途来阻止某人以私密模式打开另一个 Chrome 窗口并复制会话 ID?
-
这与用户在同一个浏览器中打开两个标签页(非隐私模式)有何不同?你也想防止这种情况发生吗?
-
跟打开新标签页和新窗口太不一样了。在新标签应用程序将使用相同的 cookie,而在另一个窗口中将生成新的 cookie。两者完全不同。