Butikken lastar fint heime og viser ein mur av «uvanleg trafikk» i det augneblinken tunnelen er oppe. Eit forum nektar å logge deg inn, og ei strøymeside insisterer på at du er i eit land du aldri har vitja. Ingenting av dette krev spyware. Ein nettstad ser adressa pakkane dine kjem frå, og med VPN høyrer den adressa til eit datasenter i staden for ei heimelinje. Det meste av det som vert kalla VPN-deteksjon byrjar og sluttar med den eine kjensgjerninga, og resten er slutningar med ein føreseieleg feilrate.

Blokkeringa byrjar med kvar pakkane dine ser ut til å kome frå

Kvar førespurnad ber ei kjeldeadresse, og serveren som tek imot ho kan slå ho opp i offentlege data: kva nettverk som annonserer ho, om nettverket er ein hostingleverandør, om det har stått på misbrukslister, og kva land registeret tildeler. Ingenting av dette identifiserer deg, og alt saman er nok til å plassere deg i ein bås.

Sjå på din eigen trafikk slik ein framand ville gjort. To kommandoar dekkjer det meste av overflata, og den andre er den folk gløymer:

curl -sS https://ipinfo.io/json
dig +short TXT o-o.myaddr.l.google.com @ns1.google.com

Den første returnerer utgangsadressa, organisasjonen og landet. Den andre returnerer adressa til resolvaren som nådde navnetenaren til Google; ho høyrer ofte til eit anna nettverk enn utgangen din, og det er adressa ein nettstad ser om han loggar data på resolver-sida. Når desse to høyrer til ulike land, reknar nokre nettstader avviket som mistenkjeleg, sjølv om det ikkje er noko gale med oppsettet ditt.

Når avvisinga først byrjar etter at tunnelen er oppe, mistenkjer du utgangsadressa før noko anna. Bytt server og prøv igjen før du rører nettlesaren. Ei blokkering som følgjer deg gjennom tre utganger frå same leverandør handlar om områda til leverandøren; ei blokkering som forsvinn på ein annan server handlar om den eine adressa.

Tidssone, språk og klokke stemmer ikkje med adressa

Sidekoden kan lese tidssona di, språkpreferansane dine og skjerminnstillingane utan noka løyvetoppfordring. Ein nettlesar som rapporterer sentraleuropeisk tid medan sambandet kjem frå eit datasenter i Singapore, er eit sterkare signal enn adressa åleine, og det er nettopp den typen avvik svindelscoring er bygd for å leggje merke til.

Intl.DateTimeFormat().resolvedOptions().timeZone
navigator.language
Intl.DateTimeFormat().resolvedOptions().locale

Dei tre linjene i utviklarkonsollen fortel kva nettlesaren din gir frivillig. Ein VPN-klient kan endre ruta di og ingenting anna, så profilen du ber med deg blir verande innanlandsk medan utgangen din ikkje er det. Konsistens er det som tel her: ein berbar datamaskin sett til same region som utgangen ser vanleg ut, og ein som er usamd med seg sjølv gjer det ikkje.

Det er også derfor feilen er periodisk. Mange nettstader bryr seg ikkje, nokre få scorar det, og eitt medlemsside bestemmer at du er ein svindlar. Klienten fungerer rett i alle tre tilfella, og derfor er det vanlege støttesvaret, «det må vere nettlesaren din», både irriterande og delvis sant.

Kva sidekoden faktisk veit om maskina di

JavaScript har ingen API som listar opp nettverksgrensesnitt. Ei side kan ikkje spørje kva adresser den berbare datamaskina di har, så den gamle påstanden om at eit skript les LAN-adressa di, er mest eit minne frå programtilleggsæraen, då ActiveX-kontrollar, Java-applets og annan opphavleg kode kunne gjere nettopp det.

SignalWhat it revealsStatus today
Source address of the requestExit network, country, hosting statusAlways visible; the main signal
Time zone and languageWhere the profile claims to beReadable without permission
WebRTC candidatesLocal addresses, historicallyHost candidates are mDNS-obfuscated by default
Interface listAll local addressesNot available to ordinary JavaScript

WebRTC er det ærlege unntaket frå «ingen lokale adresselekkasjar». Kandidatinnsamlinga eksponerte ein gong lokale adresser til kvar side som spurde, og rettinga var å erstatte vertskandidatar med tilfeldige mDNS-namn. Den standarden gjeld i dagens nettlesarar, men det er ei nettlesaravgjerd og ikkje ei protokollgaranti, så ein utdatert versjon eller ein herda konfigurasjon som aktiverer lokale kandidatar på nytt, kan framleis lekke. Å oppdatere nettlesaren hjelper deg meir her enn noka utviding.

Leverandøren din ser namna, ikkje innhaldet

HTTPS verner innhaldet på ei side ende til ende, og tunneloperatøren som sender desse byta vidare, kan ikkje lese dei. Operatøren kan framleis sjå kva adresse du kontakta, og i dei fleste distribusjonar servernamnet i handtrykket, fordi namnet må vere lesbart for at sambandet skal ruttast til rett nettstad. Encrypted Client Hello finst nettopp for å skjule det feltet, og det hjelper berre når både klienten og nettstaden støttar det.

Namneoppslag er den andre halvdelen. Om leverandøren din også leverer resolvaren, ser han kvart namn du slår opp før noko samband finst. Om eininga di brukar ein offentleg resolvar over HTTPS, ser leverandøren eit samband til den resolvaren og ingenting anna, medan resolvaren sjølv ser lista.

Ein ukryptert HTTP-førespurnad er lesbar for operatøren av same grunn som han er lesbar for hotellnettet: ingenting i han er kryptert. Ein tunnel har aldri påstått noko anna, og han reparerer ikkje valet til applikasjonen.

Skil «dette er ein VPN» frå «dette er meg»

Deteksjon er billeg, sannsynsbasert og ofte feil. Delte utgangsadresser vert flagga fordi nokon andre misbrukte dei, verksemdsområde vert klassifiserte som hosting, og mobiloperatørar produserer geografiske resultat som overraskar alle. Identifikasjon er eit anna problem: det krev ei varig kopling som ein konto du har logga på, ein informasjonskapsel, ein betalingsdetalj eller to observatørar som samanliknar notat.

Bestem deg for kva av dei du faktisk kjempar mot. Om målet er å lese ei side, gjer HTTPS allereie den jobben, og tunnelen endrar lite. Om målet er å hindre nettstaden i å vite kva by du er i, er utgangen og resolvaren det som tel. Om målet er å bryte koplinga til den verkelege identiteten din, er kontoen det svake punktet, og det å bytte serverar gjer ingenting med pålogginga du nettopp brukte.

Ein ny utgang loggar deg ikkje ut av noko, og han kan ikkje slette det ein nettstad allereie har lagra om kontoen du brukte. Den praktiske rekkjefølgja er derfor uglamorøs: vel ein utgang der nettverket ser vanleg ut, hald nettlesarprofilen konsistent med han, oppdater nettlesaren slik at lekkasjeutsette funksjonar brukar sine moderne standardverdiar, og aksepter at eit lite tal nettstader framleis vil gjette feil om deg.

Relaterte artiklar