Ugrás a tartalomhoz

Sütibeállítások

Típusonként válassza ki, mely sütiket engedélyezi. Választását bármikor módosíthatja a Sütibeállítások linken, amely minden oldal alján megtalálható. Adatvédelmi nyilatkozat

Szükséges

Mindig bekapcsolva

A bejelentkezéshez, a kosár megőrzéséhez és a választásai megjegyzéséhez szükségesek. Ezek mindig be vannak kapcsolva.

Milyen sütik?
  • weboke_sessie, weboke_klant, weboke_remember: a munkamenet és a bejelentkezve maradás
  • weboke_basket: a kosár
  • wkBtwIncl: az árak megjelenítése ÁFÁ-val vagy anélkül
  • wok_cookies: a sütiválasztás, 12 hónap

Méri, melyik hirdetés vezet látogatáshoz vagy rendeléshez, hogy ne fizessünk hatástalan hirdetésekért.

Milyen sütik?
  • Google Ads a Google Tag Manageren keresztül (_gcl_au, _gcl_aw), legfeljebb 90 napig
  • OpenAI Ads, hirdetések a ChatGPT-ben
  • wok_aff: melyik partnerünk ajánlására érkezett (partnerprogram), 60 nap

4,6

Ország és nyelv

Minden országnak saját oldala van, az adott ország áraival és ÁFA-jával.

Megtekintés

Az Ön weboldala: https, HSTS és biztonsági fejlécek

Modul 4: E-mail, weboldal és domain · Olvasási idő: 11 perc

Tanulási cél: E lecke után képes lesz ellenőrizni weboldala alapvető védelmét: érvényes tanúsítvány, https-re irányítás, HSTS megfelelő max-age értékkel, a legfontosabb biztonsági fejlécek, valamint a CMS frissítése.
Kulcsfogalmak: TLS-tanúsítvány, https, https-re irányítás, HSTS, max-age, includeSubDomains, preload, HTTP-fejléc, Content-Security-Policy, X-Content-Type-Options, frame-ancestors, X-Frame-Options, Referrer-Policy

Mi történik, amikor valaki megnyitja az Ön weboldalát

Ha egy ügyfél beírja a example.com címet a címsorba, a böngésző lekéri az oldalt az Ön webszerveréről. Ez a kommunikáció HTTP-n keresztül zajlik. A https esetén ezt egy titkosított kapcsolat veszi körül: a TLS. Ehhez a weboldalnak TLS-tanúsítványra van szüksége (gyakran még mindig SSL-tanúsítványnak nevezik). A tanúsítvány igazolja, hogy a szerver valóban a example.com domainhez tartozik, a titkosítás pedig biztosítja, hogy útközben senki ne olvashassa el vagy módosíthassa az adatokat. Ez különösen fontos nyilvános wifi esetén, ahol nem tudni, ki kezeli a hálózatot (5.3. lecke).

Minden válasszal együtt a szerver az oldal tartalma mellett egy sor fejlécet is küld: rövid sorokat, amelyek információt és utasításokat tartalmaznak a böngésző számára. Ezek nem jelennek meg a képernyőn, de nagyban meghatározzák, hogy a böngésző mennyire biztonságosan kezeli az Ön oldalát. Ezeknek egy része biztonsági fejléc. Ebben a leckében végignézzük a négy réteget: tanúsítvány, átirányítás, HSTS és fejlécek. Ezután röviden kitérünk magának a weboldalnak a frissítésére is.

1. réteg: érvényes tanúsítvány

Egy tanúsítvány akkor rendben van, ha három feltételnek megfelel:

  1. nem járt le;
  2. egy megbízható kibocsátó adta ki (olyan hitelesítésszolgáltató, amelyet a böngészők ismernek, például a Let's Encrypt vagy egy kereskedelmi szolgáltató);
  3. pontosan arra a névre érvényes, amelyet a látogató megnyit: example.com és www.example.com is, ha mindkettőt használja.

Manapság szinte minden tárhelyszolgáltató automatikusan intézi az ingyenes, önmagát megújító tanúsítványt. Ha mégis probléma van, az rendszerint azért, mert a domain egy másik szerverre mutat, vagy mert egy CAA-rekord blokkolja a kibocsátót (4.3. lecke).

Fontos tudni: a lakat ikon semmit nem mond az oldal megbízhatóságáról. Csak azt jelenti, hogy a kapcsolat titkosított, és hogy a tanúsítvány a címsorban szereplő névhez tartozik. A mijnbank-veilig.example típusú adathalász oldalaknak is éppúgy lehet lakat ikonjuk. Ezért tanulja meg a 3.2. leckében a domain nevek elolvasását.

2. réteg: mindig irányítson https-re

Önmagában a tanúsítvány nem elég. Aki megnyitja a http://example.com címet, például egy régi link miatt vagy mert csak a nevet gépelte be, azt automatikusan a https változatra kell irányítani. Ezt nevezik átirányításnak (redirect, általában 301-es státuszkóddal).

A helyes sorrend a következő:

http://example.com      ->  https://example.com
https://example.com     ->  https://www.example.com   (csak ha a www-t használja fő címként)
http://www.example.com  ->  https://www.example.com

Figyeljen az első sorra: a http-ről először ugyanarra a névre irányítson https-re, és csak utána, ha szükséges, a www-re. Így a böngésző a csupasz név HSTS-utasítását is megkaphatja. Az internet.nl pontosan ezt ellenőrzi.

Gyakori hiba a dupla átirányítás: egyszerre a tárhelypanelben és egy pluginban vagy a .htaccess fájlban. Ez végtelen hurkot okozhat ("túl sok átirányítás"). Használjon egyetlen helyet erre.

3. réteg: HSTS

Az átirányításnak van egy gyenge pontja: a legelső kérés még titkosítatlanul, http-n keresztül megy. Egy ugyanazon a hálózaton lévő támadó elfoghatja ezt az egyetlen kérést, és a látogatót egy hamisított, titkosítatlan verzión tarthatja. Erre szolgál a HSTS (HTTP Strict Transport Security, RFC 6797).

A HSTS-sel az oldala https-en keresztül egy fejlécet küld:

Strict-Transport-Security: max-age=31536000; includeSubDomains

A böngésző ekkor megjegyzi: "ezt az oldalt kizárólag https-en keresztül nyissa meg, a következő 31 536 000 másodpercig (egy évig)". Ha a látogató később beírja a http://example.com címet, a böngésző maga alakítja át https-re, még mielőtt bármi elindulna a hálózaton. A gyenge pontot jelentő első kérés így kiesik.

ElemJelentés
max-age=Meddig jegyzi meg a böngésző, másodpercben. Az internet.nl legalább egy évet (max-age=31536000) tekint megfelelőnek; egy rövid időszak nem védi azokat, akik csak ritkán látogatják az oldalát.
includeSubDomainsMinden aldomainre is érvényes, például shop.example.com és mail.example.com.
preloadEzzel kérheti, hogy felkerüljön a böngészőkbe beépített listára (hstspreload.org). Így még a legelső látogatás is védett. Követelmények: többek között legalább egyéves max-age, includeSubDomains, és minden aldomain https-en fusson. A listáról való levétel sokáig tart.
max-age=0Törli a megjegyzett utasítást.

Három dolgot érdemes tudnia, mielőtt bekapcsolja a HSTS-t:

  • Először mindenhol működnie kell a https-nek. Egy böngésző, amely megjegyezte a HSTS-t és tanúsítványhibát észlel, nem ad lehetőséget a látogatónak, hogy mégis folytassa (RFC 6797, 12.1. szakasz). Ha lejár a tanúsítványa, vagy nem megfelelő a www alcímre, az oldala elérhetetlen lesz ezeknek a látogatóknak, amíg meg nem oldja a problémát.
  • Az includeSubDomains mindent érint a domain alatt. Egy régi, tanúsítvány nélküli aldomain, például egy nyomtató vagy kamera oldala a camera.example.com címen, ezután nem lesz megnyitható.
  • Fokozatosan építse fel. Kezdje rövid max-age értékkel (például egy nap), ellenőrizze, hogy minden működik, majd lépésenként emelje egy évig. Minden lépésnél várja ki a teljes időszakot.

Egy sima http-n érkező HSTS-fejlécet a böngésző figyelmen kívül hagy. Ezt tehát csak a https-válaszban látja.

4. réteg: biztonsági fejlécek

A HSTS mellett van néhány fejléc, amely megmondja a böngészőnek, mit tehet és mit nem az Ön oldalaival. Nem szükséges mindegyiket tökéletesen beállítani, de az első három egyszerű és kockázatmentes.

FejlécMi ellen védekezikMegfelelő érték
X-Content-Type-OptionsA böngésző maga próbálja kitalálni, milyen típusú fájlról van szó, így egy feltöltött "kép" szkriptként is futtatható lehet.nosniff (az egyetlen érvényes érték)
Content-Security-Policy: frame-ancestors ... vagy X-Frame-OptionsClickjacking: egy másik oldal láthatatlanul betölti az Ön oldalát egy frame-be, és a látogatókat anélkül kattintatja az Ön gombjaira, hogy észrevennék.frame-ancestors 'self' vagy 'none'; a régebbi fejléc X-Frame-Options: SAMEORIGIN vagy DENY
Referrer-PolicyHa a látogató egy másik oldalra kattint, a böngésző elküldi az előző oldal címét is. Ebben érzékeny információ is lehet, például egy keresési kifejezés vagy egy rendelésszám.no-referrer vagy same-origin (szigorú), strict-origin-when-cross-origin (bevett gyakorlat, az internet.nl ennél figyelmeztetést ad)
Content-Security-Policy (teljes)Korlátozza, honnan tölthetők be szkriptek, stílusok és képek. Jelentősen megnehezíti a beágyazott kártékony szkripteket (XSS).Egyedi beállítás oldalanként. Kerülje az unsafe-inline, unsafe-eval és a helyettesítő karakterek (wildcard) használatát.

A teljes Content-Security-Policy a leghatékonyabb, de egyben a legbonyolultabb is: egy túl szigorú szabály tönkreteheti a statisztikáit, a fizetési gombját vagy a chatablakát. A Content-Security-Policy-Report-Only változattal előre felmérheti, mi kerülne blokkolásra, anélkül, hogy bármit elrontana. Ezt bízza inkább a weboldalát készítő szakemberre, vagy kezdje csak a frame-ancestors-szal.

A fejlécek saját kezű ellenőrzése

Nyissa meg az oldalát egy böngészőben, nyomja meg az F12 billentyűt (vagy válassza a "Vizsgálat" lehetőséget), lépjen a Hálózat fülre, töltse be újra az oldalt, és kattintson az első kérésre. A "Válaszfejlécek" (Response Headers) alatt látja mindazt, amit a szerver elküld. Parancssorból is megteheti:

curl -sI https://example.com/

Maga a weboldal: CMS, pluginok és sablonok

A legjobb fejlécek sem segítenek, ha az oldal mögötti szoftver sebezhető. A kisvállalkozások feltört oldalainak többsége nem a webszerveren keresztül esett áldozatul, hanem egy elavult plugin, egy évek óta nem frissített sablon, vagy egy gyenge rendszergazdai jelszó miatt.

  • Kapcsolja be az automatikus frissítéseket a CMS-éhez (például WordPress, Joomla vagy egyéb rendszer), és a pluginoknál, ahol ez lehetséges.
  • Távolítsa el azokat a pluginokat és sablonokat, amelyeket nem használ; a letiltás nem elég, a fájlok ettől még megmaradnak.
  • A rendszergazdai bejelentkezéshez használjon erős, egyedi jelszót és kétlépcsős azonosítást (2. modul), és korlátozza a bejelentkezési próbálkozások számát.
  • Tartsa a csomagja PHP-verzióját (vagy más programnyelvi verzióját) olyan verzión, amely még kap frissítéseket (5.1. lecke).

A gyakorlatban: így néz ki

A DirectAdminben, azaz a WebOké által használt vezérlőpultban, a domainjénél először kapcsolja be a Biztonságos SSL beállítást, majd az SSL kényszerítése HTTPS-átirányítással opciót. Ugyanitt található egy kapcsoló a HSTS-hez; ezt csak akkor kapcsolja be, ha a tanúsítvány minden névre megfelelően működik. Más szolgáltatóknál hasonlóan működik, vagy a CMS beállításaiban intézheti.

Ha az oldala Apache-on vagy LiteSpeeden fut, a fejléceket a .htaccess fájlban is beállíthatja:

<IfModule mod_headers.c>
  Header always set Strict-Transport-Security "max-age=31536000"
  Header always set X-Content-Type-Options "nosniff"
  Header always set Content-Security-Policy "frame-ancestors 'self'"
  Header always set Referrer-Policy "strict-origin-when-cross-origin"
</IfModule>

Az includeSubDomains beállítást csak akkor adja hozzá, ha biztos benne, hogy minden aldomain rendelkezik https-sel. Minden módosítás után ellenőrizze az internet.nl weboldalteszttel vagy a böngészője fejlesztői eszközeivel.

Összefoglalás

  • A lakat ikon azt jelenti: titkosított és a megfelelő névre érvényes. Nem azt jelenti: megbízható.
  • A http-t mindig irányítsa https-re, először ugyanarra a névre, és egyetlen helyen tegye ezt meg.
  • A HSTS-sel a böngésző megjegyzi, hogy az oldala csak https-en keresztül érhető el; az internet.nl legalább egyéves (31536000) max-age értéket tekint megfelelőnek. Csak akkor kapcsolja be, ha a https mindenhol működik, és fokozatosan építse fel.
  • Az X-Content-Type-Options: nosniff, a frame-ancestors (vagy X-Frame-Options) és a Referrer-Policy egyszerűen beállítható; a teljes Content-Security-Policy egyedi munkát igényel.
  • A CMS-e, a pluginok és a sablonok frissítése legalább olyan fontos, mint a fejlécek.

Kvíz

1. Pontosan mit akadályoz meg a HSTS?



2. Bekapcsolja a Strict-Transport-Security: max-age=31536000; includeSubDomains fejlécet. Egy héttel később lejár a shop.example.com tanúsítványa. Mit tapasztalnak a visszatérő látogatók?



3. Milyen max-age értéket tekint az internet.nl minimálisan elegendőnek a HSTS-hez?



4. Mi ellen véd a Content-Security-Policy: frame-ancestors 'self'?



5. A mijnbank-veilig.example címsorában egy lakat ikont lát. Mit tud ebből biztosan?



Feladat

A4.2 feladat: Https, HSTS és a weboldal fejlécének ellenőrzése. Adja meg weboldala domain nevét (ha nincs ilyenje, használja az internet.nl címet). A program megnyitja a domainje http:// és https:// változatát, és ellenőrzi a tanúsítványt, a https-re irányítást, a HSTS-t és a biztonsági fejléceket. Pontonként zöld, narancssárga vagy piros jelzést kap magyarázattal.

A4.2. feladat: Https, HSTS és a weboldal fejlécének ellenőrzése

Adja meg weboldalának domainnevét (ha nincs ilyen, használja az internet.nl oldalt). A program megnyitja a domain http:// és https:// változatát, és ellenőrzi a tanúsítványt, a https-re való átirányítást, a HSTS-t és a biztonsági fejléceket. Ezután adja meg a HSTS max-age értékét.



Amit beír, és amit találunk, azt nem tároljuk. A böngészője megjegyzi a válaszait és azt, hogy teljesítette e a feladatot. Ha bejelentkezett, a Fiókomban csak azt tároljuk, hogy a feladat (majdnem) helyes volt; ott ezt is törölheti.

D4.2 feladat: A weboldal frissítése és rendbetétele. Jelentkezzen be weboldala kezelőfelületére, ellenőrizze a CMS, a pluginok és a sablonok verzióját, távolítsa el, amit nem használ, és kapcsolja be az automatikus frissítéseket, ahol lehetséges. Pipálja ki az ellenőrzőlistát, és válaszoljon a reflexiós kérdésre.

D4.2. feladat: A weboldal frissítése és rendbetétele

Így kezdjen hozzá: (1) Jelentkezzen be a weboldala kezelőfelületére (vagy kérje meg a webfejlesztőjét, hogy együtt tegyék meg ezt). (2) Jegyezze fel a CMS verzióját, és nézze meg, vannak-e elérhető frissítések. (3) Készítsen biztonsági mentést (6. lecke, 6.1. rész), telepítse a CMS, a bővítmények és a sablonok frissítéseit. (4) Távolítsa el a nem használt bővítményeket és sablonokat. (5) Kapcsolja be az automatikus frissítéseket, ahol lehetséges. (6) Ellenőrizze, milyen rendszergazdai fiókok léteznek, és törölje azoknak a fiókjait, akik már nem dolgoznak Önnél. (7) Kapcsolja be a kétlépcsős azonosítást minden rendszergazdai fiókhoz.




A pipái és jegyzetei csak ebben a böngészőben maradnak meg, sehova nem küldjük el őket. Ha bejelentkezett, a Fiókomban csak azt tároljuk, hogy elvégezte a feladatot.

Bővebben olvasva

A WebOké-cikkekben szereplő lépések a WebOké környezetére vonatkoznak; más szolgáltatóknál hasonlóan működik.

Egy pillanat…

Domainek beállítása

Állítsa be domainenként a névszervereket, a tárhelyhez való kapcsolást és azt, hogy ki legyen a tulajdonos.

Domainek betöltése…