hacktricks/pentesting-web/http-connection-request-smuggling.md

55 lines
3.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# HTTP连接请求劫持
<details>
<summary><strong>从零开始学习AWS黑客技术</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTEHackTricks AWS红队专家</strong></a><strong></strong></summary>
* 您在**网络安全公司**工作吗? 想要看到您的**公司在HackTricks中被宣传**吗? 或者您想要访问**PEASS的最新版本或下载HackTricks的PDF**吗? 请查看[**订阅计划**](https://github.com/sponsors/carlospolop)!
* 发现我们的独家[NFTs收藏品**The PEASS Family**](https://opensea.io/collection/the-peass-family)
* 获取[**官方PEASS和HackTricks周边产品**](https://peass.creator-spring.com)
* **加入** [**💬**](https://emojipedia.org/speech-balloon/) [**Discord群**](https://discord.gg/hRep4RUj7f) 或 [**电报群**](https://t.me/peass) 或**关注**我的**Twitter** 🐦[**@carlospolopm**](https://twitter.com/hacktricks\_live)**。**
* **通过向** [**hacktricks repo**](https://github.com/carlospolop/hacktricks) **和** [**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **提交PR来分享您的黑客技巧**
</details>
**这是文章** [**https://portswigger.net/research/browser-powered-desync-attacks**](https://portswigger.net/research/browser-powered-desync-attacks) **的摘要**
## 连接状态攻击 <a href="#state" id="state"></a>
### 首次请求验证
在路由请求时,反向代理可能依赖于**Host头部**来确定目标后端服务器,通常依赖于允许访问的主机的白名单。然而,在某些代理中存在漏洞,其中白名单仅在连接的初始请求上执行。因此,攻击者可以利用这一点,首先向允许的主机发出请求,然后通过同一连接请求内部站点:
```
GET / HTTP/1.1
Host: [allowed-external-host]
GET / HTTP/1.1
Host: [internal-host]
```
### 第一个请求路由
在某些配置中,前端服务器可能会使用第一个请求的**主机头**来确定该请求的后端路由,然后将来自同一客户端连接的所有后续请求持续路由到同一后端连接。这可以演示为:
```
GET / HTTP/1.1
Host: example.com
POST /pwreset HTTP/1.1
Host: psres.net
```
这个问题可能与[主机头攻击](https://portswigger.net/web-security/host-header),如密码重置污染或[Web缓存污染](https://portswigger.net/web-security/web-cache-poisoning)相结合,以利用其他漏洞或未经授权访问其他虚拟主机。
{% hint style="info" %}
要识别这些漏洞可以利用HTTP请求劫持器中的'connection-state probe'功能。
{% endhint %}
<details>
<summary><strong>从零开始学习AWS黑客技术成为专家</strong> <a href="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
* 您在**网络安全公司**工作吗?您想看到您的**公司在HackTricks中被宣传**吗?或者您想获得**PEASS的最新版本或下载PDF格式的HackTricks**吗?请查看[**订阅计划**](https://github.com/sponsors/carlospolop)!
* 发现我们的独家[NFTs收藏品**The PEASS Family**](https://opensea.io/collection/the-peass-family)
* 获取[**官方PEASS & HackTricks周边**](https://peass.creator-spring.com)
* **加入**[**💬**](https://emojipedia.org/speech-balloon/) **Discord群**](https://discord.gg/hRep4RUj7f) **或**[**电报群**](https://t.me/peass) **或在Twitter上关注我** 🐦[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **通过向**[**hacktricks repo**](https://github.com/carlospolop/hacktricks) **和**[**hacktricks-cloud repo**](https://github.com/carlospolop/hacktricks-cloud) **提交PR来分享您的黑客技巧。**
</details>