ITPub博客

首页 > IT基础架构 > 网络安全 > 什么是HTTP标头注入?

什么是HTTP标头注入?

翻译 网络安全 作者:zktq2021 时间:2021-10-14 10:36:31 0 删除 编辑

HTTP标头注入漏洞是一个Web应用程序安全性的术语,指当攻击者诱骗web应用到插入额外的HTTP头到合法的HTTP响应。HTTP标头注入是一种可用于促进恶意攻击的技术,例如跨站点脚本、Web缓存中毒等。反过来,这些可能会导致信息泄露、您的应用程序被用于网络钓鱼攻击以及其他严重后果。

HTTP 标头注入是一种更通用的攻击类别的特定案例:CRLF注入。如果攻击者能够在响应中注入CRLF序列(回车和换行),他们就能够添加各种虚假条目或更改现有数据:不仅是标题,甚至是整个响应正文。


什么导致HTTP标头注入漏洞?


就像大多数 Web 应用程序安全漏洞一样,HTTP标头注入漏洞(以及一般的CRLF注入漏洞)是过度信任用户输入的结果。如果 Web 应用程序的开发人员直接在 HTTP 响应中使用外部数据,则通常可以执行 HTTP 标头注入攻击。

例如,假设您的业务转移到一个新域,并且为了方便起见,您希望用户书签仍然有效。原始域是example.com但现在您的站点可以在example.info 上找到。如果您的普通用户访问过时的 URL,例如http://www.example.com/page1,您希望 Web 服务器自动将用户重定向到相应的新 URL:http://www.example.info/page1。

为了实现上述目标,您可以在example.com构建一个简单的 Web 应用程序,该应用程序从 HTTP 请求中获取路径并将其附加到http://www.example.info/。如果该应用程序的开发人员在将输入数据附加到新的基本 URL 之前没有从输入数据中消除 CR 和 LF 特殊字符,则攻击者可能会使用该应用程序执行 HTTP 标头注入攻击。


HTTP标头注入攻击剖析


HTTP 标头注入攻击在许多方面类似于跨站点脚本 (XSS) 攻击。因此,存在反射 HTTP 标头注入攻击和(不太常见的)存储 HTTP 标头注入攻击。

反射HTTP标头注入


假设您是example.com域的所有者,并且攻击者想要利用上述 HTTP 标头注入漏洞。他们准备网络钓鱼活动并发送以下 URL:

http://example.com/page1%0d%0aLocation:vulnweb.com

作为 HTTP 标头注入的结果,CRLF 字符被插入到响应中,然后是一个新的Location:标头。Web 浏览器(取决于浏览器类型和配置)会将用户重定向到攻击者的站点(此处:vulnweb.com)。


存储的HTTP标头注入


存储 HTTP 标头注入漏洞和相关攻击非常罕见。在这种情况下,恶意用户输入由 Web 应用程序存储,例如存储在数据库中,然后直接用于发送给其他用户的 HTTP 响应。

就像存储跨站点脚本漏洞一样,存储 HTTP 标头注入更危险,因为它可能会影响访问您的网站或使用您的 Web 应用程序的所有用户。


HTTP 标头注入攻击的后果


上面描述了 HTTP 标头注入攻击的最简单案例 - 攻击者可能会直接利用 HTTP 标头注入漏洞将您的域作为网络钓鱼攻击的基础。

但是,HTTP 标头注入还有更多潜在的后果。例如,攻击者可能会使用 HTTP 标头注入来注入新的标头,从而放松同源策略安全限制,从而可以执行其他原本不可能进行的攻击,例如CSRF。

HTTP 标头注入攻击的另一个潜在用途是 HTTP 响应拆分。在这种情况下,攻击者不仅会注入新的 HTTP 响应标头,还会注入整个响应主体。使用Content-Length标头,他们能够让受害者的浏览器完全忽略响应的合法主体(以及剩余的合法标头)。

由于CRLF注入的影响通常可能很严重(类似于跨站点脚本的影响),尽管OWASP Top 10 中没有特别提到这些漏洞,但不应掉以轻心。

由于HTTP标头注入是 CRLF 序列不正确中和的结果,因此避免此类漏洞的最佳方法是在HTTP响应中使用之前对来自用户输入的 CRLF 序列进行编码。这还可以防止其他利用CRLF注入的攻击的后果,这甚至可能导致敏感信息泄露、日志文件损坏或代码执行。


参读链接:

https://www.acunetix.com/blog/web-security-zone/http-header-injection/


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70000012/viewspace-2797253/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
中科天齐软件源代码安全缺陷检测平台(WuKong)是一款B/S 架构的国产信创静态软件安全测试工具,为客户在软件开发过程中查找、识别、追踪绝大部分主流编码中的技术漏洞与逻辑漏洞,帮助用户提升抵御网络攻击、防止数据泄露等安全问题的能力。

注册时间:2021-05-14

  • 博文量
    533
  • 访问量
    358736