Ko brskalnik pošlje zahtevo lokalnemu strežniku, pripne dodatne glave, kot so glave gostitelja in izvora, da strežniku zagotovi dodatne informacije. Te glave igrajo ključno vlogo pri zagotavljanju varnosti in pravilnega delovanja spletnih aplikacij. V tem odgovoru bomo raziskali, kako brskalnik pripne te glave, in razpravljali o njihovem pomenu v kontekstu varnosti lokalnega strežnika HTTP.
Glava gostitelja je bistvena komponenta zahteve HTTP in se uporablja za določanje ciljnega gostitelja, kateremu je poslana zahteva. Ko pošljete zahtevo lokalnemu strežniku, brskalnik vključi glavo gostitelja, ki označuje ime gostitelja ali naslov IP strežnika, s katerim želi komunicirati. To omogoča strežniku, da prepozna predvideni cilj zahteve. Na primer, če želi brskalnik dostopati do spletne strani, ki gostuje na lokalnem strežniku z naslovom IP 192.168.0.1, bi vključeval glavo gostitelja, kot sledi: "Gostitelj: 192.168.0.1". Strežnik nato te informacije uporabi za usmeritev zahteve do ustreznega vira.
Po drugi strani je izvorna glava varnostni mehanizem, ki ga izvajajo sodobni brskalniki za zaščito pred napadi navzkrižnega izvora. Določa izvor, iz katerega je bila poslana zahteva, vključno s protokolom, imenom gostitelja in številko vrat. Brskalnik samodejno vključi izvorno glavo v zahteve lokalnim strežnikom, da zagotovi, da lahko strežnik preveri vir zahteve. Na primer, če spletna stran, ki gostuje na "http://localhost:8080", pošlje zahtevo lokalnemu strežniku na "http://localhost:3000", bi brskalnik vključil izvorno glavo, kot sledi: "Izvor: http ://localhost:8080". To omogoča strežniku, da preveri, ali zahteva izvira iz pričakovanega vira, in pomaga preprečiti nepooblaščen dostop do občutljivih virov.
Poleg glav gostitelja in izvora obstajajo tudi druge glave, ki jih lahko brskalniki pripnejo, ko pošiljajo zahteve lokalnim strežnikom. Na primer, glava uporabniškega posrednika zagotavlja informacije o odjemalski aplikaciji (tj. brskalniku), ki je poslala zahtevo. Ta glava strežniku pomaga razumeti zmožnosti in omejitve odjemalca, kar mu omogoča, da zagotovi ustrezne odzive.
Pomembno je omeniti, da medtem ko brskalniki privzeto dodajo te glave, jih je mogoče tudi spremeniti ali odstraniti na različne načine. To je mogoče storiti prek razširitev brskalnika, strežnikov proxy ali z neposredno manipulacijo zahteve z uporabo programskih tehnik. Zato je ključnega pomena, da skrbniki strežnikov izvajajo ustrezne varnostne ukrepe za preverjanje in čiščenje dohodnih zahtev, ne glede na prisotnost teh glav.
Ko brskalnik pošlje zahtevo lokalnemu strežniku, pripne dodatne glave, kot so glave gostitelja in izvora. Glava gostitelja določa ciljnega gostitelja zahteve, medtem ko glava izvora pomaga zaščititi pred napadi navzkrižnega izvora. Te glave igrajo ključno vlogo pri zagotavljanju varnosti in pravilnega delovanja spletnih aplikacij. Skrbniki strežnikov bi se morali zavedati teh glav in izvajati ustrezne varnostne ukrepe za preverjanje in čiščenje dohodnih zahtev.
Druga nedavna vprašanja in odgovori v zvezi Osnove varnosti spletnih aplikacij EITC/IS/WASF:
- Kaj so glave zahtev za pridobivanje metapodatkov in kako jih je mogoče uporabiti za razlikovanje med zahtevami istega izvora in zahtevami med spletnimi mesti?
- Kako zaupanja vredne vrste zmanjšajo površino napadov spletnih aplikacij in poenostavijo varnostne preglede?
- Kakšen je namen privzetega pravilnika v zaupanja vrednih vrstah in kako ga je mogoče uporabiti za prepoznavanje nevarnih dodelitev nizov?
- Kakšen je postopek za ustvarjanje predmeta zaupanja vrednih vrst z uporabo API-ja za zaupanja vredne vrste?
- Kako direktiva o zaupanja vrednih vrstah v pravilniku o varnosti vsebine pomaga blažiti ranljivosti skriptnega izvajanja med spletnimi mesti (XSS) na osnovi DOM?
- Kaj so zaupanja vredne vrste in kako obravnavajo ranljivosti XSS, ki temeljijo na DOM, v spletnih aplikacijah?
- Kako lahko pravilnik o varnosti vsebine (CSP) pomaga ublažiti ranljivosti skriptnega izvajanja med spletnimi mesti (XSS)?
- Kaj je ponarejanje zahtev na več mestih (CSRF) in kako ga lahko napadalci izkoristijo?
- Kako ranljivost XSS v spletni aplikaciji ogrozi uporabniške podatke?
- Katera sta dva glavna razreda ranljivosti, ki jih običajno najdemo v spletnih aplikacijah?
Oglejte si več vprašanj in odgovorov v Osnovah varnosti spletnih aplikacij EITC/IS/WASF