Tor (verkko)

Historia

Tor-verkon perusperiaatteen, sipulireitityksen, kehittivät Yhdysvaltain laivaston tutkimuslaitoksen työntekijät matemaatikko Paul Syverson sekä tietojenkäsittelytieteilijät Michael Reed ja David Goldschlag 1990-luvun puolivälissä. Teknologian tarkoituksena oli suojata Yhdysvaltain tiedustelupalveluiden yhteydenpitoa verkossa. DARPA jatkoi sipulireitityksen kehittämistä vuonna 1997.
Syversonin ja tietojenkäsittelytieteilijöiden Roger Dingledinen ja Nick Mathewsonin kehittämän Tor-ohjelmiston alfa-versio julkistettiin 20. syyskuuta 2002. Nimi sai alkunsa lyhenteenä The Onion Routing -hankkeesta (TOR-hanke). He pitivät 13. elokuuta 2004 esitelmän nimeltä ”Tor: Toisen sukupolven sipulireititin” kolmannessatoista Usenixin tietoturvakonferenssissa. Vuonna 2004 Yhdysvaltain laivaston tutkimuslaitos julkaisi Tor-ohjelmiston lähdekoodin vapaan lisenssin alla. Electronic Frontier Foundation (EFF) alkoi tämän jälkeen tukemaan Dingledinea ja Mathewsonia rahallisesti Tor-verkon kehityksen jatkamiseksi.
Joulukuussa 2006 Dingledine, Mathewson ja viisi muuta perustivat Tor Project -järjestön. Järjestö on Massachusettsista käsin toimiva yleishyödyllinen tutkimus- ja koulutusjärjestö, joka on vastuussa Tor-ohjelmiston ylläpidosta. Sen fiskaalisena sponsorina toimi alkuvuosina EFF ja sen aikaisiin rahallisiin tukijoihin lukeutuivat Yhdysvaltain International Broadcasting Bureau, Internews, Human Rights Watch, Cambridgen yliopisto, Google sekä Alankomaista käsin toimiva Stichting.net.

Vastaanotto ja vaikutus

Toria on ylistetty, koska se tarjoaa yksityisyyden ja anonyymiuden useille riskialttiille Internetin käyttäjäryhmille, kuten valvontaa ja pidätystä pelkääville poliittisille aktivisteille, sensuuria kiertäville tavallisille verkon käyttäjille sekä väkivallalla tai hyväksikäytöllä uhattuille naisille. Yhdysvaltain kansallinen turvallisuusvirasto (NSA) on kutsunut Tor-verkostoa ”turvallisuuden, nopean vasteajan ja anonyymiuden kuninkaaksi”, ja BusinessWeek-lehti on kuvaillut sitä ”kenties tehokkaimmaksi keinoksi maailmanlaajuisten tiedustelupalveluiden verkkovalvontahankkeiden päihittämiseksi”. Muut mediat ovat kuvailleet Tor-verkostoa ”kehittyneeksi yksityisyystyökaluksi”, ”helppokäyttöiseksi” ja ”niin turvalliseksi, etteivät edes maailman kokeneimmat elektroniset vakoilijat ole kyenneet murtamaan sitä”.
Maaliskuussa 2011 Free Software Foundation myönsi Tor Project -järjestölle palkinnon ”Hanke, joka on hyödyksi yhteiskunnalle” seuraavin perustein: ”Käyttämällä vapaita ohjelmistoja Tor on mahdollistanut noin 36 miljoonaa ihmistä ympäri maailmaa kokemaan vapauden päästä ja ilmaisemaan itseään Internetissä, antaen heille vapauden olla oman yksityisyytensä ja nimettömyytensä hallitsijoita. Sen verkosto on osoittautunut olevan avainasemassa toisinajattelijoiden liikkeille niin Iranissa kuin nyttemmin Egyptissä.”
Vuonna 2012 Foreign Policy -lehti nimesi Dingledinen, Mathewsonin ja Syversonin ”Top 100 Global Thinkers” -listalleen ”koska he ovat tehneet netistä turvallisemman paljastuksentekijöille”.
Vuonna 2013 Jacob Appelbaum kuvasi Tor-verkostoa ”osana ohjelmistojen ekosysteemiä, joka auttaa ihmisiä ottamaan takaisin heidän itsemääräämisoikeutensa. [Tämä ohjelmistojen ekosysteemi] auttaa ihmisiä kokemaan itsensä voimaantuneiksi kaikenlaisilla tavoilla; se auttaa muita auttamaan toisia ja se auttaa teitä auttamaan itseänne. Se toimii, se on avoin ja sitä tukee suuri yhteisö kaikilta eri elämänaloilta.”
Edward Snowden käytti Tor-verkkoa lähettämään tietoja PRISM-ohjelmasta The Washington Post ja The Guardian -lehdille kesäkuussa 2013.
Vuodesta 2012 lähtien 80 % Tor Project -järjestön 2 miljoonan dollarin vuosibudjetista on tullut Yhdysvaltain hallitukselta. Loput 20 % on tullut Ruotsin hallitukselta sekä muilta organisaatioilta, mukaan lukien kansalaisjärjestöiltä ja tuhansilta yksittäisiltä sponsoreilta. Hankkeen perustajajäsen Roger Dingledine on sanonut, että Yhdysvaltain puolustusministeriöltä saadut varat muistuttavat enemmän tutkimusapurahoja kuin hankintasopimusta. Tor Project -järjestön johtaja Andrew Lewman on sanonut, että vaikka hanke vastaanottaa varoja Yhdysvaltain liittovaltion hallitukselta, Tor-palvelu ei ole tehnyt yhteistyötä NSAn kanssa paljastamalla käyttäjien henkilöllisyyksiä.
Arvostelijat ovat sanoneet, ettei Tor ole niin turvallinen kuin on väitetty. He ovat viitanneet Freedom Hosting -webhotellin ja Silk Road -verkkokaupan kaltaisiin Tor-verkkoa käyttäviin verkkosivuihin, jotka ovat joutuneet lopettamaan toimintansa Yhdysvaltain lainvalvonnan tutkimusten seurauksena. Lokakuussa 2013 The Guardian -lehti raportoi Edward Snowdenin vuotamien asiakirjojen perusteella, että NSA oli toistuvasti yrittänyt ja epäonnistunut Tor-verkon turvallisuuden murtamisessa. NSA:lla oli lehden mukaan kuitenkin ollut jonkin verran menestystä yksittäisten Tor-verkon käyttäjien tietokoneisiin hyökkäämisessä. The Guardian julkaisi myös vuodelta 2012 peräisin olevan NSA:n salaisen ”Tor haisee” -nimisen diasarjan, jossa sanottiin: ”Emme tule koskaan pystymään tunnistamaan kaikkia Tor-verkon käyttäjiä kaikkina aikoina”, mutta ”voimme manuaalisella analysoinnilla tunnistaa pienen murto-osan Tor-verkon käyttäjistä”.

Toimintaperiaate

Tor-verkon toiminta perustuu liikennettä välityspalvelimina siirtävien Tor-solmujen (tai -reitittimien) vapaaehtoiseen ylläpitoon ympäri maailmaa ja näiden välillä tapahtuvaan sipulireititykseen. Esim. suomalainen ihmisten sähköisiä oikeuksia puolustava Electronic Frontier Finland ry ylläpitää exit-solmua.
Tor-verkkoon liittyessään käyttäjän kone pyytää listan saatavilla olevien solmujen tiedoista satunnaisesti valitulta directory authority eli DA-palvelimelta. Nämä toimivat eräänlaisina DNS-nimipalvelimina tai jatkuvasti päivittyvinä puhelinluetteloina solmuille. DA-palvelimet antavat julkisella avaimellaan allekirjoitetut tiedot solmujen IP-osoitteista, julkisen salauksen tunnisteista ja muista tärkeistä tiedoista. DA-palvelimia on 10 kirjoitushetkellä (2018) ja näiden IP-osoitteet ovat pysyvästi Tor-ohjelmistoon koodattuina. Tämän yhteydenoton vuoksi internet-palveluntajoajan (ISP) on mahdollista tietää käyttäjän käyttävän Tor-verkkoa. Siksi on myös olemassa silta-solmuja (bridge). Nämä ovat julkisesti listaamattomia välityspalvelimia, joiden keskeisiä yhteystietoja on mahdollista saada rajoitetusti selville. Tor-verkon käyttöä rajoittavissa maissa (mm. Iran ja Kiina) asuvat voivat tuntemansa silta-solmun kautta päästä käyttämään Tor-verkkoa. DA-palvelimet eivät kerro käyttäjälle siltojen yhteystietoja, sillä ne eivät tiedä niitä.
Solmutyyppejä on 3: guard, middle ja exit. Yksinkertaisimmassa tilanteessa Tor-verkkoa käyttävän koneelta lähtee kerroksittain salattua TCP-liikennettä, jonka kerroksista johtuen reititystä kutsutaan sipulireititykseksi (vrt. sipuliin, jossa on kerroksia). UDP:tä ei voi käyttää. Lähetetty liikenne on aina jaettu 512 tavun IP-paketteihin, jotta sen tulkitseminen olisi ulkopuolisille tahoille vaikeampaa; vaihtelevan kokoisista paketeista voisi ehkä tulkita liikenteen sisältöä. Käyttäjä valitsee saamastaan listasta satunnaisesti sopivat solmut. Näiden kautta käyttäjän kolminkertaisesti salaama liikenne kulkee. Kukin solmu voi purkaa vain yhden sille tarkoitetun salauskerroksen. Sitten solmu välittää kerroksen alta löytämiensä ohjeiden mukaan liikenteen eteenpäin seuraavalle solmulle. Aluksi verkkoliikenne, kuten pyyntö päästä verkkosivulle, siirtyy käyttäjältä guardille, guardilta middlelle ja lopuksi middleltä exitille. Tor-verkko päättyy exitiin, joka purkaa viimeisen salauksen.
Exitiltä liikenne lähtee tavallisena liikenteenä eteenpäin käyttäjän pyytämää verkkosivua ylläpitävälle palvelimelle. Sivusta riippuen tämä liikenne voi olla salaamatonta HTTP-liikennettä, jonka sisällön exit voi kokonaan nähdä, tai salattua HTTPS-liikennettä, jota exit ei pysty lukemaan. Sivua tarjoavalle palvelimelle liikenne näyttää tulevan vain exitin IP-osoitteesta. HTTPS-liikenteenkin kohdalla exit näkee silti rajatusti minkä sivun käyttäjä haluaa nähdä: esim. https://sivu.com, mutta ei https://sivu.com/sisalto. Katso vertailu HTTPS ja/tai Tor käytöstä: linkki.
Anonyymiydelle haitallisesti monet ohjelmat tekevät DNS-haut suoraan nimipalvelimilta sen sijaan että ne kulkisivat Tor-verkon kautta. Ohjelma, joka käyttää SOCKS5-yhteyksiä, voi kuitenkin ohjata DNS-haut Tor-verkon lävitse. Tailsin kaltaisissa käyttöjärjestelmissä lähes kaikki ohjelmat pakotettu käyttämään automaattisesti vain Tor-verkkoa.
Salausjärjestys toimii liikenteen tullessa palvelimelta toisin päin: palvelin välittää käyttäjän pyytämän sivun sisällön exitille. Exit salaa liikenteen salausavaimellaan ja siirtää sen middlelle, middle salaa liikenteen ja siirtää sen guardille. Guard salaa liikenteen ja siirtää sen käyttäjälle. Käyttäjä purkaa kaikki salauskerrokset ja on näin saanut pyytämänsä sivun sisällön.
Guard tietää liikenteen lähteen ja menosuunnan, eli "tuntee" käyttäjän ja middlen (IP-osoitteet), mutta ei tunne exitiä ja sivua tarjoavaa palvelinta. Guard periaatteessa voi tietää käyttäjän olevan Tor-verkon loppukäyttäjä, eikä osallistuja. Tämä ei kuitenkaan haittaa, sillä guard ja middle eivät näe liikenteen sisällöstä mitään. Middle taas tuntee guardin ja exitin, mutta ei tunne käyttäjää ja palvelinta; exit tuntee middlen ja palvelimen, mutta ei tunne käyttäjää ja guardia. Tähän käyttäjän anonyymiys Tor-verkossa perustuu.
Tor-ohjelmisto vaihtaa solmuja säännöllisesti. Siten vältytään tilanteelta, jossa esim. exit ja middle ovat saman tahon ylläpitämiä, jolloin ne tuntevat toisensa. Jos tämä henkilö olisi pahantahtoinen, voisi hän selvittää kuka käyttäjä on mikäli hän hallinnoisi myös guardia. Tor-verkko tarkkailee guard-oikeudet saaneita solmuja esim. middlejä tarkemmin, jollaiseksi periaatteessa kuka tahansa internet yhteydessä olevan tietokoneen omistaja voi ryhtyä. Guardiksi pääseminen vaatii koneelta aktiivista ja normaalilta vaikuttavaa osallistumista Tor-verkon ylläpitoon. Tästä johtuen muiden Tor-verkon solmujen korkean luottamuksen omaavaa guardia kutsutaan nimellä guard (eng. vartija). Tor-vekkoon liitetty ohjelma muuttaa guard-solmua paljon harvemmin kuin middleä ja exitiä. Ohjelmiston uudelleenkäynnistyksessä kaikki solmut voivat kuitenkin vaihtua. Guardin vähäinen vaihto vähentää käyttäjän todennäköisyyttä päätyä tilanteeseen, jossa middle ja exit ovat saman henkilön hallinnassa. On mahdollista, että sama taho hallinnoi kaikkia käyttäjän valitsemia solmuja, mutta tämä on Tor-verkon nykyisessä kokoluokassa tilastollisesti epätodennäköistä.

Salausavaimet

Tor-verkon salauksesta kerrotaan tarkemmin täällä: linkki.
Tor käyttää useita symmetrisen ja asymmetrisen salauksen avaimia, jotka kuuluvat kolmeen ryhmään: 1. kuuluvat pitkäaikaiset avaimet, joilla käyttäjä voi tunnistaa verkon solmut ja valita sopivan reitin, jonka kautta hän pääsee Tor-verkon kautta normaaliin internettiin (clearnet) tai ns. pimeään internettiin (darknet); 2. kuuluvat avaimet, joiden avulla käyttäjän kone varmistaa olevansa yhteydessä valitsemiinsa solmuihin, eikä mahdollisesti muihin koneisiin; 3. kuuluvat avaimet, joilla liikenne solmujen välillä salataan kerroksittain ulkopuolisista ja sipulireitityksen tiettyyn vaiheeseen kuulumattomilta Tor-verkon solmuilta.
Kaikki solmujen väliset yhteydet käyttävät TLS-salausprotokollaa.
Tiettyjä pitkäikäisiä Ed25519 ja 1024-bittisiä RSA julkisen salauksen avaimia käytetään tunnistamaan Tor-verkon solmuja: ne ovat solmujen henkilökohtaisia identiteettejä Tor-verkossa. Julkisen salauksen Curve25519 avaimia käytetään luomaan väliaikaisia yhteyksiä solmujen välille, jotka käyttäjän Tor-ohjelmisto on valinnut. Ed25519 ja RSA avaimia käytetään myös muuhunkin kuin solmun identiteetin varmentamiseen.

Piilopalvelut (hidden service)

Sen lisäksi, että Tor pyrkii tarjoamaan käyttäjilleen mahdollisuuden käyttää Internetiä anonyymisti, se tarjoaa myös ”piilopalveluominaisuuden” (hidden service). Tämän avulla käyttäjä voi pitää Tor-verkossa lähes mitä tahansa palvelua kuten WWW-verkkosivua, jollaista ylläpitävän palvelimen fyysinen sijainti on vaikea selvittää. Piilopalvelupalvelin ei tiedä kuka käyttää sen palveluita, eikä käyttäjän fyysistä sijaintia. Piilopalvelun käyttäjä puolestaan ei tiedä piilopalvelupalvelimen fyysistä sijaintia. Nämä palvelut tunnistaa niiden käyttämästä .onion-pseudoverkkotunnuksista, jotka koostuvat kuudestatoista satunnaiselta vaikuttavasta merkistä, jotka on johdettu palvelun julkisesta avaimesta. Esimerkki:
https://wksqnvjyk5u3u78n.onion/
Piilopalveluita on noin 110 000 kappaletta kirjoitushetkellä (2018) ja yhdessä ne luovat ns. pimeän internetin (eng. darknet), jota ei pääse käyttämään ilman Tor-ohjelmistoa. Suurin osa näistä sivustoista sisältää täysin Suomen lain mukaista sisältöä, mutta yksittäisiä huumekauppa- ja lapsipornopalveluitakin toimii Tor-verkossa. WWW-palvelimien lisäksi piilopalveluina toimii muun muassa IRC-palvelimia. Palveluita voi hakea erilaisilla erikoistuneilla hakukoneilla.

Toteutuksia

Pääasiallinen toteutus on kirjoitettu suurimmaksi osaksi C-ohjelmointikielellä ja koostuu noin 340 000 rivistä lähdekoodia.

Firefox- / JavaScript-hyökkäys

Elokuussa 2013 paljastui, että monessa päivittämättömässä Tor Browser Bundle -ohjelmassa olevat Firefox -selaimet olivat haavoittuvaisia JavaScript-hyökkäykselle koska NoScript-lisäosa ei ollut oletuksena päällä. Tätä hyökkäystä käytettiin hyödyksi lähettämään käyttäjien MAC- ja IP-osoitteet sekä Windows-tietokoneiden nimet hyökkääjille. Uutisraportit yhdistivät tämän Yhdysvaltain keskusrikospoliisin (FBI) operaatioon, joka kohdistui Freedom Hosting -webhotellin omistajaan Eric Eoin Marquesiin, joka pidätettiin Irlannissa 29. heinäkuuta. FBI pyrkii lähettämään Marquesin Marylandiin neljän syytteen perusteella: Lapsipornon jakamisesta, sen jakamisen juonimisesta, sen markkinoinnista sekä sen markkinoinnin avustamisesta ja yllytyksestä. Pidätysmääräys väittää, että Marques on ”suurin lapsipornon edistäjä koko planeetalla”. FBI myönsi hyökkäyksen 12. syyskuuta 2013 Dublinissa olevalle tuomioistuimelle luovutetussa asiakirjassa. Hyökkäyksen koodinimi oli Edward Snowdenin vuotaman asiakirjan perusteella EgotisticalGiraffe.
FBI:n Operation Torpedo -niminen operaatio on kohdistunut Tor-verkossa piileviin palvelimiin vuodesta 2012 lähtien.

Kolmannen osapuolen

Vuze, Bitmessage, ja TorChat -ohjelmat sisältävät tuen Tor-verkon käytölle.
The Guardian Project -ryhmä kehittää vapaata ja avointa sovelluskokoelmaa ja laiteohjelmistoa Android -käyttöjärjestelmälle, tavoitteenaan tehdä mobiiliyhteydenpidosta turvallisempaa. Kokoelma sisältää ChatSecure -pikaviestisovelluksen, Orbot-toteutuksen, Orweb-mobiiliselaimen, ProxyMob-lisäosan ja ObscuraCam-sovelluksen.

Tietoturvaan keskittyvät käyttöjärjestelmät

Useat tietoturvaan keskittyvät käyttöjärjestelmät (kuten Hardened Linux From Scratch, Incognito, Liberté Linux, Qubes OS, Tails, Tor-ramdisk ja Whonix) hyödyntävät Tor-verkkoa.