Mitä WebRTC-ehdokasluettelo paljastaa VPN:stäsi
Isäntä-, palvelinheijastus- tai rele-ehdokas kertoo, mistä osoite on peräisin. Vain valittu ICE-pari kertoo, mitä reittiä media todella kulki.
Kun WebRTC-testisivu tulostaa 172.20.4.15, se on saanut tietää, että kyseisessä verkossa on paikallinen liitäntä. Se on todellinen paljastus, eikä se ole sama havainto kuin «media poistui VPN:n ulostulosta». Ehdokkaiden löytäminen ja pakettien reititys ovat erillisiä mekanismeja, ja useimmat vuotoraportit sulauttavat ne yhdeksi tuomioksi. Kumpaa katsot, ratkaisee korjauksen.
Keräys tapahtuu ennen kuin mitään lähetetään
Selain luettelee paikalliset liitännät, lähettää sidontapyynnön STUN-palvelimelle ja pyytää TURN-palvelimelta varauksen, ja kirjoittaa sitten tulokset istunnon kuvaukseen ehdokasriveinä. Kaikki tämä valmistuu ilman puhelua, ilman mediaa ja ilman vastapuolta. Ehdokasluettelo on siis löytämisen, ei siirron, kirjanpito.
Nykyaikaiset selaimet voivat korvata isäntäehdokkaan kirjaimellisen osoitteen mDNS-nimellä .local, jolloin sivu ei voi lukea yksityistä IP:tä. Paikallinen verkko näkee edelleen ne multicast-kyselyt, jotka ratkaisevat nimen, joten osoite piilotetaan sovellukselta sen sijaan, että se poistettaisiin verkosta.
Myös järjestyksellä on väliä: uusi sivun lataus kerää uuden joukon, eri TURN-varauksella ja mahdollisesti eri heijastuskuvauksella. Kaksi erilaista ajoa ei välttämättä tarkoita kahta eri kokoonpanoa.
Kolme ehdokastyyppiä, kolmenlaisia todisteita
Jokainen rivi perustuu eri havaintoon. Jokainen tyyppi vastaa eri kysymykseen, ja taulukko erottaa ne sen mukaan, mitä ne voivat ja mitä eivät voi todistaa.
| Candidate | Derived from | What it establishes | What it cannot establish |
|---|---|---|---|
| Host | An interface on the device | A local address exists in that network | That the peer can reach it |
| Server-reflexive | A STUN binding response | How a NAT mapped this source | Which exit the media will use |
| Peer-reflexive | A connectivity check that arrived | An address seen by the far side | That it was ever advertised |
| Relay | A TURN allocation | The relay server accepted the session | That the relay carries the call |
Rele-ehdokas sekoitetaan rutiininomaisesti käyttäjän internet-osoitteeseen. Se kuuluu TURN-palvelimelle, ja sen läsnäolo osoittaa, että rele oli saatavilla, ei että selain valitsi sen. Sama sekaannus kulkee toiseen suuntaan isäntäehdokkaiden kohdalla, missä mDNS-nimi piilottaa osoitteen sivulta, kun verkko yhä kuljettaa kyselyitä. Lue tyyppi ennen kuin luet arvon.
Valittu pari vastaa reitityskysymykseen
ICE parittaa jokaisen paikallisen ehdokkaan jokaisen etäehdokkaan kanssa, ajaa yhteydentarkistukset jokaiselle parille ja nimeää voittajan. Se nimetty pari, joka näkyy selaimen omassa diagnostiikassa, kuljettaa median. Kaikki muu luettelossa on mahdollisuus, joka hävisi.
Voittaja kertoo reitin muodon. Releeltä releelle kulkee TURN-palvelimen kautta, isäntäpari jää paikallisverkkoon ja palvelinheijastuspari kulkee suoraan NAT:n läpi. Se on tosiasia, jonka VPN-tarkistus tarvitsee, ja se on eri tosiasia kuin osoiteluettelo. Kaksi puhelua, joilla on samat ehdokasluettelot, voivat käyttää eri pareja.
Valitsemattomat ehdokkaat kerättiin silti, ja keräys on verkkoliikennettä, joka lähtee koneesta. Puhelu, joka lopulta käytti relettä, ei tarkoita, ettei luetteloa rakennettaessa paljastettu mitään.
Asetukset vastaavat tavoitteita, eivät vuotopisteitä
WebRTC:n IP-käsittelyä koskeva määrittely kuvaa useita käytäntöjä: käytetään vain liitäntää, joka kuljettaa oletusreittiä; käytetään kaikkia liitäntöjä; ja poistetaan välityspalvelimeton UDP käytöstä, jolloin liikenteen on kuljettava releen tai välityspalvelimen kautta. Jokainen vaihtaa yhteyden ja viiveen erilaiseen altistumiseen. Minkä selain toteuttaa ja millä nimellä, vaihtelee alustan ja version mukaan.
Valitse käytäntö tavoitteen mukaan. Paikallisten osoitteiden piilottaminen sivulta on yksi tavoite; suoran vertaisverkkoliikenteen estäminen on toinen; jokaisen paketin pitäminen tunnelissa on kolmas. Ensimmäinen koskee lähinnä sitä, mitä sovellus oppii, toinen sitä, mikä reitti sallitaan, ja kolmas on pantava täytäntöön myös alustan tai VPN:n rajalla.
Minkä asetuksen valitsetkin, tarkista molemmat puolet: aja keräystesti ja kirjaa ehdokastyypit, ja tarkastele sitten valittua paria todellisen istunnon aikana. Puhdas osoiteluettelo ja suora mediareitti on yhä reitti, jota et tarkoittanut.