【问题标题】:Improper Neutralization of CRLF Sequences in HTTP Headers ('HTTP Response Splitting')HTTP 标头中 CRLF 序列的不正确中和(“HTTP 响应拆分”)
【发布时间】:2015-09-16 00:39:14
【问题描述】:

在研发后我没有解决这个问题。请在下面找到一段代码并帮助我解决这个 veracode 缺陷。

Response.AppendHeader("Content-Disposition"," attachment; filename = " + Session["user_id"] + "_makler.pdf");

DESCRIPTION - 函数调用包含 HTTP 响应拆分缺陷。将未经处理的用户提供的输入写入 HTTP 标头 允许攻击者操纵浏览器呈现的 HTTP 响应,导致缓存中毒和跨站点 脚本攻击。

【问题讨论】:

    标签: .net asp.net-mvc html c#-3.0 veracode


    【解决方案1】:

    这是一个简单的问题 只需添加

    Session["user_id"].ToString().Replace("\n",String.Empty).Replace("\r",String.Empty)
    

    【讨论】:

      【解决方案2】:

      您可以对用户输入进行编码,这将得到修复。

      Response.AppendHeader("Content-Disposition"," attachment; filename = " + Server.UrlEncode(Session["user_id"]) + "_makler.pdf");
      

      【讨论】:

      • 这对我有用并通过了 Veracode 扫描。我使用了 HttpUtility.UrlEncode(filename)。与大多数 Veracode 的扫描详细信息一样,它不会引导您修复答案,而是在 StackOverflow 中找到它。
      猜你喜欢
      • 2014-03-26
      • 2019-09-06
      • 2014-06-24
      • 2013-05-17
      • 2015-09-27
      • 2011-09-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多