# 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 ### 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}}