Ovo je stara izmjena dokumenta!
Sažetak rada
U današnjem svijetu velika je potreba za dijeljenjem datoteka. Za dijeljenje manjih datoteka idealno rješenje je email, ali što kada se javi potreba za dijeljenjem velikih datoteka? Rješenje su P2P (Peer to Peer) mreže koje su vrlo popularna metoda za prijenos velikih datoteka i koristi ih velik broj ljudi. Zbog popularnosti i dostupnosti P2P mreža, često su korištene u svrhe dijeljenja i distribucije ilegalnog sadržaja poput filmova i glazbe zaštićenih licencom ili dječje pornografije.
U ovom radu opisane su P2P mreže i njihova arhitektura te postupci računalne forenzike takvih mreža. Analizirat ću i postojeći alat RoundUp koji je temeljen na Phex Gnutella Client fork-u i koji se koristi za forenzičko istraživanje mreža temeljenih na Gnutella protokolu. Kako bi shvatili kako se provodi kriminalističko forenzičko istraživanje i kako alat RoundUp radi, objasnit će se i osnove Gnutella mreže.
U klasičnim poslužiteljskim mrežnim arhitekturama postoje klijenti koji šalju zahtjeve centraliziranom poslužitelju, a on odgovara na zahtjeve, odnosno klijenti zahtjevaju resurse, a poslužitelji ih daju. U ovakvim mrežama poslužitelj je jedinstvena točka ispada, a usluga koju klijenti traže je pod njegovom kontrolom i on njome upravlja.
U P2P mrežama, mrežu čine ravnopravni sudionici koji su ujedno i klijenti i poslužitelji. Kako bi postao sudionik u mreži, korisnik na neki način plaća sudjelovanje kroz računalne resurse (npr. procesna snaga, memorija, prostor na disku…). Ti resursi koje računalo nudi su dostupni svim ostalim sudionicima mreže bez potrebe za centraliziranim upravljačkim računalom. Svi sudionici u P2P mrežama su ravnopravni i polažu jednaka prava na preuzimanje i dijeljenje datoteka.
Za razliku od mreže temeljene na poslužiteljskoj arhitekturi koja je centralizirana i u kojoj postoji poslužitelj koji odgovara na zahtjeve klijenata, P2P (Peer to Peer) mreže su temeljene na distribuiranoj arhitekturi koju čine ravnopravni umreženi sudionici u mreži (Peer)(Slika 1).
Slika 1. Centralizirana poslužiteljska mrežna arhitektura i decentralizirana distribuirana P2P mrežna arhitektura [5]
Gnutella je decentralizirana P2P mreža temeljena na istoimenom protokolu. Pri ulasku u mrežu, računalo kontaktira poznatog poslužitelja u svrhu dohvaćanja informacija o ostalim sudionicima s kojima tvori P2P mrežu. Potom pridruženo računalo kontaktira ostale sudionike i uspostavlja TCP konekciju s njima te postaju susjedi i tvore susjedstvo. Po potrebi klijent preplavljivanjem saznaje informacije o susjedovim susjedima, odnosno o ostalim sudionicima u mreži. Svaki Peer si odredi nasumično odabrani jedinstveni globalni identifikator (GUID).
Pretraživanje datoteka u mreži vrši se putem upita (Query String). Pretraživanje se ostvaruje slanjem zahtjeva svim trenutno aktivnim povezanima čvorovima o kojima svaki čvor vodi evidenciju (Ping). Svaki zahtjev ima određen broj skokova (hops) koji predstavlja vrijeme valjanosti zahtjeva, tj. koliko još puta može bit proslijeđen zahtjev prije nego što istekne. Ako neki čvor sadrži traženu datoteku, on kontaktira izvorišni čvor koji je zahtjev uputio s ciljem dijeljenja datoteke (Pong). U prijašnjim verzijama Gnutelle, takav rezultat je putovao najčešće istim putem kao i zahtjev, no u novijim verzijama protokola rezultat se izravno dostavlja klijentu putem UDP protokola (Slika 2).
Slika 2. Računalo šalje upit za datoteku “Baby go home.mp3” [4]
Ako je tražena datoteka fragmentirana, zasebni fragmenti se mogu preuzimati od različitih Peer-ova paralelno. Datoteke se identificiraju prema njihovom hashu. U nekim slučajevima, moguće je da udaljeni čvor s kojeg se preuzima datoteka otkrije informacije klijentskom čvoru o preostalim čvorovima u mreži (odnosno njihove IP adrese) koji sadrže traženu datoteku. Također, jedan čvor može uspostaviti konekciju s bilo kojim drugim čvorom u mreži i pretraživati datoteke koje sadrži. Na takav zahtjev čvor odgovara s opisom svih datoteka koje sadrži i njihovim hashom.
Pri izlasku iz mreže sprema se lista čvorova s kojima je taj čvor bio povezan u svrhu obnavljanja konekcije pri idućem spajanju u mrežu.
Zbog velike količine dijeljenja i distribucije prethodno spomenutog ilegalnog sadržaja postavlja se pitanje kako prepoznati takav sadržaj i identificirati osobe odgovorne za počinjavaje tog zločina. Istraživaču je primarni cilj sakupiti dokaze o kriminalnim radnjama na Internetu, u ovom slučaju u P2P mrežama. Dokazi mogu biti pribavljeni izravno (direct) ili po modelu prepričavanja (hearsay).
Kada istraživač ima direktan pristup nekom sudioniku i informacije o datotekama koje taj sudionik posjeduje ili dijeli onda govorimo izravnom načinu pribavljanja dokaza. Kada istraživač pribavlja informacije o nekom sudioniku s kojim nije povezan, neizravno preko svog susjednog čvora onda je takav način pribavljanja dokaza baziran na modelu prepričavanja. Direktni dokazi su najčešće konkretniji i korisniji od prepričavanja.
Koraci u postupku kriminalističkog istraživanja P2P mreža su sljedeći [1]:
Forenzičko istraživanje je ograničeno zakonskim regulativama. Svi dokazi moraju biti pribavljeni legalnim putem i za svako kršenje zakona istraživač će također odgovarati. To znači da istraživač osim dobrog poznavanja P2P mreže i protokola koji se koristi, mora biti dobro upućen i u zakonsku regulativu i svoje ovlasti.
Kako bi dokazi i slučaj bio što konkretniji, istraživači moraju voditi temeljitu evidenciju o svim dokazima i tragovima koji su proizašli iz istrage. Prvenstveno govorimo o IP adresama, upitima koje kandidati šalju, vremenu i datumu pretraživanja i njihovim GUIDima.
U P2P mrežama sadržaj se preuzima od više sudionika prema zadanim postavkama. Kada istraživač obavlja istraživanje i radi single-source preuzimanje, multi-peers preuzimanja moraju biti onemogućena.
Alat RoundUp je razvijen kroz suradnju tijela za provedbu zakona i akademika u svrhu olakšavanja postupka forenzičkog kriminalističkog istraživanja Gnutella P2P mreže [1]. Program je fork Phex Gnutella klijenta (isto grafičko sučelje), baziran je na Java programskom jeziku i olakšava kriminalistička istraživanja kroz prethodno navedene metode.
Pri razvoju alata, autori su imali na umu sljedeće:
Funkcionalnosti ovog alata su sljedeće:
Autori alata su razvili i web sustav preko kojeg se ovlašteni korisnici mogu autentificirati, te pohranjivati i razmjenjivati podatke istraživanja u svrhu bolje povezanosti različitih tijela za provedbu zakona.
Prema statističkim podacima objavljenim u radu 2010.[2], od listopada 2009. godine alat RoundUp koristi 52 jedinice za zaštitu djece od zločina na Internetu (Internet Crimes Against Children - ICAC) koji međusobno razmjenjuju rezultate istraga. Nadzire se preko 300 000 instalacija Gnutella klijenta za koje je poznato da dijele ilegalni sadržaj, a izdano je i najmanje 558 naloga za pretragu.
tu ide zaključak