Digitális tanúsítvány: Az internet személyazonossági igazolványa

Amikor csatlakozol egy weboldalhoz, szoftvert töltesz le, vagy VPN-alagutat hozol létre, honnan tudod, hogy tényleg azzal kommunikálsz, akivel szeretnél? Pontosan ezt a problémát oldják meg a digitális tanúsítványok. Gondolj rájuk úgy, mint az internet útlevelére – egy hivatalos dokumentumra, amely igazolja, hogy egy entitás valóban az, akinek vallja magát.

Mi az a digitális tanúsítvány?

A digitális tanúsítvány egy olyan elektronikus fájl, amely egy nyilvános kriptográfiai kulcsot köt össze egy identitással – legyen szó weboldalról, vállalatról, szerverről vagy egyéni felhasználóról. A tanúsítványokat egy megbízható harmadik fél, az úgynevezett hitelesítésszolgáltató (Certificate Authority, CA) állítja ki és írja alá, például a DigiCert, a Let's Encrypt vagy a GlobalSign.

Amikor egy CA aláír egy tanúsítványt, lényegében szavatolja a tanúsítvány tulajdonosának kilétét. A böngésződ, az operációs rendszered és a VPN-kliensed egyaránt tartalmaz egy beépített listát a megbízható CA-król. Ha egy tanúsítvány megfelel az ezen a listán szereplő feltételeknek, a kapcsolat legitimnek minősül.

Hogyan működik a digitális tanúsítvány?

A digitális tanúsítványok egy nyilvánoskulcs-infrastruktúra (Public Key Infrastructure, PKI) nevű átfogóbb rendszer keretein belül működnek. A folyamat leegyszerűsítve a következő:

  1. A szerver vagy weboldal kulcspárt generál – egy nyilvános kulcsot (amelyet szabadon megoszt) és egy privát kulcsot (amelyet titokban tart).
  2. A szerver tanúsítvány-aláírási kérelmet (Certificate Signing Request, CSR) nyújt be a hitelesítésszolgáltatónak, amely tartalmazza a nyilvános kulcsát és az azonosító adatait (például a domain nevét).
  3. A CA ellenőrzi az identitást, majd kiállít egy aláírt tanúsítványt, amely tartalmazza a nyilvános kulcsot, az azonosító adatokat, a lejárati dátumot, valamint a CA saját digitális aláírását.
  4. Amikor csatlakozol, a szerver bemutatja a tanúsítványát. A böngésződ vagy a kliensed ellenőrzi a CA aláírását, és megbizonyosodik arról, hogy a tanúsítvány nem járt le, és nem vonták vissza.
  5. Ha minden rendben van, titkosított munkamenet kezdődik – például TLS használatával –, és megjelenik a lakat ikon a böngésző címsorában.

A CA aláírása az, ami ezt az egész rendszert megbízhatóvá teszi. Az aláírás meghamisítása a CA privát kulcsa nélkül számítási szempontból megvalósíthatatlan, éppen ezért működik ez a rendszer napi szinten, milliárdnyi kapcsolaton keresztül.

Miért fontosak a digitális tanúsítványok a VPN-felhasználóknak?

A VPN-ek nagymértékben támaszkodnak a digitális tanúsítványokra két kritikus funkció ellátásakor: a hitelesítés és a titkosítás beállítása során.

A hitelesítés biztosítja, hogy a VPN-kliensed valóban a VPN-szolgáltatód szerverével csatlakozzon össze – és ne egy kiszolgálónak álcázott támadóval. Tanúsítvány-ellenőrzés nélkül egy rosszindulatú szereplő közbeékelődéses (man-in-the-middle) támadást hajthatna végre, beférkőzve közéd és a VPN-szerver közé, miközben mindkét félnek kiadja magát. Azt hinnéd, hogy titkosított és privát a kapcsolatod, miközben a forgalmad teljesen ki van téve.

A titkosítás beállítása a másik kulcsszerep. Az olyan protokollok, mint az OpenVPN és az IKEv2, a kézfogási (handshake) fázisban tanúsítványokat használnak a titkosítási kulcsok biztonságos egyeztetéséhez. A tanúsítvány igazolja a szerver identitását még azelőtt, hogy bármilyen érzékeny kulcscsere megtörténne.

Egyes vállalati VPN-beállítások klienstanúsítványokat is alkalmaznak – ez azt jelenti, hogy az eszközödnek szintén be kell mutatnia egy tanúsítványt a szervernek, mielőtt csatlakozhatnál. Ez a felhasználóneveken és jelszavakon túl egy erős hozzáférés-védelmi réteget ad hozzá a rendszerhez.

Gyakorlati példák

  • HTTPS-weboldalak: Valahányszor `https://`-t és egy lakatot látsz, egy digitális tanúsítvány működik a háttérben, amelyet az adott domain nevére állítottak ki, és egy, a böngésződ által megbízhatónak tartott CA hitelesített.
  • OpenVPN-telepítések: Az OpenVPN alapértelmezés szerint TLS-tanúsítványokat használ a szerver és – opcionálisan – az egyes kliensek hitelesítéséhez. A helytelenül konfigurált vagy önállóan aláírt, megfelelő ellenőrzés nélküli tanúsítványok ismert biztonsági kockázatot jelentenek.
  • Vállalati VPN-ek: Sok vállalat belső hitelesítésszolgáltatót telepít, amely tanúsítványokat állít ki az alkalmazottak eszközei számára, biztosítva, hogy csak a felügyelt eszközök férhessenek hozzá a céges hálózathoz.
  • Kódaláírás: A szoftverfejlesztők tanúsítványokkal írják alá az alkalmazásaikat, hogy az operációs rendszer ellenőrizhesse: a kódot nem módosították a közzététel óta.

A korlátok, amelyeket érdemes ismerni

A digitális tanúsítványok csak annyira megbízhatóak, amennyire megbízható az őket kiállító CA. Ha egy CA-t kompromittálnak – ahogy az 2011-ben a DigiNotar esetén történt –, hamis tanúsítványokat állíthatnak ki főbb domainekhez, lehetővé téve a nagyszabású lehallgatást. Ezért jöttek létre a tanúsítvány-átláthatósági (Certificate Transparency, CT) naplók: nyilvános, csak bővíthető nyilvántartások minden kiállított tanúsítványról, amelyek sokkal nehezebbé teszik a jogosulatlan tanúsítványok elrejtését.

A tanúsítványok lejárnak. Egy lejárt tanúsítvány önmagában nem feltétlenül veszélyes, de figyelmeztető jel arra, hogy a megfelelő karbantartás esetleg hiányzik.

A digitális tanúsítványok megértése segít megérteni azt is, hogy miért fontos a VPN-protokoll megválasztása, a megfelelő konfiguráció és a szolgáltató megbízhatósága – a biztonság csak annyira erős, amennyire erős az azt összefogó lánc.