Szervernév jelzés

Az oldal jelenlegi verzióját még nem ellenőrizték tapasztalt közreműködők, és jelentősen eltérhet a 2020. október 5-én felülvizsgált verziótól ; az ellenőrzésekhez 10 szerkesztés szükséges .

A kiszolgálónév-jelzés ( SNI ) a TLS [1] számítógépes protokoll kiterjesztése, amely lehetővé teszi az ügyfelek számára , hogy jelezzék annak a gazdagépnek a nevét , amelyhez csatlakozni kívánnak a kézfogási folyamat során. Ez lehetővé teszi a szerver számára, hogy több tanúsítványt biztosítson ugyanazon az IP-címen és TCP-porton, és ezáltal több biztonságos ( HTTS- ) webhely (vagy egyéb TLS-en keresztüli szolgáltatás ) működjön ugyanazon az IP-címen anélkül, hogy ugyanazt a tanúsítványt egyáltalán használná. . Ez megegyezik a HTTP/1.1 névalapú megosztott tárhely szolgáltatásával. A kért gazdagépnév nincs titkosítva [2] , így a támadó elkaphatja azt.

Az SNI gyakorlati használatához a felhasználók túlnyomó többségének olyan böngészőket kell használnia , amelyek támogatják ezt a funkciót. Azok a felhasználók, akiknek a böngészője nem támogatja az SNI-t, alapértelmezett tanúsítványt kap (megvalósítástól függő, általában a listában az elsőt), és ebből eredően tanúsítványhibát, ha a szerver nincs felszerelve helyettesítő karakter tanúsítvánnyal , és nem tartalmazza az ügyfél által kért webhelynevet. .

2018 ősze óta kísérletek folynak az Encrypted SNI [3] TLS 1.3 protokollból való megvalósítására, amely a DNS névrendszerből nyert webhely nyilvános kulcsával titkosítja a kért oldal nevét [4] [5 ] [6] [7] .

A probléma háttere

A TLS kapcsolat létrehozása során a kliens digitális tanúsítványt kér a webszervertől; miután a szerver elküldte a tanúsítványt, a kliens ellenőrzi annak érvényességét, és összehasonlítja azt a nevet, amellyel a szerverhez próbált csatlakozni a tanúsítványban szereplő nevekkel. Ha az összehasonlítás sikeres, a kapcsolat titkosított módban jön létre. Ha nem található egyezés, a felhasználó figyelmeztetést kaphat az eltérésre, és a kapcsolat megszakad, mivel az eltérés egy ember a középső támadásra tett kísérletet jelezhet . Egyes alkalmazások azonban lehetővé teszik a felhasználó számára, hogy figyelmen kívül hagyja a figyelmeztetést a kapcsolat folytatására, így a felhasználóra bízza a tanúsítványt, és így csatlakozik a webhelyhez.

Mindazonáltal nehéz lehet – vagy akár lehetetlen az összes név előre elkészített teljes listája hiánya miatt – egyetlen tanúsítvány beszerzése, amely lefedi az összes nevet, amelyért a szerver felelős lesz. A több gazdagépnévért felelős kiszolgálónak valószínűleg minden gazdagépnévhez (vagy gazdagépnevek egy kis csoportjához) különböző tanúsítványokat kell bemutatnia. A CAcert 2005 óta kísérletezik a TLS virtuális szervereken való használatának különféle módszereivel [8] . A legtöbb kísérlet nem kielégítő és nem praktikus. Például a subjectAltName használható több, ugyanazon személy által vezérelt tartomány [9] egyetlen tanúsítványban való tárolására. Ezeket az „egységes tanúsítványokat” minden alkalommal újra ki kell adni, amikor a tartományok listája módosul.

A névalapú megosztott tárhely lehetővé teszi több gazdagépnév tárolását ugyanazon a szerveren (általában webszerveren) ugyanazon az IP-címen. Ennek eléréséhez a szerver az ügyfél által a protokoll részeként megadott gazdagépnevet használja (HTTP esetén a név a Host fejlécben van megadva ). HTTPS használatakor azonban a TLS-kézfogás még azelőtt megtörténik, hogy a szerver HTTP-fejléceket látna. Ezért a szerver nem tudja felhasználni a HTTP gazdagép fejlécében található információkat annak eldöntésére, hogy melyik tanúsítványt képviselje, és így csak az azonos tanúsítványba írt nevek szolgálhatnak ki ugyanazon az IP-címen.

Ez a gyakorlatban azt jelenti, hogy egy HTTPS-szerver IP-címenként csak egy tartományt (vagy tartományok egy kis csoportját) tud kiszolgálni a biztonságos és hatékony böngészés érdekében. Az egyes webhelyekhez külön IP-cím hozzárendelése növeli a tárhely költségeit, mivel az IP-címek kérését egy regionális internetes regisztrátorral kell megindokolni , és az IPv4-címek már kimerültek . Ennek eredményeként sok webhely nem tudja használni a biztonságos protokollt az IPv4 használatakor. Az IPv6 - címtér nem merült ki, így az IPv6-on keresztül kiszolgált webhelyeket nem érinti ez a probléma.

ESNI blokkolás

2020 augusztusa óta az ESNI és a TLSv1.3 forgalma blokkolva van Kínában [10] .

2020 októberétől és korábban Oroszországban is megkezdték a szolgáltatók az ESNI forgalom blokkolását, ami végső soron elérhetetlenné teszi a rendszeres és nem tiltott webhelyeket a felhasználók számára, tekintettel arra, hogy nincsenek hatályos törvények a technológia blokkolására [11] . Az ESNI-t először blokkoló szolgáltatók a Rostelecom, majd leányvállalata, az OOO T2 RTK Holding (Tele2 Russia védjegy) voltak.

Jegyzetek

  1. "Szervernév jelzés 889" . RFC  3546
  2. TLS szervernév jelzés . Pál naplója . Letöltve: 2015. november 13. Az eredetiből archiválva : 2016. augusztus 12..
  3. draft-ietf-tls-esni-07 – Titkosított kiszolgálónév jelzés a TLS 1.3-hoz
  4. Ghedini, Alessandro . Titkosítsd vagy veszítsd el: hogyan működik a titkosított SNI  , Cloudflare blog (  2018. szeptember 24.). Az eredetiből archiválva : 2018. szeptember 24. Letöltve: 2019. január 19. ( [1] Archivált 2019. január 19-én a Wayback Machine -nél )
  5. A titkosított SNI megérkezik a Firefox Nightly  -hoz , Mozilla blog (  2018. október 18.). Archiválva : 2020. március 24. Letöltve: 2019. január 19. ( [2] Archivált 2019. január 20-án a Wayback Machine -nél )
  6. ESNI: Adatvédelmi frissítés HTTPS-re . EFF Deep Links Blog . Letöltve: 2019. január 19. Az eredetiből archiválva : 2019. május 18.
  7. Ne essen pánikba a domain fronting miatt, egy SNI-javítást feltörnek , The Register  (2018. július 17.). Archiválva az eredetiből 2018. augusztus 26-án. Letöltve: 2018. október 10.
  8. VhostTaskForce - CAcert Wiki . wiki.cacert.org. Letöltve: 2019. január 19. Az eredetiből archiválva : 2018. december 31.
  9. Mi az a többdomaines SSL-tanúsítvány (UCC)? | SSL-tanúsítványok – GoDaddy Help IN . www.godaddy.com. Hozzáférés dátuma: 2019. január 19. Az eredetiből archiválva : 2019. január 19.
  10. Catalin Cimpanu. Kína most blokkol minden olyan titkosított HTTPS-forgalmat, amely TLS 1.3 -at és ESNI-t  használ . ZDNet . Letöltve: 2020. október 29. Az eredetiből archiválva : 2020. augusztus 9..
  11. Miért blokkolja a Rostelecom az ESNI forgalmat? . Habr Q&A – kérdések és válaszok . Letöltve: 2020. október 29. Az eredetiből archiválva : 2021. január 29.