我们最近完成了一次安全扫描,结果表明我们的应用程序很容易通过此处描述的 ResolveUrl cookieless state 问题受到 XSS 的影响。
现在我正在寻找一种方法来以全局方式为我们的应用程序正确解决问题。不使用 ResolveUrl 并不是一个真正的选择,因为我们确实在 1000 多个地方使用它。我觉得奇怪的是,在 ASP.NET(据我所知)中没有办法完全禁用无 cookie 状态 url 解析,因为我们没有使用无 cookie 状态。
我尝试在 BeginRequest 中实施检查,以删除在 URL 中具有以(.(
(.
开始任何字符)开头的路径段的请求。这会起作用,因为我们应用程序中的实际 url 没有一个以此开头的路径段。但是,问题是,我们可以从请求中读取的 url 不再具有此路径段。它似乎在我们的代码开始执行之前被运行时过滤掉了。
我还有什么其他选择?