Kas yra HSTS?

HSTS yra žiniatinklio saugos atsako antraštė. Pavadinimas yra „HTTP Strict Transport Security“ akronimas. HSTS antraštės funkcija yra priversti naršykles prisijungti prie svetainių naudojant HTTPS.

Patarimas: HTTPS naudoja šifravimą, kad apsaugotų jūsų žiniatinklio ryšį nuo įsilaužėlių, bandančių jį modifikuoti ar stebėti. HTTP neturi šios apsaugos, todėl tinkamoje vietoje įsilaužėlis gali stebėti ir keisti HTTP srautą.

Žiniatinklio atsako antraštė yra metaduomenų dalis, kurią siunčia serveris, kai jis atsako į žiniatinklio užklausas. Šių antraščių poaibis dažnai vadinamas saugos antraštėmis, nes jų tikslas yra padidinti svetainės ir vartotojo saugumą.

HSTS antraštė turi dvi privalomas dalis ir dvi pasirenkamas. Antraštės pavadinimas „Griežtas transporto saugumas“ ir „maksimalaus amžiaus“ operatorius bei reikšmė yra privalomi. Kartais taip pat naudojama kita operatorių pora „includeSubDomains“ ir „preload“.

Kai naršyklė gauna HTTPS atsakymą su HSTS antrašte, jai nurodoma prisijungti prie šios svetainės ir visų joje esančių išteklių, naudojant tik HTTPS „maksimalaus amžiaus“ laikmačio laikotarpiu. „Max-age“ yra kintamasis, nurodantis, kiek laiko naršyklė turi atsiminti nustatymą. „Max-age“ reikšmė pateikiama sekundėmis, rekomenduojama vertė yra „31536000“, tai yra vieneri metai.

Idėja yra ta, kad per šio laikmačio trukmę, kuri iš naujo nustatoma kiekvieną kartą įkeliant puslapį, naršyklei reikės HTTPS ryšio ir atmesti bet kokius HTTP išteklius. Tai apsaugo nuo tarpinių atakų, kai įsilaužėlis tarp jūsų ir žiniatinklio serverio gali manipuliuoti jūsų gaunamais atsakymais.

Pagrindinis taškas, kuriuo tai apsaugo jus, yra pirmasis ryšys. Paprastai, kai prisijungiate prie svetainės, galite pateikti HTTP svetainės užklausą ir būti peradresuoti į HTTPS svetainę. Deja, įsilaužėlis, esantis vidurinėje padėtyje, gali neleisti atnaujinti HTTPS ir pavogti arba stebėti jūsų veiklą svetainėje. Tačiau kai naršyklė pamatys HSTS antraštę, jūsų naršyklė net pirmą kartą prisijungs per HTTPS, apsaugodama jus nuo įsilaužėlių.

HSTS taip pat neleidžia įkelti nesaugių išteklių, kuriuos užpuolikas taip pat galėtų piktybiškai modifikuoti, jei jie būtų pristatyti per HTTP.

Operatorius „includeSubDomains“ naudojamas nurodyti, kad antraštė taip pat turėtų būti taikoma visiems svetainės padomeniams.

HSTS išankstinio įkėlimo sąrašas

Galite pastebėti, kad HSTS vis tiek neapsaugo jūsų pirmą kartą prisijungus prie svetainės. Čia atsiranda „išankstinio įkėlimo“ operatorius. Tinklalapiai gali pateikti save įtraukti į HSTS išankstinio įkėlimo sąrašą, „išankstinio įkėlimo“ operatorius yra būtinas rodiklis, jei taip yra. HSTS išankstinio įkėlimo sąrašas yra reguliariai atnaujinamas ir saugomas naršyklėje. Jei svetainė įtraukta į ją, naršyklė jai taikys HSTS apsaugą. Tai atsitinka net pirmą kartą prisijungus, kol naršyklė dar negalėjo pamatyti HSTS atsakymo antraštės.

Patarimas: norint įtraukti į HSTS išankstinio įkėlimo sąrašą, būtinas „maksimalus amžius“ nuo metų.

HSTS problemos

Vienas iš pagrindinių HSTS punktų yra tai, kad jis pateikia klaidos pranešimą, jei kyla problemų dėl HTTPS ryšio. Kaip papildoma saugumo priemonė, vartotojai neturėtų apeiti HSTS klaidų pranešimų, kaip tai galėtų padaryti esant įprastoms HTTPS klaidoms.

Deja, tai gali sukelti problemų, jei įmonė išleidžia HSTS anksčiau nei visa svetainė, o kiekvienas joje naudojamas išteklius palaiko HTTPS. Tokiu atveju vartotojai pradės matyti HSTS saugos klaidų pranešimus, kurių jie negali apeiti, iš esmės visiškai sulaužydami svetainę. Blogiausia yra tai, kad paprasčiausiai pašalinus HSTS antraštę šių vartotojų problema neišsprendžiama, nes jų naršyklė ir toliau vykdys HSTS potencialiai mėnesių trukmės „maksimalaus amžiaus“.

Todėl labai svarbu, kad pirmą kartą diegiant antraštę būtų naudojamas trumpas „maksimalus amžius“. Jei yra kokių nors problemų, jos išlieka tik trumpą laiką, kai tik aptinkamos. Tik įsitikinę, kad jūsų svetainė visiškai suderinama su HSTS, turėtumėte sukonfigūruoti ilgą HSTS laikmatį.

Patarimas: Taip pat galima nustatyti 0 maksimalų amžių, tai iš esmės pašalina išsaugotą HSTS įrašą iš visų, kurie jį mato. Tai gali padėti, jei kyla problemų, bet tai turės įtakos tik naudotojams, kai jie nuspręs bandyti dar kartą.