Anonimato in Internet Antonio Lioy < lioy @ polito.it > Politecnico di Torino Dip. Automatica e Informatica Anonimato in Internet non essere identificabile entro un certo insieme... non si può essere anonimi da soli! forward anonymity impossibile conoscere il server contattato da un utente noto reverse anonimity impossibile conoscere gli utenti che contattano un server noto 1
Tecniche di anonimato end-to-end encryption non applicabile a servizi pubblici anonymizing proxy single point of failure fiducia nel gestore VPN sulla porzione di rete monitorata o non fidata darknet traffico non osservabile, con varie tecniche es. TOR, I2P, Freenet TOR (The Onion Routing) progetto "onion routing" della US Navy CHACS (Center for High Assurance Computer Systems) NRL (U.S. Naval Research Laboratory) codice rilasciato open-source "adottato" dalla EFF oggi usato da molti tipi di utenti giornalisti (es. proteggere le fonti) governi (es. open-source intelligence) attivisti (es. protezione da censura) militari (es. comunicazioni su reti pubbliche) 2
TOR elementi base usa una overlay network per nascondere mittente e destinatario, tramite una serie di nodi intermedi detti Onion Router (OR) ogni OR è collegato agli altri OR tramite TLS gli utenti usano Onion Proxy (OP) per collegarsi agli OR gli OP creano circuiti virtuali (VOP, Virtual Onion Path) che attraversano un numero di OR scelto dall'utente (compromesso tra latenza e anonimato) segmenti cifrati con AES e chiavi effimere DH VOP cambiati periodicamente (tipicamente ogni 600 s) anche tra gli stessi OP e server K2 TOR circuito virtuale K4 K7 OR #1 OR #3 OR #4 OR #6 client TOR OR #2 K2 K4 OR #5 OR #7 rete TOR K7 directory server public server { OR #x, PUBx } 3
TOR onion routing cifrato in chiaro OR #2 OR #7 OR #4 public server client TOR Hidden service per evitare DDoS ed anche attacchi fisici...... si nasconde l'identità logica e fisica dei server gli utenti non sanno dove sia il sito né chi lo gestisce il gestore non sa chi sono gli utenti del suo sito implementato in TOR con Introduction Point (IP) Rendez-vous Point (RP) 4
Hidden service: implementazione 1. Bob gestisce un servizio nascosto 2. Bob sceglie una serie di IP e crea VOP dal suo server verso di essi 3. Bob rende noti ad Alice (o a tutti) gli IP 4. Alice sceglie un RP e crea un VOP verso di esso 5. Alice si collega ad un IP e comunica RP a Bob 6. se Bob accetta di comunicare con Alice, crea VOP verso RP 7. RP connette i due canali di Alice e Bob The TOR browser (I) anche noto come TBB (Tor Browser Bundle) Mozilla Firefox ESR, modificato con TorButton, TorLauncher e due estensioni standard "noscript" extension "HTTPS everywhere" extension senza queste estensioni il browser è vulnerabile a vari attacchi basati su script es. usato da FBI vs. Eric Eoin Marques (pedopornografia) facendo mandare MAC, IP, hostname,... 5
"noscript" extension The TOR browser (II) esegue "active content" (JS, Java, Flash, Silverlight, ) solo da siti in whitelist protegge da altri attacchi al browser (es. XSS, CSRF, clickjacking, MITM, DNS rebinding) altri vari benefici "HTTPS everywhere" extension cambia le URL "http" in "https" se il servizio è disponibile tramite SSL https://www.eff.org/https-everywhere/atlas/ controlla le CA compromesse Freenet rete P2P progettata per garantire libertà di parola (contro la censura in Internet) utenti usano pseudonimi dati sono replicati su tanti nodi due modi (possibile uso simultaneo): opennet (collegamenti con qualunque nodo) darknet (collegamenti cifrati solo tra nodi fidati) documenti firmati dall'autore, divisi in chunk, memorizzati cifrati su vari nodi (l'operatore di un nodo non sa quali dati ospita) impossibile cancellare dati (si usano versioni) ma se non richiesti sono "dimenticati" se serve spazio 6