Keď prehliadač odošle požiadavku na lokálny server, pripojí ďalšie hlavičky, ako napríklad hlavičky hostiteľa a pôvodu, aby serveru poskytol ďalšie informácie. Tieto hlavičky zohrávajú kľúčovú úlohu pri zabezpečovaní bezpečnosti a správneho fungovania webových aplikácií. V tejto odpovedi preskúmame, ako prehliadač pripája tieto hlavičky a prediskutujeme ich význam v kontexte zabezpečenia lokálneho HTTP servera.
Hlavička hostiteľa je základnou súčasťou požiadavky HTTP a používa sa na určenie cieľového hostiteľa, ktorému sa požiadavka odosiela. Pri zadávaní požiadavky na lokálny server prehliadač obsahuje hlavičku hostiteľa, ktorá označuje názov hostiteľa alebo IP adresu servera, s ktorým chce komunikovať. To umožňuje serveru identifikovať zamýšľaný cieľ požiadavky. Napríklad, ak chce prehliadač pristupovať k webovej stránke hosťovanej na lokálnom serveri s IP adresou 192.168.0.1, bude obsahovať hlavičku hostiteľa takto: „Host: 192.168.0.1“. Server potom použije tieto informácie na smerovanie požiadavky na príslušný zdroj.
Na druhej strane hlavička pôvodu je bezpečnostný mechanizmus implementovaný modernými prehliadačmi na ochranu pred útokmi krížového pôvodu. Špecifikuje pôvod, z ktorého sa žiadosť podáva, vrátane protokolu, názvu hostiteľa a čísla portu. Prehliadač automaticky zahrnie hlavičku pôvodu do požiadaviek na lokálne servery, aby sa zabezpečilo, že server môže overiť zdroj požiadavky. Napríklad, ak webová stránka hosťovaná na „http://localhost:8080“ odošle požiadavku na lokálny server na „http://localhost:3000“, prehliadač zahrnie hlavičku pôvodu takto: „Origin: http ://localhost:8080". To umožňuje serveru overiť, že požiadavka pochádza z očakávaného zdroja a pomáha zabrániť neoprávnenému prístupu k citlivým zdrojom.
Okrem hlavičiek hostiteľa a pôvodu existujú aj ďalšie hlavičky, ktoré môžu prehliadače pripojiť pri vytváraní požiadaviek na miestne servery. Napríklad hlavička user-agent poskytuje informácie o klientskej aplikácii (tj prehliadači), ktorá zadáva požiadavku. Táto hlavička pomáha serveru pochopiť možnosti a obmedzenia klienta, čo mu umožňuje poskytovať vhodné odpovede.
Je dôležité poznamenať, že zatiaľ čo prehliadače štandardne pripájajú tieto hlavičky, môžu byť tiež upravené alebo odstránené rôznymi spôsobmi. Dá sa to dosiahnuť prostredníctvom rozšírení prehliadača, proxy serverov alebo priamou manipuláciou s požiadavkou pomocou programovacích techník. Preto je dôležité, aby správcovia serverov zaviedli vhodné bezpečnostné opatrenia na overenie a dezinfekciu prichádzajúcich požiadaviek bez ohľadu na prítomnosť týchto hlavičiek.
Keď prehliadač odošle požiadavku na lokálny server, pripojí ďalšie hlavičky, ako sú hlavičky hostiteľa a pôvodu. Hlavička hostiteľa špecifikuje cieľového hostiteľa požiadavky, zatiaľ čo hlavička pôvodu pomáha chrániť pred útokmi krížového pôvodu. Tieto hlavičky hrajú zásadnú úlohu pri zabezpečovaní bezpečnosti a správneho fungovania webových aplikácií. Správcovia serverov by si mali byť vedomí týchto hlavičiek a implementovať vhodné bezpečnostné opatrenia na overenie a dezinfekciu prichádzajúcich požiadaviek.
Ďalšie nedávne otázky a odpovede týkajúce sa Základy zabezpečenia webových aplikácií EITC/IS/WASF:
- Čo sú hlavičky žiadostí o načítanie metadát a ako ich možno použiť na rozlíšenie medzi rovnakými požiadavkami pôvodu a žiadosťami z viacerých stránok?
- Ako dôveryhodné typy znižujú útočnú plochu webových aplikácií a zjednodušujú kontroly zabezpečenia?
- Aký je účel predvolenej politiky v dôveryhodných typoch a ako ju možno použiť na identifikáciu nezabezpečených priradení reťazcov?
- Aký je proces vytvárania objektu dôveryhodných typov pomocou rozhrania API dôveryhodných typov?
- Ako pomáha direktíva dôveryhodných typov v politike zabezpečenia obsahu zmierniť chyby zabezpečenia skriptovania medzi lokalitami (XSS) založeného na DOM?
- Čo sú dôveryhodné typy a ako riešia zraniteľnosti XSS založené na DOM vo webových aplikáciách?
- Ako môže politika zabezpečenia obsahu (CSP) pomôcť zmierniť chyby zabezpečenia skriptovania medzi lokalitami (XSS)?
- Čo je falšovanie žiadostí medzi stránkami (CSRF) a ako ho môžu zneužiť útočníci?
- Ako ohrozuje zraniteľnosť XSS vo webovej aplikácii používateľské údaje?
- Aké sú dve hlavné triedy zraniteľností, ktoré sa bežne vyskytujú vo webových aplikáciách?
Pozrite si ďalšie otázky a odpovede v EITC/IS/WASF Web Applications Security Fundamentals