HTTP Connection Contamination

Support HackTricks

Ovo je sažetak posta: https://portswigger.net/research/http-3-connection-contamination. Proverite ga za dodatne detalje!

Web pretraživači mogu ponovo koristiti jednu HTTP/2+ vezu za različite veb sajtove putem HTTP connection coalescing, pod uslovom da imaju zajedničke IP adrese i zajednički TLS sertifikat. Međutim, ovo može doći u sukob sa first-request routing u reverznim proxy-ima, gde se naredni zahtevi usmeravaju na pozadinu određenu prvim zahtevom. Ova pogrešna usmeravanja mogu dovesti do sigurnosnih ranjivosti, posebno kada se kombinuju sa wildcard TLS sertifikatima i domenima kao što je *.example.com.

Na primer, ako wordpress.example.com i secure.example.com oboje koriste isti reverzni proxy i imaju zajednički wildcard sertifikat, koalescing veze u pretraživaču može dovesti do toga da zahtevi za secure.example.com budu pogrešno obrađeni od strane WordPress pozadine, iskorišćavajući ranjivosti kao što je XSS.

Da biste posmatrali koalescing veze, možete koristiti Chrome-ovu karticu Mreža ili alate kao što je Wireshark. Evo isječka za testiranje:

fetch('//sub1.hackxor.net/', {mode: 'no-cors', credentials: 'include'}).then(()=>{ fetch('//sub2.hackxor.net/', {mode: 'no-cors', credentials: 'include'}) })

Pretnja je trenutno ograničena zbog retkosti usmeravanja prvog zahteva i složenosti HTTP/2. Međutim, predložene promene u HTTP/3, koje opuštaju zahtev za podudaranje IP adrese, mogle bi proširiti površinu napada, čineći servere sa wildcard sertifikatom ranjivijim bez potrebe za MITM napadom.

Najbolje prakse uključuju izbegavanje usmeravanja prvog zahteva u obrnutim proxy-ima i opreznost sa wildcard TLS sertifikatima, posebno sa pojavom HTTP/3. Redovno testiranje i svest o ovim složenim, međusobno povezanim ranjivostima su ključni za održavanje bezbednosti veba.

Support HackTricks

Last updated