Starije izmjene na obje strane
Starija izmjena
Novija izmjena
|
Starija izmjena
|
racfor_wiki:mrezna_forenzika:usporedba_skrivenih_servisa_i2p_i_tor [2020/01/07 12:53] dasaric [Sigurnost, prijetnje i napadi na Tor] |
racfor_wiki:mrezna_forenzika:usporedba_skrivenih_servisa_i2p_i_tor [2024/12/05 12:24] (trenutno) |
====== Uvod ====== | ====== Uvod ====== |
| |
//todo: bla bla blabla// | Internet je danas postao svijet za sebe. On je mjesto razmjene informacija, mjesto gdje se odvija raznovrsna komunikacija širom svijeta, gdje ljudi trguju robom i uslugama. Istovremeno, u drugim dijelovima svijeta, zbog represivne vlade, ljudi nemaju otvoren pristup Internetu, tj. njihove aktivnosti se nadziru, ili je prisutna cenzura sadržaja. Također, postoje zviždači i agenti u neprijateljskim državama ili na tajnom zadatku kojima je tajnost njihovih djela neophodna za uspjeh. Što tim ljudima zajedničko? Potreban im je način, odnosno alat, koji će im omogućiti da neometani i nepraćeni koriste mrežu ili Internet. Taj ćemo način, radi jednostavnosti, nazvati skrivenim servisom. |
| |
====== Tor ====== | ====== Tor ====== |
| |
//The Onion Router//, poznatiji kao //Tor//, je programski sustav za anoninmu komunikaciju. Postao je poznat široj javnosti kao [[http://www.theguardian.com/technology/2013/nov/05/tor-beginners-guide-nsa-browser|"web preglednik za skrivanje IP adrese i pristup darknetu"]] nakon [[https://www.bbc.com/news/world-us-canada-23123964|slučaja zviždača Edwarda Snowdena 2013.]]//.//Tor je implementacija //[[:racfor_wiki:mrezna_forenzika:usporedba_skrivenih_servisa_i2p_i_tor#onion_routing|onion routing]] //tehnike. Nastao je kao zajednički projekt [[https://www.freehaven.net/~arma/cv.html|Rogera Dingledinea]], poznatog kao //arma//,tada studenta diplomskog studija na MIT-u, i [[http://www.syverson.org/|Paula Syversona]], matematičara u [[https://www.nrl.navy.mil/itd/chacs/|CHACS-u]] (//Center for High Assurance Computer Systems//), grani IT divizije u [[https://www.nrl.navy.mil/|NRL-u]] (//Navy Research Laboratory//) mornarice SAD-a. Od 2004. [[https://www.eff.org/|EFF]] (//Electronic Frontier Foundation//) financira rad na projektu, a 2006 osnovan je //Tor Project Inc.//, neprofitna orgranizacija s zadaćom financiranja Tor projekta. Izvori tvrde da je razvoj Tora rezultat napora američkih službi da se agentima u stranim državama omogući sigurna komunikacija s nadređenima, bez da ih prisluškuju obavještajne službe drugih država ili druge organizacije, dok komunikacija zviždača, kriminalaca i paranoika, koji su protiv svakog oblika prisluškivanja njihove komunikacije, služi kao šum u mreži, koji će sakriti aktivnosti agenata. | //The Onion Router//, poznatiji kao //Tor//, je programski sustav za anoninmu komunikaciju. Postao je poznat široj javnosti kao [[http://www.theguardian.com/technology/2013/nov/05/tor-beginners-guide-nsa-browser|"web preglednik za skrivanje IP adrese i pristup darknetu"]] nakon [[https://www.bbc.com/news/world-us-canada-23123964|slučaja zviždača Edwarda Snowdena 2013.]]//.//Tor je implementacija //[[:racfor_wiki:mrezna_forenzika:usporedba_skrivenih_servisa_i2p_i_tor#onion_routing|onion routing]] //tehnike. Nastao je kao zajednički projekt [[https://www.freehaven.net/~arma/cv.html|Rogera Dingledinea]], poznatog kao //arma//,tada studenta diplomskog studija na MIT-u, i [[http://www.syverson.org/|Paula Syversona]], matematičara u [[https://www.nrl.navy.mil/itd/chacs/|CHACS-u]] (//Center for High Assurance Computer Systems//), grani IT divizije u [[https://www.nrl.navy.mil/|NRL-u]] (//Navy Research Laboratory//) mornarice SAD-a. Od 2004. [[https://www.eff.org/|EFF]] (//Electronic Frontier Foundation//) financira rad na projektu, a 2006 osnovan je //Tor Project Inc.//, neprofitna orgranizacija s zadaćom financiranja Tor projekta. Izvori [1] i [2] tvrde da je razvoj Tora rezultat napora američkih službi da se agentima u stranim državama omogući sigurna komunikacija s nadređenima, bez da ih prisluškuju obavještajne službe drugih država ili druge organizacije, dok komunikacija zviždača, kriminalaca i paranoika, koji su protiv svakog oblika prisluškivanja njihove komunikacije, služi kao šum u mreži, koji će sakriti aktivnosti agenata. |
| |
| |
| |
{{ :racfor_wiki:tor-onion-encryption.png?nolink&638x300 }} | {{ :racfor_wiki:tor-onion-encryption.png?nolink&638x300 }} |
| |
| |
====== Sigurnost, prijetnje i napadi na Tor ====== | ====== Sigurnost, prijetnje i napadi na Tor ====== |
| |
| ==== Sigurnosni zahtjevi ==== |
| |
//Tor// u svom [[https://2019.www.torproject.org/projects/torbrowser/design/|oblikovnom dokumentu]] (engl. //design document//) ima nekoliko sigurnosnih zahtjeva i zahtjeva koji se tiču privatnosti. Prva četiri su sigurnosni zahtjevi, dok se slijedeća tri tiču privatnosti: | //Tor// u svom [[https://2019.www.torproject.org/projects/torbrowser/design/|oblikovnom dokumentu]] (engl. //design document//) ima nekoliko sigurnosnih zahtjeva i zahtjeva koji se tiču privatnosti. Prva četiri su sigurnosni zahtjevi, dok se slijedeća tri tiču privatnosti: |
* //Disk Avoidance// - preglednik ne smije nikada zapisati podatke koji prikazuju aktivnost //Tora// na disk, osim ako korisnik to eksplicitno ne podesi | * //Disk Avoidance// - preglednik ne smije nikada zapisati podatke koji prikazuju aktivnost //Tora// na disk, osim ako korisnik to eksplicitno ne podesi |
* //Application Data Isolation// - sve komponente koje se koriste prilikom korištenja preglednika moraju imati mogućnost brzog i jednostavnog brisanja svih tragova i podataka koje bi mogli ostaviti | * //Application Data Isolation// - sve komponente koje se koriste prilikom korištenja preglednika moraju imati mogućnost brzog i jednostavnog brisanja svih tragova i podataka koje bi mogli ostaviti |
---- | —- |
| |
* //Cross-Origin Identifier Unlinkability// - aktivnost korisnika na jednom web sjedištu (//URL bar origin//) ne smije biti poveziva s aktivnošću istog korisnika na nekom drugom web sjedištu, uz pomoć kolačića, autentifikacijskih //tokena// i sl., bez eksplicitnog odobrenja korisnika | * //Cross-Origin Identifier Unlinkability// - aktivnost korisnika na jednom web sjedištu (//URL bar origin//) ne smije biti poveziva s aktivnošću istog korisnika na nekom drugom web sjedištu, uz pomoć kolačića, autentifikacijskih //tokena// i sl., bez eksplicitnog odobrenja korisnika |
* //Cross-Origin Fingerprintig Unlinkability// - aktivnost korisnika na jednom web sjedištu (//URL bar origin//) ne smije biti poveziva s aktivnošću istog korisnika na nekom drugom web sjedištu, uz pomoć analize korisničkog ponašanja metodom //[[http://yinzhicao.org/TrackingFree/crossbrowsertracking_NDSS17.pdf|browser fingerprinting]]// , bez eksplicitnog odobrenja korisnika | * //Cross-Origin Fingerprintig Unlinkability// - aktivnost korisnika na jednom web sjedištu (//URL bar origin//) ne smije biti poveziva s aktivnošću istog korisnika na nekom drugom web sjedištu, uz pomoć analize korisničkog ponašanja metodom //[[http://yinzhicao.org/TrackingFree/crossbrowsertracking_NDSS17.pdf|browser fingerprinting]]// , bez eksplicitnog odobrenja korisnika |
* //Long-Term Unlinkability// - preglednik korisniku mora pružati jasan i jednostavan način uklanjanja i brisanja svih podataka koji bi ga mogli identificirati na mreži; dodatan zahtjev je da se samo uklanjanje obavlja pri svakom ponovnom pokretanju | * //Long-Term Unlinkability// - preglednik korisniku mora pružati jasan i jednostavan način uklanjanja i brisanja svih podataka koji bi ga mogli identificirati na mreži; dodatan zahtjev je da se samo uklanjanje obavlja pri svakom ponovnom pokretanju |
| ==== Prijetnje i napadi ==== |
| |
| Potencijalni napadači, s druge strane, pri napadu na //Tor// pokušavaju izvesti neki od napada: |
| |
| * //Bypassing proxy settings// - natjerati korisnika da se direktno spoji na željeni poslužitelj |
| * //Correlation of Tor vs Non-Tor Activity// - analiza prometa izvan //Tora//, u svrhu otkrivanja informacija o prometu unutar //Tora// |
| * //History disclosure// - dohvaćanje povijesti pregledavanja korisnika |
| * //Correlate activity across multiple sites// - identificiranje istog korisnika na različitim web sjedištima |
| * //Fingerprinting/anonymity set reduction// - prikupljanje identificirajućih informacija o korisniku koje nisu mehanizmi preglednika (rezolucija ekrana, vremenska zona, jezik, inačica preglednika itd.) |
| * //History records and other on-disk information// - prikupljanje podataka o korištenju //Tora// s računala na kojem je //Tor// bio pokrenut |
| Navedeni napadi su mogući preko slijedećih [[https://www.techopedia.com/definition/15793/attack-vector|vektora napada]] (engl. //attack vector//) : |
| |
| * //Exit Node //ili //Upstream Router// - napadač može posjedovati ili upravljati izlaznim čvorovima ili usmjernicima na koje su ti čvorovi spojeni |
| * //Ad servers/Malicious Websites// - napadač može biti poslužitelj reklama, koji kroz unamljeni prostor na skrivenim sjedištima prikazuje reklame i prikuplja informacije o korisnicima |
| * //Physical Access// - napadač ima osiguran fizički pristup računalu korisnika koji koristi //Tor// |
| |
| |
====== Sigurnosne prijetnje i napadi na I2P ====== | ====== Sigurnosne prijetnje i napadi na I2P ====== |
| |
bla bla | //I2P// dijeli slične ciljeve kao i //Tor//, što je opisano u [[:racfor_wiki:mrezna_forenzika:usporedba_skrivenih_servisa_i2p_i_tor#sigurnost_prijetnje_i_napadi_na_tor|prethodnim poglavljima]], s razlikom da se korisnici //I2P//-a ne moraju bojati faktora koji nisu dio mreže, poput poslužitelja za reklame, špijunaže tehnoloških giganta poput //Googlea//, zato što ti entiteti niti ne mogu pristupiti uslugama koje su aktivne u //I2P// mreži. S druge strane, ta činjenica otvara prostor napdadima koji su uobičajeni u internim mrežama, među kojima treba spomenuti slijedeće: |
| |
| * //[[https://geti2p.net/en/docs/how/threat-model#intersection|Intersection attack]]//- periodična kratkotrajna komunikacija s žrtvom uz praćenje postojećih čvorova u mreži, čime je moguće saznati puno informacija o čvorovima i samoj mreži |
| * //[[https://geti2p.net/en/docs/how/threat-model#dos|Denial of Service]]// |
| * //[[https://geti2p.net/en/docs/how/threat-model#tagging|Tagging attack]]// - modificiranje poruke kako bi ih se moglo pratiti na putu kroz mrežu |
| * //[[https://geti2p.net/en/docs/how/threat-model#partitioning|Partitioning attack]]//- modificiranje topologije mreže kako bi se žrtva izolirala tako da napadač kontrolira jedine žive poveznice sa žrtvom |
| Možda najopasniji napad među spomenutima na //I2P// kao "interne mreže" je obitelj //[[https://geti2p.net/en/docs/how/threat-model#sybil|sybil]]//. //Sybil// su napadi gdje napadač pokušava preuzeti kontrolu nad što većim brojem čvorova mreže, kako bi ostvario "kontrolu" nad mrežom. Problem //sybil// napada je i najveća prijetnja svih //blockchain// implementacija, zato što integritet mreže //minera// ovisi dobroćudnosti većine, kako bi se ispravno gradio lanac. Jednom kada napadač potpuno preuzme 50% i jedan čvor, mreža je nepovratno kompromitirana. |
| |
| Od napada koji su specifičniji za //I2P//, važno je spomenuti slijedeće: |
| |
| * //[[https://geti2p.net/en/docs/how/threat-model#harvesting|Harvesting]]//- prikupljanje popisa svih korisnika koji koriste //I2P// i informacija o njima |
| * //[[https://geti2p.net/en/docs/how/threat-model#traffic|Identification through traffic analysis]]//- analiza zloćudnog usmjernika ili sigurnosne stijene (engl. //firewall//) moguće je odrediti je li neko računalo, čiji promet prolazi kroz njega, dio //I2P// mreže. Nasreću mehanizmi poput nasumičnog odabira izlaznih vratiju (engl. //port//), //point-to-point// šifriranja znatno otežavaju ovaj napad |
| |
====== Usporedba Tora i I2P ====== | ====== Usporedba Tora i I2P ====== |
|Client|Router/Client| | |Client|Router/Client| |
|Circuit|Tunnel| | |Circuit|Tunnel| |
| \\ Directory \\ | \\ NetDb \\ | | | \\ Directory| \\ NetDb| |
|Directory Server|Floodfill Router| | |Directory Server|Floodfill Router| |
|Entry Guards|Fast Peers| | |Entry Guards|Fast Peers| |
|Router Descriptor|RouterInfo| | |Router Descriptor|RouterInfo| |
|Server|Router| | |Server|Router| |
| |
| \\ |
| |
| |
===== Prednosti Tora nad I2P ===== | ===== Prednosti Tora nad I2P ===== |
| |
Vrijedi spomuenuti još nekoliko svojstava koja //I2P//-u daju prednost nad //Torom//. S obzirom da se komunikacija u //I2P//-u odvija preko jednosmjernih tunela, za kompromitiranje komunikacije između dva čvora uvijek je potrebno preuzeti sve čvorove u oba tunela, za razliku od //Tora// gdje je dovoljno preuzeti jedan //circuit//. Tunelima se prenose heterogene poruke (konkretni podaci, //netDb// upiti, upravljanje i testiranje tunela), čime se otežava analiza aktivnosti čvora u mreži. Osim toga, napadač ima jako malo vremena za analizu i napad na tunel, zato što svi //I2P// tuneli imaju vijek trajanja od samo 10 minuta, za razliku od //circuita//, koji su dugotrajniji i koriste se za više TCP veza. | Vrijedi spomuenuti još nekoliko svojstava koja //I2P//-u daju prednost nad //Torom//. S obzirom da se komunikacija u //I2P//-u odvija preko jednosmjernih tunela, za kompromitiranje komunikacije između dva čvora uvijek je potrebno preuzeti sve čvorove u oba tunela, za razliku od //Tora// gdje je dovoljno preuzeti jedan //circuit//. Tunelima se prenose heterogene poruke (konkretni podaci, //netDb// upiti, upravljanje i testiranje tunela), čime se otežava analiza aktivnosti čvora u mreži. Osim toga, napadač ima jako malo vremena za analizu i napad na tunel, zato što svi //I2P// tuneli imaju vijek trajanja od samo 10 minuta, za razliku od //circuita//, koji su dugotrajniji i koriste se za više TCP veza. |
| |
| ====== Zaključak ====== |
| |
| Ovaj seminar predstavio je dva vrlo poznata skrivena servisa: //Tor// i //I2P//. Ukratko je objašnjen njihov nastanak, te su obrađeni koncepti //onion routinga//, koji stoji iza //Tora//, i //garlic ////routinga//, koji stoji iza //I2P//-a. Usporedba između ova dva servisa pokazala je da je //Tor// trenutno dominantnija opcija, ponajviše zbog baze korisnika i stabilnog financiranja, dok //I2P// pokazuje veliki potencijal koji tek treba ispuniti. Arhitektura obaju skrivenih servisa, njihov dizajn, te problemi daju naslutiti da anonimnost na mreži ne ovisi o jednom paranoičnom pojedincu, nego je potrebna jedna cijela zajednica kako bi sustav funkcioniraju. Također, ne postoji jedno rješenje, tzv. //silver bullet syndrome//, za sve probleme skrivenih servisa. |
| |
| |
| ====== Izvori ====== |
| |
| [1] [[https://www.theguardian.com/technology/2013/nov/05/tor-beginners-guide-nsa-browser|https://www.theguardian.com/technology/2013/nov/05/tor-beginners-guide-nsa-browser]]\\ |
| [2] [[https://www.zerohedge.com/news/2018-03-02/tor-project-almost-100-funded-us-government-report|https://www.zerohedge.com/news/2018-03-02/tor-project-almost-100-funded-us-government-report]]\\ |
| [3] [[https://svn-archive.torproject.org/svn/projects/design-paper/tor-design.pdf|https://svn-archive.torproject.org/svn/projects/design-paper/tor-design.pdf]]\\ |
| [4] [[https://www.torproject.org/|https://www.torproject.org/]]\\ |
| [5] [[https://svn-archive.torproject.org/svn/projects/presentations/slides-stanford10.pdf|https://svn-archive.torproject.org/svn/projects/presentations/slides-stanford10.pdf]]\\ |
| [6] [[https://2019.www.torproject.org/docs/documentation|https://2019.www.torproject.org/docs/documentation]]\\ |
| [7] [[https://geti2p.net/en/|https://geti2p.net/en/]]\\ |
| [8] [[https://geti2p.net/en/docs/|https://geti2p.net/en/docs/]]\\ |
| [9] [[https://geti2p.net/en/docs/how/garlic-routing|https://geti2p.net/en/docs/how/garlic-routing]]\\ |
| [10] [[https://www.freehaven.net/doc/freehaven.pdf|https://www.freehaven.net/doc/freehaven.pdf]]\\ |
| |
| |