Fort Lox

Browser Fingerprinting: VPN’s en de Illusie van anonimiteit //

De laatste jaren worden we meer en meer gebombardeerd met advertenties rond VPN-providers, die anonimiteit en extra veiligheid beloven aan hun gebruikers. Dat een VPN-verbinding een meerwaarde heeft op het vlak van anonimiteit, staat buiten kijf. Enige nuance is wel op zijn plaats: Een VPN is niet de heilige graal waarmee je anonimiteit op het web kan garanderen. Eén van de mogelijke weggevers van identiteit is namelijk het gebruik van browser fingerprinting.


Om even heel algemeen en ietwat kort door de bocht de werking van een VPN-service te herhalen: Bij gebruik van een VPN, wordt je verkeer langs een server van de VPN-provider gerouteerd, en de data geëncapsuleerd door een beveiligde tunnel. Wanneer je met een server x verbindt, dan gaat je verkeer via de server y van de VPN-provider, en ziet server x dus enkel connecties van server y, en niet van je toestel. Er kan op server x dus geen nauwkeurige informatie gelogd worden over het échte bron-IP. Ook je ISP ziet noch welk soort verkeer er door de tunnel gaat, noch de eindbestemming.

Tracking Cookies


De meest voor de hand liggende weggevers van je identiteit, zijn (tracking) cookies. Een key-value pair wordt ingesteld in de lokale opslag van je browser, en opnieuw ingelezen bij het bezoek aan de website. Als je dus een website onbeveiligd bezoekt met een identificatiecookie met ID 1337, en je bezoekt deze nadien door een VPN-tunnel, kan de website afleiden dat dit mogelijk een bezoek door dezelfde browser is.

Je cookies wissen na het sluiten van de browser kan dit tegengaan. Makkelijker is het starten van een incognitosessie in de voorkeursbrowser, wanneer je door de VPN anoniem(er) wenst te blijven. De populairste browsers beginnen hier met een ‘clean slate’ aan lokale webopslag.

Uniekheid browser

Een andere mogelijkheid die websites hebben om je te identificeren, is het ophalen van een aantal variabelen en instellingen van je browser/systeem, veelal door het gebruik van Javascript. De combinatie van deze variabelen zorgt ervoor dat de poel van mogelijke identiteiten heel klein wordt. Zo kunnen bezoeken aan een website door VPN-tunnels gelinkt worden aan rechtstreekse bezoeken. Enkele variabelen die opgehaald kunnen worden in een browser waar Javascript uitgevoerd wordt:

  • Besturingssysteem
  • User agent (browser en versie)
  • Lijst geïnstalleerde fonts
  • Geïnstalleerde plug-ins
  • Schermresolutie
  • Renderingtechnologie
  • Geïnstalleerde audio/video-codecs

Om dit tegen te gaan, kan je gebruik maken van een dedicated browser(profiel), voor gebruik tijdens VPN-sessies. Hiermee beperk je het aantal bruikbare variabelen al enorm. Je kan ook javascript gaan blokkeren (al dan niet met hulp van extensies).
Test zelf even hoe uniek jouw browserfingerprint is op volgende website, en vergelijk met meer dan 3 miljoen andere gebruikers (let wel, bij gebruik wordt je fingerprint daar bewaard, voor testen uitgevoerd door andere gebruikers): https://amiunique.org


(door Kyentl Mortier)