1. beplay体育能用吗网络安全学院
  2. 要求走私
  3. 先进的
  4. http/2-排定向量

http/2-排定向量

由于HTTP/2是二进制协议而不是基于文本的事实,因此由于其语法的局限性,有许多潜在的向量无法在HTTP/1中构造。

我们已经看到了你怎么能将CRLF序列注入标题值。在本节中,我们将为您提供一些其他HTTP/2划分的向量,您可以用来注入有效载荷。尽管HTTP/2规范正式禁止此类请求,但一些服务器无法有效验证和阻止它们。

笔记

只能使用专业的HTTP/2功能在Burp的检查员面板中。

通过标题名称注射

在http/1中,标题名称不可能包含一个结肠,因为此字符用于将名称的末端指示给解析器。在HTTP/2中不是这种情况。

通过将结肠与\ r \ n角色,您也许可以使用HTTP/2标头的名称字段来偷走前端过滤器的其他标题。然后,一旦使用http/1语法重写请求后,这些内容将被解释为后端的单独标头:

前端(HTTP/2)

foo:酒吧\ r \ n转移编码:分块\ r \ nX: 忽视

后端(HTTP/1)

foo:酒吧\ r \ n转移编码:分块\ r \ nX:忽略\ r \ n

通过伪头注射

HTTP/2不使用请求行或状态行。取而代之的是,该数据通过请求正面的一系列“伪标头”传递。在HTTP/2消息的基于文本的表示中,通常将它们带有结肠,以帮助它们与普通标头区分开。总共有五个伪头:

  • :方法- 请求方法。

  • :小路- 请求路径。请注意,这包括查询字符串。

  • :权威- 大致等同于HTTP/1主持人标题。

  • :方案- 请求方案,通常http或者https

  • :地位- 响应状态代码(未在请求中使用)。

当网站将请beplay体育能用吗求降级到HTTP/1时,他们使用其中一些伪标头的值来动态构建请求行。这使一些有趣的新方法构建攻击。

提供模棱两可的主人

虽然http/1主持人标头有效地取代了:权威http/2中的伪标头,您仍然允许您发送主持人请求中的标题。

在某些情况下,这可能导致两个主持人重写HTTP/1请求中发生的标题,该请求打开了绕过前端的另一种可能性主持人标题“过滤器。主持人标题攻击否则它可能是免疫的。

提供模棱两可的道路

由于如何解析请求行,因此在HTTP/1中不可能尝试以模棱两可的路径发送请求。但是,由于使用伪标头指定了HTTP/2中的路径,因此现在可以发送带有两个不同路径的请求,如下所示:

:方法 邮政
:小路 /任何事物
:小路 /行政
:权威 脆弱的website.beplay体育能用吗com

如果网站验证的路径之间存在差异beplay体育能用吗访问控件以及用于路由请求的路径,这可能使您能够访问原本不受限制的端点。

注入完整的请求行

在降级期间,:方法伪标头将写入最终的HTTP/1请求的开始。如果服务器允许您在:方法值,您可能能够注入完全不同的请求行,如下所示:

前端(HTTP/2)

:方法 获取 /管理员http /1.1
:小路 /任何事物
:权威 脆弱的website.beplay体育能用吗com

后端(HTTP/1)

get /admin http /1.1 /任何东西http /1.1主机:脆弱的website.combeplay体育能用吗

只要服务器还可以容忍请求行中的任意尾随字符,这提供了另一种用模棱两可的路径创建请求的方法。

注入URL前缀

HTTP/2的另一个有趣功能是能够使用该请求本身中明确指定方案:方案伪头。虽然这通常只包含http或者https,您可能可以包括任意值。

当服务器使用服务器时,这可能很有用:方案例如,标题动态生成URL。在这种情况下,您可以在URL中添加一个前缀,甚至可以通过将真实URL推入查询字符串来完全覆盖它:

要求

:方法 得到
:小路 /任何事物
:权威 脆弱的website.beplay体育能用吗com
:方案 https://evil-user.net/poison?

回复

:地位 301
地点 https://evil-user.net/poison?://vulnerable-beplay体育能用吗website.com/anything/

将新线注射到伪头上

注射到:小路或者:方法伪标头,您需要确保生成的HTTP/1请求仍然具有有效的请求行。

作为\ r \ n终止http/1中的请求行,只需添加\ r \ n一部分通过,只会打破请求。降级后,重写的请求必须在第一个之前包含以下序列\ r \ n您注射:

+空间 + <路径> +空间 + http/1.1

只需想象一下您的注射范围内的位置,并相应地包含所有其余部分即可。例如,注射到:小路,您需要添加一个空间,http/1.1之前\ r \ n如下:

前端(HTTP/2)

:方法 得到
:小路

/示例http/1.1\ r \ n转移编码:分块\ r \ nX:X

:权威 脆弱的website.beplay体育能用吗com

后端(HTTP/1)

获取 /示例http /1.1\ r \ n转移编码:分块\ r \ nX:X HTTP/1.1\ r \ n主持人:脆弱的website.cobeplay体育能用吗m\ r \ n\ r \ n

请注意,在这种情况下,我们还添加了一个任意的尾随标头,以捕获在重写期间自动添加的空间和协议。

免费注册以跟踪您的学习进度

通过Portswigger的网络安全学院工作的好处beplay官网可以赌beplay体育能用吗
  • 练习在现实目标上利用漏洞。

  • 记录您从学徒到专家的发展。

  • 看看您在我们的名人堂中排名。

已经有一个帐户?在此登录