我被迫处理IBM AppScan结果。这个让我头痛。我在下面执行的语句中从AppScan获得以下标志(和其他人一样)。
标记: 查询参数通过SSL传递,可能包含敏感信息 资源: https://.../bundles/jqueryval?v=(version)
它的根源似乎是捆绑和缩小。
我的RegisterBundles看起来像这样:
public static void RegisterBundles(BundleCollection bundles)
{
bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
"~/Scripts/jquery-{version}.js"));
...
}
我的_Layout.cshtml就像这样调用它:
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>CD Renewal - @ViewBag.Title</title>
@Styles.Render("~/Content/css")
@Scripts.Render("~/bundles/jquery")
@Scripts.Render("~/bundles/jqueryval")
@Scripts.Render("~/bundles/modernizr")
@Scripts.Render("~/bundles/bootstrap")
</head>
关于如何进行捆绑的任何想法都会将正文中的版本参数(v)作为帖子传递而不是查询字符串?
答案 0 :(得分:0)
在与Microsoft支持人员讨论此问题之后,我从他们那里得到了精简的答案:
&#34;这是一种设计行为,查询字符串将被添加到 URL作为“缓存破坏者”,以便客户端不会缓存旧的 版本
此外,在服务器端完全忽略查询字符串 并且它不容易受到任何攻击。&#34; - Microsoft高级支持