Archivi tag: Michal Zalewski

Un’estensione per la privacy online?

seleneQuesta mattina un cliente mi ha scritto una mail segnalandomi un interessante (e lodevole per qualità e completezza) articolo del Corriere, che spiegava quali tecniche si possono utilizzare per navigare “al sicuro” dalla profilazione da parte di Google (o in ogni caso da parte degli altri operatori della rete). Mi occupo, purtroppo, di privacy e sicurezza online da troppo tempo per credere che basti un’estensione di firefox per “navigare sicuri”.

Colgo allora l’occasione della risposta inviata per riportare un’analisi delle tecnologie riportate nell’articolo anche in queste pagine, perché nonostante l’articolo sia interessante e non fondamentalmente errato (anzi), penso che un po’ di precisazioni in materia possa essere d’aiuto per coloro che abbiano letto quell’articolo (soprattutto, che possa contribuire ad innalzarne il livello di paranoia :P).
Per coloro che invece fossero interessati ad approfondire anche tecnicamente l’argomento, consiglio vivamente il libro di Zalewski recensito su queste pagine qualche giorno fà, assolutamente abbordabile anche per coloro che non fossero proprio esperti in materia di informatica (Zalewski dimostra in questo libro una chiarezza davvero sorprendente per un tema così complesso).

Tanto per cominciare, è indubbio che sia è impensabile smettere di usare Google per evitare di essere da esso profilati. Non tanto perché è uno strumento completo e funzionante (esistono altri motori di ricerca, naturalmente, che fanno egregiamente il loro mestiere), quanto perché con una penetrazione in rete che sfiora l’80% (tra referrer e link su pagine che contengono script javascript che fanno capo a Google, su tutti AdSense e Analitycs), è ben difficile, tecnicamente parlando, aggirarne i tentacoli.

Cominciando poi dalle cose meno utili, breve accenno all’estensione scroogle: sposta banalmente il problema da Google ad un’altra entità (meno affidabile per altro, visto che non è così grosso ed importante da essere soggetto alle leggi di scala a cui invece si trova ad essere esposta l’azienda di Montain View), facendo filtrare tramite quest’ultima le richieste al Grande Motore. Se posso pensare di dare io la mia fiducia a Daniel Brandt (che “nel giro” gode certamente di una fama non indifferente, visto l’ottimo lavoro condotto da Google Watch) non si può certo pensare che per vincere la (sana) paranoia da tracciamento, spostare il target in questa direzione possa sortire qualche effetto.

Sicuramente più valida è l’opzione di usare in maniera correlata Tor e Privoxy, che insieme sono in grado di rendere effettivamente casuali la provenienza delle varie richieste nei confronti del web, rendendo inutili le tecniche di tracciamento fatte tramite cookie et simili. Una trattazione approfondita della tecnologia di Tor sarebbe fuori luogo in questo frangente, quindi lascerò l’approfondimento alla vostra discrezione: dirò solo che oltre all’esposizione ad un uso sbagliato di questa tecnologia (che ne vanifica l’utilità) gli utenti meno esperti, l’uso di Tor ha come suo punto debole i punti d’uscita della rete di “randomizzazione”, aspetto sul quale sono in corso alcune interessanti ricerche.

Analogamente, l’idea proposta da Track Me Not è indubbiamente interessante (e per altro incarna una delle strade che si stanno battendo proprio in questi mesi per combattere la profilazione): generare richieste “random” al motore di ricerca di turno per tentare di camuffare le richieste reali tra una certa quantità di “rumore” casuale è indubbiamente valida: il problema sta tutto nel riuscire a rendere credibili (e non distinguibili da quelle  reali) le richieste generate dall’estensione. Il fattore “caso” infatti è una delle cose più complicate da riprodurre tramite un computer, mentre viene spaventosamente bene ad un essere umano: quanto difficile sarebbe “filtrare” le richieste dell’estensione se venissero fatte a cadenza regolare, o con un generatore di numeri non sufficientemente casuale, o avessero un pattern di ricerca banale, riconoscibile, o semplicemente poco attinente con la tipologia media delle ricerche dell’utente? Analogamente, quanto difficile è riconoscere una persona mascherata a partire dalla voce, dal modo di muoversi, dai comportamenti? Questo è l’aspetto difficile del gioco, non certo la generazione di rumore…
La soluzione potrebbe essere nella generazionen di un pool remoto di pattern di ricerca (a cui ognuno dovrebbe contribuire inviando automaticamente le proprie) che possa essere poi replicato da tutti gli utenti che usino quella stessa estensione, introducendo un reale rappordo di casualità nella generazione dei pattern di ricerca. Rimarrebbe il problema della temporizzazione delle richieste “false”, ma sarebbe già un problema minore.

In questo modo cerca di agire, per quel che riguarda i cookies di tracciamento, da un’altra estesione interessante segnalata dall’articolo, Scookies (non per niente scritta dal buon Bakunin): questa estensione è effettivamente in grado di vanificare il tracciamento fatto a mezzo cookie, scambiando i cookie dei vari utenti in modo dinamico. Analogamente al caso di Tor/Privoxy però, questa tecnica è si in grado di rendere vano l’uso dei cookie di tracciamento, ma lascia aperte altre strade che rischiano di vanificare tutto il lavoro fatto (analogamente, in un certo senso, al rifiuto banale di usare i cookie, funzionalità già disponibile in moltissimi browser).

Con un po’ di attenzione e poca fatica infatti, si potrebbe differenziare comunque i vari utilizzatori indipendentemente dal cookie di tracciamento, facendo riferimento ad esempio a pattern ripetitivi di ricerche (difficile che il sottoscritto si trovi a fare ricerche su certi argomenti, molto più facile che cerchi qualcosa che riguardi l’informatica), alle temporizzazioni, al fetch dei dati dalle cache.
Quest’ultima tecnica è a mio avviso il vero problema chiave da risolvere nei prossimi anni per quel che riguarda la privacy online: ogni browser infatti è sperimentalmente identificabile a seconda dei dati che ha memorizzato tra i “files temporanei” (la cache appunto). Se un utente ha visitato una certa pagina in un certo momento, in cache verranno salvati certi files (con certi orari) e non altri. Se invece l’utente ha già visitato la pagina, il browser non richiederà tutti i files, ma solo alcuni (quelli che non ha in cache, o quelli che sono marcati come “non cachabili”); l’analisi di quali files sono richiesti, in quale ordine, con quali parametri (ad esempio la richiesta potrebbe arrivare per un file “solo se non è stato modificato dalle ore 23:53 del 24/08/2008”, rendendo facilmente identificabile addirittura l’ora di ultima visita di quello specifico utente), è in grado non solo di correlare le varie sessioni di uno stesso utente indipendentemente dal cookie di tracking, ma addirittura identificare la tipologia di browser che utilizza (ad esempio analizzando l’ordine con cui vengono richiesti i vari files che compongono una pagina web, che differisce da browser a browser, come Zalewski dimostra nel libro precedentemente citato).

Tutto questo senza considerare che è sperimentalmente dimostrato che si è oggi in grado di identificare un utente (perfino remotamente) dal modo con cui digita sulla tastiera (al punto che un’università americana ha messo a punto un sistema di login biometrico che si basa proprio su questo genere di analisi): velocità di battitura, errori più comuni, temporizzazioni.

Insomma, alla fine della fiera si torna sempre allo stesso concetto: quando si vuole difendere qualcosa, bisogna controllare tutto il fronte. Quando si attacca, basta trovare una falla, una dimenticanza…

Annunci

Michal Zalewski – Il rumore dell’hacking

Immagine di Il rumore dell'hacking
Il più grande errore che un informatico di professione possa commettere, è ritenere (ad un certo punto) di aver capito qualcosa della materia della quale si occupa; ci si fossilizza su alcune idee, si cominciano a trattare sempre le stesse tipologie di problemi e via dicendo, correndo verso quel baratro di noia che è la routine. E’ tanto più facile incorrere in questo errore, tanto più approfondite sono le competenze che si possono vantare e l’umiltà di continuare a cercare in giro, in mezzo alla montagna di argomenti “obsoleti” o “già noti” alla ricerca di qualcosa di nuovo ed interessante, a volte scoraggia, lo ammetto.

Poi capita che un amico ti segnali (e ti presti) un libro del cui autore non conosci neppure il nome (e in realtà scoprirai che è solo la maledetta abitudine acara di usare il nickname) e ti capita che questo libro di faccia accendere tante di quelle lampadine nella mente, a rischiarare il buio che il tempo ci ha portato, che puoi solo sperare di non dover pagare la bolletta all’Enel.

Michal Zalewski è uno dei mostri sacri del fingerprinting, un “white hat” estremamente giovane (è dell’81, in Polonia) eppure già oggetti di stima ed ammirazione. In questo libro, Zalewski mette banalmente a disposizione del lettore parte della sua conoscenza, conducendolo per mano nel mondo del fingerprinting passivo (ed attivo), tra cose stupefacenti ed incredibili eppure ogni volta giungendo a dimostrarne la fattibilità.

Un libro assolutamente consigliato a tutti coloro che si occupano di informatica, di sicurezza e di telecomunicazioni e che non lo annoverino già nella propria biblioteca.

Commento su Anobii.com:

In questo libro, il giovane polacco, mostro sacro del fingerprinting, Michal Zalewski mette banalmente a disposizione del lettore parte della sua conoscenza, conducendolo per mano nel mondo del fingerprinting, tra cose stupefacenti ed incredibili eppure ogni volta giungendo a dimostrarne la fattibilità.
Un libro assolutamente consigliato a tutti coloro che si occupano di informatica, di sicurezza e di telecomunicazioni e che non lo annoverino già nella propria biblioteca.