Ovo je stara izmjena dokumenta!
Kada se je internet nastajao nije se previše razmišljalo o sigurnosti i anonimnosti. Sigurnost možemo postići pomoću kriptografije što će zaštititi podatke koji se šalju preko interneta. Čak ako napadač ne može pročitati naše podatke, korisnik interneta ostavlja tragove u obliku zahtjeva za vezom, vremenskih oznaka te imena stranica ili usluga koje je korisnik koristio. Tor mreža želi povećati anonimnost korisnika tako da skriva imena usluga ili stranica koje korisnik koristi. Dodatno, Tor odskakuje (bounces) promet po mreži kako bi onemogućio praćenje prometa od polazišta do odredišta te kako bi onemogućio identifikaciju posrednika koji sudjeluju u prenošenju prometa internetom.
Keywords: anonimity, tor network, onion routing, security
Naziv “Tor” može se odnositi na više od jednog pojma:
Tor mreža je raspodijeljeni sustav kojeg čine čvorovi. Kada korisnik koristi Tor pretraživač za pretraživanje, promet tog korisnika uđe u mrežu na ulazni čvor, skače (bounces) po čvorovima Tor mreže te konačno izlazi iz mreže sa izlaznog čvora. Na ovaj način promet korisnika ostaje anoniman obzirom da nije moguće pratiti kojoj stranici korisnik pristupa (zbog enkripcije) niti preko kojih čvorova (niti jedna točka ne zna IP adresu pošiljatelja i primatelja u isto vrijeme).
Unatoč tomu može se dogoditi da Tor ostavi tragove. U ovom seminaru prikazat ću neke od tih tragova
Kada je internet bio dizajniran nije se pretjerano razmišljalo o anonimnosti i sigurnosti. Brojni protokoli (HTTP, Telnet, SMTP, IP) nisu sigurni protokoli. Podatci koji se šalju između dva računala na taj način nisu šifrirani. Napadač može čitati i mijenjati takve podatke. Riješenje ovog problema bilo je uvođenje sigurnih protokola (HTTPS, IPsec) koji će koristiti kriptografiju za zaštitu prometa između korisnika. Dodatno kriptografija će omogućiti provjeru autentičnosti poruke.
Ipak, sigurni protokoli nas ne mogu zaštititi od prisluškivanja. Napadač ne može znati sadržaj naše poruke, ali može znati tko je započeo konekciju i na koju stranicu. Dodatno putanja kojom su dva računala komunicirala je poznata. Onion routing rješava ovaj problem anonimizirajući put paketa kroz mrežu
Onion routing (za razliku od običnih sigurnosnih protokola) koristi višestruko enkriptiranje podataka. Kao što je prethodno spomenuto, promet u Tor mreži putuje kroz čvorove. Svaki čvor će dekriptirati svojim ključem promet jednom odnosno skinut će jedan sloj enkripcije. Dekriptirani promet će doći do odredišta. Ime ovog protokola je došlo od analogije od luka koji ima slojeve (layers) koji se 'gule' (peel) svakim skokom.
Kada promet u mreži putuje od izvorišta do odredišta, ne mora proći svaki čvor u Tor mreži. Dovoljno je da prođe 3 čvora. Odabir putanje kojom će korisnikov promet prolaziti se radi na idući način:
Čvorovi imenici su čvorovi koji kod sebe imaju popise čvorova u Tor mreži. Ovih čvorova trenutno ima 9 u Tor mreži. Njihova IP adresa je javno poznata. Sam korisnik ne mora namiještati te adrese obzirom da su već zapisane u Tor browseru kojeg korisnik koristi. Čvorovi imenici su na različitim fizičkim lokacijama.
Iduća slika demonstrira slanje poruke kroz tri čvora. Izvorište će prvo enkriptirati poruku ključem kojeg je dogovorio s trećim čvorom. Rezultat se enkriptira ključem kojeg je dogovorio s drugim čvorom. Rezultat toga se enkriptira ključem kojeg je dogovorio s prvim čvorom. Na ovoj slici to dogovara redosljedu ključeva C,B,A. Svaki čvor će skinuti svojim ključem jedan 'sloj' enkripcije
U Onion routingu anonimnost se postiže time što čvorovi znaju samo svoje neposredne prethodnike i sljedbenike. Ako neki čvor bude napadnut, nije moguće saznati čitavu putanju obzirom da ju ni taj sam čvor ne zna. Sve što napadač zna je adresa čvora kojeg prisluškuje i poruka koja je više puta enkriptirana i koja nema smisla. Dodatno, jedan čvor može sudjelovati u više lanaca gdje bi imao drukčije prethodnike i drukčije sljedbenike. Na ovaj način napadač koji vidi puno prometa ne može sa sigurnošću zaključiti da se radi o prometu jednog lanca
Jedna od stvari koja nije ranjivost Tor mreže jesu stranice koje korisnik posjećuje. Ako netko koristi Tor da bi se prijavio na Netflix, očito je da će Netflix znati povezati promet koji mu je pristupio sa podatcima za prijavu.
Izlazni čvor (zadnji u lancu) mora poslati podatke na odredište. To odredište nije unutar Tor mreže. Ako je zahtjev prema tom odredištu nesiguran, napadač će moći pročitati podatke. Premda ovo neće nužno otkriti lokaciju izvora podataka, može se dogoditi da se otkriju neki drugi podatci koji će pomoći identificirati napadača. Iduće 4 slike pokazuju što sve napadači mogu saznati u ovisnosti kakve zaštite korisnik ima (nikakvu, HTTPS, Tor, HTTPS i Tor):
U ovoj vrsti napada, napadači pregledavaju vremenske oznake prometa i postojanje poveznica između nekih računala. Promatrajući vremenske oznake i takav promet, napadač bi mogao uočiti uzorak i zaključiti nešto o protoku prometa. Ovime se smanjuje anonimnost puta i otvaraju se mogući napadi na deanonimizirane čvorove. Pokazano je da dodavanje šuma vremenskim oznakama neće spriječiti ovakve napade.
Napadač može uzeti i aktivniju ulogu kada radi napad analizom vremenskih oznaka prometa. U takvoj vrsti napada, napadač mijenja vremensku oznaku prema specifičnom uzorku (uzorak koji je napadaču poznat) i propušta promet dalje. Nakon toga će tražiti promet sa vremenskim oznakama koje odgovaraju specifičnom uzorku. Ovime je mreža deanonimizirana jer napadač može povezati krajnje točke mreže.
Ukoliko je netko vlasnik prvog čvora nekog lanca (ulazni čvor) i zadnjeg čvora lanca (izlazni čvor) može vidjeti IP adresu pošiljatelja i IP adresu primatelja (prisluškivati ulaz i izlaz mreže).
Najbolja obrana protiv ovakvog napada je distribuiranost mreže. Što je više čvorova u mreži čiji su vlasnici različiti, manja je vjerojatnost da je netko vlasnik ulaznog i izlaznog čvora
U ovom napadu, napadač kontrolira “čvor imenik”. Kada bi netko poslao zahtjev u “čvor imenik” on bi odgovorio pošiljatelju, ali bi dodatno poslao kroz mrežu signal. Signal će biti poslan u paketu. Tijelo paketa sadrži odgovor (lokaciju) usluge koju je zatražio korisnik mreže. Ono što je posebno je da će signal biti kodiran u zaglavlju koje je označeno sa “relay-early” ili “relay”. Nakon ovoga drugi čvorovi koje napadač kontrolira mogu pogledati postoji li zapisani signal u zaglavlju paketa. Ako postoji, mogu saznati koje usluge je osoba zahtjevala.
Napadi na Tor mrežu su mogući i moguće je izvući podatke o korisnicima Tor mreže i uslugama koje su tražili. Većina ovih napada sastoji se od komprimitiranih čvorova mreže, kontroliranja ulaznih i izlaznih čvorova od iste strane, komprimitiranih čvorova imenika i korištenja usluga koje nisu sigurne ili izlažu se protokolima koji nisu enkriptirani.
Premda ovi napadi postoje, sigurnost na Toru je veća nego na običnom internetu ili samim VPN-ovima. Poboljšanje sigurnosti može se dobiti uključivanjem više čvorova u mrežu kako bi postala više distribuirana, mijenjanjem lokcija usluga na Tor mreži koje su bile otkrivene u napadima i izbjegavanjem korištenja usluga koje izlažu nesigurne protokole