在研发之后我没有解决这个问题。请在下面找到一段代码并帮助我解决这个 veracode 缺陷。
Response.AppendHeader("Content-Disposition"," attachment; filename = " + Session["user_id"] + "_makler.pdf");
描述- 函数调用包含 HTTP 响应拆分缺陷。将未经过滤的用户提供的输入写入 HTTP 标头允许攻击者操纵浏览器呈现的 HTTP 响应,从而导致缓存中毒和跨站点脚本攻击。
在研发之后我没有解决这个问题。请在下面找到一段代码并帮助我解决这个 veracode 缺陷。
Response.AppendHeader("Content-Disposition"," attachment; filename = " + Session["user_id"] + "_makler.pdf");
描述- 函数调用包含 HTTP 响应拆分缺陷。将未经过滤的用户提供的输入写入 HTTP 标头允许攻击者操纵浏览器呈现的 HTTP 响应,从而导致缓存中毒和跨站点脚本攻击。
您可以对用户输入进行编码,这将得到修复。
Response.AppendHeader("Content-Disposition"," attachment; filename = " + Server.UrlEncode(Session["user_id"]) + "_makler.pdf");
这是一个简单的问题,只需添加
Session["user_id"].ToString().Replace("\n",String.Empty).Replace("\r",String.Empty)