
Ach, wat lief. Politiek gaat zich weer eens bezig houden met Groze Boze Internet partijen. Vroeger Microsoft met IE, nu Google met privacy, morgen Apple met de Appstore.
Techniek en politiek; altijd goede combinatie. Zo las ik op webwereld:
Het verzamelen van wifi-routerdata blijft de gemoederen bezig houden. Maar veel mensen, inclusief Tweedekamerleden, huilen met de privacywolven mee, zonder op de hoogte te zijn van de ins en outs.
Mijn persoonlijke mening is dat het een ieder vrij staat informatie te verzamelen door te luisteren, op radio, TV en andere radio technieken zoals Wifi. Luisteren staat vrij, opslaan mag. Uitzenden niet op alle banden zonder vergunningen misbruik van de data niet. Vrij simpel grondbeginsel me dunkt.
Dus dat de Google streetview auto's WiFi signalen geografisch lokaliseren, het SSID ("naam") van een Wifi accesspoint en het MAC address (een adres te gebruiken op lokale netwerken) opslaan en gebruiken voor Geo Location Services zal me niet veel doen. Die strijd proberen te winnen van Google zal enkel leiden tot het verschuiven naar andere manieren om locatie gebonden diensten te kunnen aanbieden.
Maar goed, ik ben een leek. Ik ben maar een Business Techneut. En we hebben heerlijke jaren 80 mannen die onze privacy beschermen, het Centraal Bureau Persoonsgegevens. En die is van mening dat Google dergelijke data niet mag opslaan en verwerken, zoals in deze PDF te lezen is. Google's handellen zou in strijd zijn met Artikel 8 van Wet Bescherming Persoonsgegevens. Ik heb daar een andere mening over. Maar goed, ik ben een leek.
En dus komt de opt-out vs opt-in discussie; je bent ingeschreven tenzij je aangeeft uitgeschreven te willen worden versus je bent uitgeschreven tenzij je aangeeft mee te willen doen. Google is natuurlijk voor opt-out, mensen doen geen moeite om ergens niet aan mee te doen. Liever heeft Google helemaal niets, geen opt-out of in.
Google heeft aangegeven dat opt-out niet veilig is, immers je zou op een website dan andermans MAC address kunnen invullen en zo zou er op grote schaal misbruik kunnen zijn van dat sommige mensen massaal anderen zouden uitschrijven.
En ja, daar weten we wel een oplossing voor. In het PDF document voetnoot 16 van CBP heeft men het:
Bijvoorbeeld door middel van de volgende use case:
1. De betrokkene logt in op een webpagina van Google, waarop een MAC-adres kan worden ingevoerd. Het
IP adres en datum, tijd zouden automatisch door Google kunnen worden gelogd.
2. Als het MAC adres in de GLS zit, zou Google de betrokkene kunnen doorsturen naar een verificatiepagina
die scripting bevat waarmee de ARP tabel wordt opgevraagd. De WLAN MAC-adressen zijn theoretisch
gezien op te vragen middels ‘ARP –a’. Middels browsercode, bijv java, kan dit ARP lijstje worden
opgevraagd op de achtergrond.
3. Als het opgegeven MAC adres in het ARP lijstje staat, is vastgesteld dat de gebruiker, die verbonden is met
het WLAN, diegene is die toegang heeft tot het lokale WLAN MAC-adres, dat evenwel ook in de Google
GLS is opgenomen. Het verzoek om verwijdering van de betrokkene is daarmee geverifieerd. De verificatie
kan geautomatiseerd op de achtergrond plaatsvinden.
En dat geeft maar weer eens aan hoe dom men kan zijn. Dom op vier manieren:
- Beschikbaarheid: Java is een gesloten techniek die op een modern OS als Lion niet eens meer geïnstalleerd meer is
- Uitvoerbaarheid: Java applets kunnen geen MAC adressen lezen (*)
- Verschuiving denkfout: Dus Java applets kunnen MAC adressen lezen en dat is geen probleem?
- Grote Denkfout: client side informatie vertrouw je niet dus vertrouw je … client side informatie?
Ad 1) Java heeft geen plaats meer op de client. Die tijd is voorbij. Java applets komen nagenoeg niet meer voor online. Op de server zijde (zeker in de financiële sector :-) is Java als servlet nog steeds zeer populair. Het verschil is dat een servlet op de webserver / appserver draait, een een applet in de browser. Dat laatste is dus bijna niet meer normaal en een modern OS als Lion heeft standaard geen Java geinstaleerd. De techniek is dus niet meer breed toegankelijk en daarmee beperk je de toegankelijkheid van de dienst om je uit te schrijven.
Ad 2) Ik ben geen programmeur. Ik weet weinig van Java, daar staat het sterretje (*) ook voor. Maar ik weet redelijk zeker dat Java als applet in een sandbox geen toegang heeft tot het uitlezen van informatie als mac adressen. Laat me graag verrassen dat het wel kan, ik weet dat getNetworkInterfaces() bestaat en dat je daarmee het MAC adres van de interfaces kan verkrijgen, maar weet redelijk zeker dat dit niet in een applet gaat werken. En ik denk ook dat het slechts de interfaces van de machine uitgevraagd kan worden, niet het MAC adres van andere machines die op het zelfde lokale netwerk zitten. Ik denk dus dat het helemaal niet kan wat het CBP wil!
Ad 3). En dan. Stel dat het kan wat CBP wil. Is er dan niet een veel groter probleem? Dan hoef je namelijk helemaal niet de straten af te schuimen om MAC adressen te verzamelen maar zou je dat zo vanaf een browser kunnen doen. Als het CBP dus denkt de oplossing te hebben voor het MAC adres validatie probleem, waarom zien ze dan niet dat dit juist een gigantisch probleem zou zijn!?
Ad 4) En dan, de klapper. De Grote DenkFout. Men vertrouwt User Generated Content niet bij het manueel invoeren van een MAC adres. Terecht. Dus is de oplossing het uitvragen van CLIENT side informatie. Client, user. Zelfde pot. Even betrouwbaar. Als je "de gebruiker" niet kan vertrouwen om de juiste data in te vullen, dan maakt het niet uit of de gebruiker een client is of een klant; een persoon of een machine van die persoon.
Want, het veranderen of toevoegen van een MAC adres in mijn ARP tabel is een paar seconde werk. En kan bijvoorbeeld door een MAC adres te spoofen op mijn netwerk:
sudo ifconfig en0 lladdr 00:00:00:00:00:00
en ik kan nu 00:00:00:00:00:00 uitschrijven. Want, die staat toch immers in mijn systeem en dus betrouwbaar...
Ach, politiek en techniek. Blijft een leuke combinatie.