在asp.net中打开Redirect漏洞

时间:2017-02-23 17:44:24

标签: c# asp.net fortify

我已编写以下代码重定向到我网站的其他页面

 if (!string.IsNullOrEmpty(Request.QueryString["id"]))
   Response.Redirect("node.aspx?id=" + Request.QueryString["id"], false);

此代码无任何问题,但按需强制确实显示上述代码中的开放重定向漏洞。
有人可以帮我这个吗?

1 个答案:

答案 0 :(得分:0)

我不熟悉按需加强打开重定向漏洞主要是将用户重定向到QueryString中传递的URL。通常,我们在“登录”页面中看到,但在您的代码中并非如此。

如果您知道id是一个整数值,您可以先解析它。

int id;
string str = Request.QueryString["id"];
if (!string.IsNullOrEmpty(str) && Int32.TryParse(str, out id))
    Response.Redirect("node.aspx?id=" + id, false);