Domain fronting ei ole VPN: kaksi nimeä, yksi pyyntö
Kaksi nimeä yhdessä HTTPS-pyynnössä ei ole tunneli. Fronting riippuu palveluntarjoajan reitityssäännöistä; VPN valitsee, mitkä paketit kulkevat. Piirrä ne erikseen.
Nämä kaksi tekniikkaa arkistoidaan yhteen, koska molemmat sisältävät välittäjän ja molemmat kuulostavat piiloutumiselta. Ne toimivat eri objekteilla. Domain fronting koskee sitä, mikä nimi näkyy missäkin yhden HTTPS-pyynnön kerroksessa. VPN koskee sitä, mitkä paketit kulkevat tiettyä polkua vertaiselle. Frontingin kutsuminen VPN:n lajiksi johtaa suunnitelmiin, jotka eivät voi toimia, ja arviointeihin, jotka esittävät väärän kysymyksen.
Kaksi nimeä, kaksi kerrosta
TLS-yhteys voi kantaa palvelimen nimeä kättelyssään. Kun yhteys on olemassa, HTTP-pyyntö yksilöi haluamansa auktoriteetin, tavallisesti Host-otsakkeessa. Nämä ovat kaksi kenttää, jotka kaksi eri ohjelmisto-osaa lukee kahtena eri hetkenä.
| Layer | What carries the name | Who reads it |
|---|---|---|
| TLS handshake | Server name indication | The TLS terminator in front of the service |
| HTTP request | Authority or Host header | The routing layer that picks a backend |
| Network path | Destination address and port | Routers, and the VPN peer if one is in use |
Domain fronting hyödyntää kahden ensimmäisen välistä eroa niin, että fronting-palvelu hyväksyy yhteyden ja reitittää pyynnön sitten muualle. Se toimii vain siellä, missä palvelu on halukas reitittämään sen, ja se on palveluntarjoajan käytäntökysymys eikä protokollatemppu.
Fronting riippuu palveluntarjoajasta, ei tekniikasta
Rajoitettuna esimerkkinä Front Door FAQ Azurelta dokumentoi domain fronting -suojauksia. Se kuvaa sallitun epäsuhdan saman tilauksen ja määritettyjen reittien verkkotunnuksille sekä 421 Misdirected Request -vastauksen, kun epäsuhdan suojaus estää pyynnön.
Tämä yksi dokumentoitu käytäntö kumoaa molemmat iskulauseet kerralla. Jokainen eri nimien pari ei toimi, eikä jokainen epäsuhta ole kielletty. Muilla palveluilla on omat tarkistuksensa, omat käyttöönottovaatimuksensa ja omat virhekoodinsa.
Se ei myöskään ole ohje toisen verkon rajoitusten kiertämiseen. Palveluntarjoajan reitityssääntöjen lukeminen sen ymmärtämiseksi, mitä se sallii, on arkkitehtuurityötä; näiden sääntöjen kohteleminen kiertotien reseptinä on toinen toiminta, jolla on toiset seuraukset. Pidä nämä kaksi toimintaa erillään kirjoittamassasi asiakirjassa. Jälkimmäinen on se, jonka vuoksi suunnitelma hylätään arvioinnissa.
Mitä VPN oikeastaan valitsee
Verkko-VPN:ssä reititys ja alustakäytäntö valitsevat sisäisen liikenteen tunnelille vertaiselle. Järjestelystä riippuen se voi kattaa useita sovelluksia tai määritellyn osajoukon, ja se voi kuljettaa protokollia, joilla ei ole lainkaan HTTP-pyyntöä.
Fronting ei tee mitään siitä. Yhden HTTPS-pyynnön järjestäminen fronting-palvelun kautta ei asenna yksityisverkon reittiä, ei kuljeta mielivaltaisia UDP-sovelluksia eikä saa jokaista laitteen ohjelmaa käyttämään palvelua. Jos tarvitset sen kattavuuden, tarvitset välityspalvelimen tai tunnelin, et nimitemppua.
Siksi nämä kaksi sekoitetaan arvioinnissa: molemmat kuvataan välittäjiksi, ja molemmat esiintyvät pääsyä koskevissa asiakirjoissa. Rajapinta, jonka kumpikin tarjoaa, on täysin erilainen, ja vain toinen niistä on verkkopolku.
Näkyvyys ei ole binääristä
Vertailu ei ole myöskään yksinkertaisesti piilotettu vastaan näkyvä. DNS-kyselyt, kohdeosoitteet, kättelyn ominaisuudet, pakettikoot ja ajoitus pysyvät kaikki havaittavina sille, joka on asemassa nähdäkseen ne, ja se, mitä tämä tarkkailija oppii, riippuu siitä, missä hän istuu.
Sovellustiedot ovat näkyvissä myös niissä päätepisteissä, jotka lopettavat ne. Fronting-palvelu, joka reitittää pyyntösi, on yksi näistä päätepisteistä, ja VPN-vertanen on toinen. Kumpikaan järjestely ei tee sisällöstä läpinäkymätöntä sille osapuolelle, jonka on luettava se palvellakseen sinua.
Piirrä kolme laatikkoa
Arkkitehtuuriarviointia varten piirrä TLS-päätepiste, HTTP-reitityspalvelu ja lopullinen sovellus kolmena erillisenä laatikkona ja piirrä sitten mikä tahansa VPN-vertanen taas jonnekin muualle. Paikka, joka valitsee verkkokohteen, ja paikka, joka kuljettaa yksityisverkon paketteja, eivät välttämättä ole sama järjestelmä, eivätkä yleensä ole.
Kun laatikot ovat erillään, kysymyksiin voi vastata: mitkä nimet tämä palveluntarjoaja hyväksyy, mitkä protokollat tarvitsevat kuljetusta ja mikä osapuoli voi nähdä mitä. Kaavio, joka sulauttaa ne, tuottaa suunnitelman, jota kukaan ei voi toteuttaa, ja arvioinnin, joka kiistelee sanastosta.