mirror of
https://github.com/HackTricks-wiki/hacktricks.git
synced 2025-10-10 18:36:50 +00:00
35 lines
1.7 KiB
Markdown
35 lines
1.7 KiB
Markdown
# HTTP Connection Request Smuggling
|
|
|
|
{{#include ../banners/hacktricks-training.md}}
|
|
|
|
**Ovo je sažetak posta** [**https://portswigger.net/research/browser-powered-desync-attacks**](https://portswigger.net/research/browser-powered-desync-attacks)
|
|
|
|
## Napadi na stanje veze <a href="#state" id="state"></a>
|
|
|
|
### Validacija prvog zahteva
|
|
|
|
Kada usmeravaju zahteve, reverzni proksi mogu zavisiti od **Host header** da odrede odredišni back-end server, često se oslanjajući na belu listu hostova kojima je dozvoljen pristup. Međutim, postoji ranjivost u nekim proksijima gde se bela lista primenjuje samo na inicijalni zahtev u vezi. Kao rezultat toga, napadači bi mogli iskoristiti ovo tako što bi prvo poslali zahtev ka dozvoljenom hostu, a zatim zatražili interni sajt kroz istu vezu:
|
|
```
|
|
GET / HTTP/1.1
|
|
Host: [allowed-external-host]
|
|
|
|
GET / HTTP/1.1
|
|
Host: [internal-host]
|
|
```
|
|
### Prvo-zahtjev Ruting
|
|
|
|
U nekim konfiguracijama, front-end server može koristiti **Host zaglavlje prvog zahtjeva** da odredi pozadinsko rutiranje za taj zahtjev, a zatim trajno usmjeravati sve naredne zahtjeve iz iste klijentske veze na istu pozadinsku vezu. Ovo se može demonstrirati kao:
|
|
```
|
|
GET / HTTP/1.1
|
|
Host: example.com
|
|
|
|
POST /pwreset HTTP/1.1
|
|
Host: psres.net
|
|
```
|
|
Ovaj problem se potencijalno može kombinovati sa [Host header attacks](https://portswigger.net/web-security/host-header), kao što su trovanje resetovanjem lozinke ili [web cache poisoning](https://portswigger.net/web-security/web-cache-poisoning), kako bi se iskoristile druge ranjivosti ili dobio neovlašćen pristup dodatnim virtuelnim hostovima.
|
|
|
|
> [!NOTE]
|
|
> Da bi se identifikovale ove ranjivosti, može se koristiti funkcija 'connection-state probe' u HTTP Request Smuggler.
|
|
|
|
{{#include ../banners/hacktricks-training.md}}
|