【发布时间】:2016-04-15 08:43:52
【问题描述】:
使命:
在ASP.NET MVC 5 应用程序中防止open redirection
故事:
用户在网站/的某个网页上,说概览页面/Home/Overview并点击登录
登录后,服务器返回一些绝密用户特定数据并重定向到用户发起登录请求的同一页面。
我需要确保服务器在登录后不会愚蠢地重定向到黑客的网站,并且还传递绝密用户特定数据。
价值观
_Controller.Request.UrlReferrer_Controller.Request.UrlReferrer.AbsoluteUri_Controller.Request.Url.AbsoluteUri_Controller.Url.IsLocalUrl(returnUrl)
分别是:
{https://localhost:44300/Home/Overview}"https://localhost:44300/Home/Overview""https://localhost:44300/Account/Login?returnUrl=%2FHome%2FOverview"false
Url.IsLocalUrl 的值为 false,逻辑错误。
在这种情况下,如何确保用户在成功登录后安全地重定向到/Home/Overview 而不是http://blackHatHackerWebsite.com?
为什么 Url.IsLocalUrl 对于 ASP.NET MVC 中的本地 URL 为 false?
【问题讨论】:
-
@karthiksubramaniam 让我看看他们
标签: c# asp.net asp.net-mvc url-redirection owasp