使用 response.sendRedirect() 时打开重定向冲突

问题描述

我在 Fortify 和 Sonarqube 中遇到了 Open Redirect 以下代码行的问题。

    response.sendRedirect(redirectUri);

变量 redirectUri 正在从方法参数中获取其值。

为了解决这个问题,我添加了一层验证。

如果应用程序在服务器上运行,则 uri 将以 .intranet.mysite.com/ 结尾。如果应用程序在本地运行,则 uri 将以 http://localhost:8888/ 开头。

if (redirectUri.endsWith(".intranet.mysite.com/") || redirectUri.startsWith("http://localhost:8888")) {
    response.sendRedirect(redirectUri);
}

但即使在这之后,我也收到了违规通知

如果我遗漏了什么,请提出建议。

谢谢。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)