Kaj seznam kandidatov WebRTC razkrije o vašem VPN
Kandidat gostitelja, strežniško odsevni ali relay kandidat pove, od kod prihaja naslov. Samo izbrani par ICE pove, katero pot so mediji dejansko uporabili.
Ko testna stran WebRTC natisne 172.20.4.15, je izvedela, da v tem omrežju obstaja lokalni vmesnik. To je resnično razkritje in ni enaka ugotovitev kot «mediji so odšli skozi izhod VPN». Odkrivanje kandidatov in usmerjanje paketov sta ločena mehanizma, in večina poročil o uhajanju ju združi v eno sodbo. Katero od obeh gledate, odloča o popravku.
Zbiranje poteka, preden je karkoli poslano
Brskalnik našteje lokalne vmesnike, pošlje zahtevo za vezavo strežniku STUN in zaprosi strežnik TURN za dodelitev, nato rezultate zapiše v opis seje kot vrstice kandidatov. Vse to se zaključi brez klica, brez medijev in brez sogovornika. Seznam kandidatov je torej zapis odkrivanja, ne prenosa.
Sodobni brskalniki lahko dobesedni naslov kandidata gostitelja nadomestijo z imenom mDNS .local, tako da stran ne more prebrati zasebnega IP. Lokalno omrežje še vedno vidi multicastna povpraševanja, ki to ime razrešijo, torej je naslov skrit aplikaciji, ne odstranjen iz omrežja.
Tudi vrstni red je pomemben: novo nalaganje strani zbere novo množico, z drugo dodelitvijo TURN in morda drugačnim odsevnim preslikavanjem. Dva različna zagona nista nujno dve različni konfiguraciji.
Tri vrste kandidatov, tri vrste dokazov
Vsaka vrstica izhaja iz drugega opažanja. Vsaka vrsta odgovarja na drugo vprašanje, tabela pa jih ločuje po tem, kaj lahko in česa ne morejo ugotoviti.
| 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 |
Kandidat relay se pogosto zamenjuje z internetnim naslovom uporabnika. Pripada strežniku TURN, in njegova prisotnost kaže, da je bil relay na voljo, ne da ga je brskalnik izbral. Ista zmeda gre v nasprotno smer pri kandidatih gostitelja, kjer ime mDNS skrije naslov pred stranjo, medtem ko omrežje še vedno prenaša povpraševanja. Preberite vrsto, preden preberete vrednost.
Izbrani par odgovarja na vprašanje usmerjanja
ICE združi vsakega lokalnega kandidata z vsakim oddaljenim, izvede preverjanja povezljivosti na vsakem paru in imenuje zmagovalca. Ta imenovani par, viden v diagnostiki samega brskalnika, prenaša medije. Vse ostalo na seznamu je možnost, ki je izgubila.
Zmagovalec vam pove obliko poti. Relay do relay gre skozi strežnik TURN, par gostiteljev ostane v lokalnem omrežju, strežniško odsevni par pa gre neposredno skozi NAT. To je dejstvo, ki ga kontrola VPN potrebuje, in je drugačno dejstvo od seznama naslovov. Dva klica z enakimi seznami kandidatov lahko uporabita različna para.
Neizbrani kandidati so bili vseeno zbrani, zbiranje pa je omrežni promet, ki zapusti napravo. Klic, ki je na koncu uporabil relay, ne pomeni, da med gradnjo seznama ni bilo nič razkrito.
Kontrole ustrezajo ciljem, ne oceni uhajanja
Specifikacija WebRTC za ravnanje z IP opisuje več pravil: uporabljati samo vmesnik, ki nosi privzeto pot, uporabljati vse vmesnike in onemogočiti UDP brez posrednika, da mora promet iti skozi relay ali posrednika. Vsako zamenja povezljivost in zakasnitev za drugačno vrsto izpostavljenosti. Katero brskalnik izvaja in pod katerim imenom, se razlikuje glede na platformo in različico.
Pravilo izberite glede na cilj. Skrivanje lokalnih naslovov pred stranjo je en cilj; preprečevanje neposrednega prometa med enakovrednimi vozlišči je drugi; zadrževanje vsakega paketa v tunelu je tretji. Prvi se ukvarja predvsem s tem, kaj izve aplikacija, drugi s tem, katera pot je dovoljena, tretjega pa je treba uveljaviti tudi na meji platforme ali VPN.
Ne glede na izbrano kontrolo preverite obe polovici: zaženite test zbiranja in zabeležite vrste kandidatov, nato med resnično sejo pregledajte izbrani par. Čist seznam naslovov z neposredno medijsko potjo je še vedno pot, ki si je niste zamislili.