Mi az a HSTS?

A HSTS egy webes biztonsági válaszfejléc. A név a „HTTP Strict Transport Security” rövidítése. A HSTS fejléc funkciója, hogy a böngészőket arra kényszerítse, hogy HTTPS használatával kapcsolódjanak webhelyekhez.

Tipp: A HTTPS titkosítást használ, hogy megvédje webkapcsolatát a módosítani vagy felügyelni próbáló hackerektől. A HTTP nem rendelkezik ezekkel a védelemmel, így a megfelelő helyen lévő hacker figyelheti és módosíthatja a HTTP-forgalmat.

A webes válaszfejléc egy metaadat, amelyet a szerver küld, amikor válaszol a webes kérésekre. E fejlécek egy részhalmazát gyakran biztonsági fejlécnek nevezik, mivel céljuk a webhely és a felhasználó biztonságának növelése.

A HSTS fejlécnek két kötelező és két opcionális része van. A „Strict-Transport-Security” fejlécnév, majd a „max-age” operátor és érték egyaránt kötelező. Egy másik operátorpár, az „includeSubDomains” és a „preload” is néha használatos.

Amikor a böngésző HTTPS-választ kap a HSTS-fejléccel, utasítja, hogy csatlakozzon ehhez a webhelyhez és a rajta lévő összes erőforráshoz, kizárólag HTTPS használatával a „max-age” időzítő időtartama alatt. A „Max-age” egy olyan változó, amely azt írja le, hogy a böngészőnek mennyi ideig kell emlékeznie egy beállításra. A „max-age” értéke másodpercben van feltüntetve, az ajánlott érték „31536000”, ami egy év.

Az ötlet az, hogy ezen időzítő időtartamán belül, amely minden következő oldalbetöltéskor visszaáll, a böngészőnek HTTPS-kapcsolatra lesz szüksége, és elutasítja az összes HTTP-erőforrást. Ez védelmet nyújt a középső támadásokkal szemben, ahol egy Ön és a webszerver közötti hacker manipulálhatja a kapott válaszokat.

A fő pont, ahol ez megvédi Önt, az első kapcsolat. Általában, amikor csatlakozik egy webhelyhez, kérheti a HTTP-webhelyet, majd továbbíthatja a HTTPS webhelyre. Sajnos egy középső pozícióban lévő hacker megakadályozhatja a HTTPS-re való frissítést, majd ellophatja vagy figyelheti az Ön tevékenységét a webhelyen. Ha azonban a HSTS fejlécet a böngésző látta, a böngésző akár az első kapcsolatot is létrehozza HTTPS-en keresztül, megvédve Önt a hackerektől.

A HSTS emellett megakadályozza a nem biztonságos erőforrások betöltését, amelyeket a támadók rosszindulatúan módosíthatnak, ha HTTP-n keresztül szállítanák őket.

Az „includeSubDomains” operátor azt jelzi, hogy a fejlécnek a webhely összes aldomainjére is vonatkoznia kell.

A HSTS előtöltési listája

Észreveheti, hogy a HSTS még mindig nem védi Önt az első alkalommal, amikor csatlakozik egy webhelyhez. Itt jön be az „előtöltés” ​​operátor. A webhelyek felvehetik magukat a HSTS előtöltési listára való felvételre, ebben az esetben a „preload” operátor kötelező indikátor. A HSTS előtöltési listát rendszeresen frissítjük és tároljuk a böngészőben, ha egy oldal szerepel benne, akkor a böngésző a HSTS védelmet alkalmazza rá. Ez még a legelső csatlakozáskor is megtörténik, mielőtt a böngésző valaha is láthatta volna a HSTS válaszfejlécet.

Tipp: A HSTS előtöltési listájához legalább egy éves „maximális életkor” szükséges.

Problémák a HSTS-sel

A HSTS egyik fő pontja, hogy hibaüzenetet jelenít meg, ha bármilyen probléma van a HTTPS-kapcsolattal. Extra biztonsági óvintézkedésként a felhasználóknak nem szabad megkerülniük a HSTS hibaüzeneteket, ahogyan azt a normál HTTPS-hibák esetén megtennék.

Sajnos ez problémákat okozhat, ha egy vállalat a HSTS-t a teljes webhely előtt vezeti be, és minden rajta használt erőforrás támogatja a HTTPS-t. Ebben az esetben a felhasználók HSTS biztonsági hibaüzeneteket fognak látni, amelyeket nem tudnak megkerülni, lényegében teljesen felborítva a webhelyet. A legrosszabb az, hogy a HSTS fejléc egyszerű eltávolítása nem oldja meg a problémát ezeknél a felhasználóknál, mivel böngészőjük továbbra is kényszeríti a HSTS-t a potenciálisan hónapokig tartó „max-életkor” idejére.

Mint ilyen, rendkívül fontos, hogy a fejléc első telepítésekor egy rövid „max-age”-t használjunk. Ha vannak problémák, akkor azok csak rövid ideig maradnak fenn, miután felfedezték. Csak ha biztos abban, hogy webhelye teljesen HSTS-kompatibilis, konfiguráljon hosszú HSTS-időzítőt.

Tipp: Lehetőség van 0 „max-age” beállítására is, ami lényegében eltávolítja a mentett HSTS bejegyzést bárki elől, aki látja. Ez segíthet, ha probléma adódik, de csak akkor érinti a felhasználókat, amikor és ha úgy döntenek, hogy újra megpróbálják.