Professional Documents
Culture Documents
Uvod
Ovaj tutorial odlucio sam napisati s obzirom na ucestalost pitanja o toj
temi. Ovo je prva verzija i vjerojatno je napisana vrlo slampavo. Mozda
tutorial budem poboljsavao, no vjerojatnije je da ce ostati u ovakvome
stanju sa svim svojim leksickim, sintaksnim i semantickim pogreskama. Vodite
racuna kada je on napisan. Vecina stvari opisanih u njemu aktualne su u
trenutku njegovog pisanja, no vjerojatno je da ce nakon nekog vremena
postati zastarjele. Osim toga, postoji ogroman broj stvari koje autor ovoga
teksta ne zna. Takodjer, vodite racuna da kada se radi o vasoj privatnosti i
anonimnosti nikada ne biste trebali vjerovati na rijec samo jednoj osobi.
Stoga, planirate li koristiti neku od tehnika opisanih u ovome tekstu,
potrudite se saznati sto vise o tome, dobiti sto je svjezije moguce
informacije i to iz sto vise razlicitih izvora. Nelose mjesto da potvrdite
ili opovrgnete vase sumnje je grupa alt.privacy
Nemojte se zavaravati, ovaj tekst i ono sto je opisano u njemu ne sluzi samo
hackerima. U doba kada su povrede privatnosti od strane organa vlasti
postale standardna praksa koju se vise nitko i ne trudi skrivati, u doba
koje sebe zeli prikazati tolerantnim prema razlicitim stavovima svaki se
pojedinac treba zapitati ima li potrebu i pravo na privatnost i anonimnost
pored one koju mu (ne) garantira drustvo i tehnologija u kojima zivi i radi.
Mozda mislite 'Ja nemam sto skrivati'. Razmislite ponovno. Nemate li sto
skrivati meni znaci da se u svim skakljivim temama slazete s misljenjem
vecine. Nemate li sto skrivati meni znaci da ste potpuno nezanimljiva osoba
i ne zelim imati posla s vama.
Napominjem da se autor ovoga teksta ogradjuje od bilo kakve odgovornosti za
akcije onih koji ce koristiti ovdje naucene tehnike.
Na pocetku, treba naglasiti da su privatnost i anonimnost dva razlicita
pojma i, makar imaju odredjena preklapanja, ne treba ih mijesati. Jezikom
hackera, privatnost != anonimnost.
Privatnost onemogucava druge da saznate sto radite, dok anonimnost
onemogucava druge da saznate tko ste. Ukoliko imate privatnost, ne znaci da
ste anonimni. Takodjer, ukoliko ste anonimni ne znaci da imate privatnost.
Imajte to na umu.
Takodjer, vodite racuna o tome da i privatnost i anonimnost mozete osigurati
na vise razina. Mozete imati privatnost i anonimnost takvu da vasi
prijatelji ne znaju tko ste ni sto radite online, a takodjer mozete imati
privatnost i anonimnost takvu da organi vlasti ne mogu saznati tko ste ni
sto radite online. Ovaj tekst, osim tamo gdje je to eksplicitno navedeno,
bavi se ovom drugom vrstom privatnosti i anonimnosti.
TrueCrypt, http://www.truecrypt.tk/
3. Kako biti anoniman?
3.1. Sto je proxy?
Kada na internetu kontaktirate neki server preko Interneta, on ce uvijek
znati IP adresu preko koje se na njega spajate. Rjesenje za ovo je da
servere na internetu ne kontaktirate direktno, nego koristeci posrenika.
Najjednostavnije receno, proxy server je posrednik preko kojega mozete
preusmjeriti svoje zahtjeve namjenjene nekom Internet serveru. Umjesto da
neki udaljeni, npr web, server kontaktirakte direktno, vi cete kontaktirati
proxy server, a proxy server ce umjesto vas kontaktirati udaljeni server.
Kada udaljeni server odgovara, on ne salje podatke direktno vama, vec proxy
serveru, koji te podatke vama proslijedjuje. Tako ce udaljeni server, ako je
proxy anoniman, umjesto vase IP adrese vidjeti samo IP adresu servera. Ako
proxy nije anoniman (a vecina nije) proslijedjivati ce u svojim upitima,
pored svoje IP adrese, i vasu IP adresu korisnika.
3.2. Kako naci i konfigurirati proxyje
U ovom odjeljku opisati cu kako koristeci jedan proxy server mozete
osigurati kakvu-takvu anonimnost na webu. U narednim poglavljima opisati cu
mane ovakvog pristupa (koji mozda, za vase potrebe, ipak pruza dovoljno
anonimnosti) i neke slozenije tehnike.
Iako postoje nacini da sami na Internetu 'lovite' otvorene proxy servere,
postoji velik broj stranica na Internetu gdje se mogu naci liste (proxy
list) otvorenih proxy servera koje su nasli drugi. U trenutku pisanja ovog
teksta jedna takva stranica je www.samair.ru/proxy. Kako naci jos lista?
Jednostavno upisite 'proxy list' u google. Sada kada imate listu proxyja,
trebate odrediti koji od njih rade dobro, a od tih koji rade, koji su
anonimni. Postoji mnostvo programa za testiranje proxyja. Jednostavno
upisite 'proxy checker' u google. Ako vam nije prespor, probajte, na primjer
'proxy checker lite', no u konacnici, sve za sto vjerujete da ispravno radi
svoj posao ce posluziti.
Kako konfigurirati vas browser da koristi proxy server? U ie odite u
tools->internet options->connections i kliknite na settings za vasu Internet
vezu. Tamo mozete upisati adresu i port proxy servera. U mozilla firefox
idete na tools->options->general->connection settings.
Kada ste to ucinili otvorite browser i pokusajte otvoriti neku internet
stranicu. Ako nece, probajte s nekim drugim proxyjem. Vodite racuna da je
surfanje preko proxyja uvijek sporije (koliko? ovisi o brzini proxja) nego
surfanje bez njega. Sada kada ste uspjeli otvoriti neku web stranicu idemo
vidjeti jeste li stvarno anonimni.
Na Internetu postoji jedna skripta koja se zove 'proxy judge', a koja je u
stanju ispisati sve relevantne http headere koje vas proxy salje serveru na
koji se preko njega spajate. U trenutku pisanja ovog teksta mozete je naci
na http://www.proxyjudge.com/proxyjudge.html. Ukoliko kada citate ovaj tekst
vise nije tamo, guglajte za 'proxy judge' ili nadjite alternativno rjesenje
za provjeru anonimnosti.
3.3. Nedostaci pristupa iz poglavlja 3.2.
Koristite li tehnike iz prethodnog poglavlja, bez problema cete sakriti svoj
identitet od vasih prijatelja, ali od, npr. Interpola... tesko. Zasto?
a) Ukoliko netko bude 'okupirao' vas proxy server i bude analizirao promet
koji dolazi i odlazi sa proxyja opet ce vidjeti tko ste i sto radite. Osim
toga, jeste li sigurni da taj proxy server ne drzi logove? Stoga, ako
koristite ovu tehniku, a zelite biti ipak malo sigurniji u svoju anonimnost
birajte proxy servere iz zemalja koje se ne igraju lijepo s ostatkom
svijeta.
b) Ukoliko netko bude analizirao Internet promet koji odlazi/dolazi sa vaseg
racunala, ili kompletan promet na vasem ISP-u ili bilo gdje prije proxyja,
vidjet ce tocno sto radite
Jos neki nedostaci ovog pristupa koji nemaju veze s anonimnosti su
c) Svaki puta prije spajanja morate ponovno provjeravati servere, nikada ne
znate koji je prestao raditi ili koji je prestao biti anoniman
d) Ako vam proxy 'krepa' u radu, morati cete ga rucno zamjeniti
3.4 Kako rijesiti nedostatke iz poglavlja 3.3?
a) Ne koristiti samo jedan proxy vec lanac proxyja. Preko prvog proxyja se
spajate na drugi proxy, preko drugog na treci, a tek preko treceg na ciljani
server
b) Ne koristite jasnu vezu za spajanje na proxy, uvijek se spajajte na proxy
preko kriptirane veze. Takodjer, koristite li lanac proxyja, neka sve veze u
lancu budu kriptirane. Po mogucnosti tako da tek zadnji proxy u lancu moze
doci do informacije o serveru na koji se zapravo spajate.
Dok je sve ovo moguce postici 'rucno', to nije bas elegantno.
Umjesto toga, opisuti cu, u vrijeme pisanja ovoga teksta, jedno vrlo
elegantno rjesenje, koje nema navedene nedostatke. To je koristenje Tor
mreze.
3.5. Sto je Tor i kako radi?
Tor (the onion router, tor.eff.org) je sustav/mreza koja je u stanju
uspostaviti kriptiranu vezu preko lanca proxy servera, i sto je jos bolje,
cijelo je vrijeme rada odrzavajuci aktivnom zamjenjujuci proxy servere koji
prestanu raditi, a prema vama se ponasa kao bilo koji socks server na vasem
racunalu (127.0.0.1, by default na portu 9050). Visoka razina privatnosti i
anonimnosti postize se zahvaljujuci postupku kriptiranja prometa. Kada
saljete nesto preko tor mreze to se prvo kriptira za treci svor u lancu,
zatim (tako kriptirana poruka) za drugi i zatim za prvi i tek se onda salje
kroz mrezu. Kako poruka putuje kroz mrezu, prvo dolazi do prvog proxyja gdje
se prvi puta dekriptira (ali je jos uvijek kriptirana), zatim dolazi do
drugog cvora u lancu gdje se drugi puta dekriptira (jos je uvijek
kriptirana), a tek se na trecem, izlaznom, cvoru dekriptira u potpunosti u
jasan oblik. Unatrag analogno. Tako se poruka, putujuci kroz tor mrezu,
ljusti kao luk dok se tek u zadnjem cvoru ne dobije originalna poruka. Od
tuda ime mreze. Na taj nacin samo zadnji cvor u lancu zna gdje se spajate
(ali ne i odakle), a samo prvi cvor u lancu zna odakle se spajate (ali ne i
gdje).
3.6. Kako konfigururati tor da mi radi s web browserom?
Pored samog tor klijenta trebati ce vam i program privoxy. Privoxy se ponasa
kao http proxy (by default na portu 8118). U konfiguracijskoj datoteci
privoxyja otkomentirajte liniju koja se odnosi na tor:
forward-socks4a
/ 127.0.0.1:9050 .
U vas browser kao proxy unesite privoxy (127.0.0.1:8118) uz svaki protokol
osim socks. Socks polje ostavite prazno. Pokrenite privoxy. Pokrenite tor.
Cekajte da ispise poruku 'Tor has successfully opened a circuit. Looks like
client functionality is working'. To je to.
3.6.1. DNS leeking
Moguce pitanje ovdje: 'Ok, ali tor se ponasa kao socks server na portu 9050.
Zasto u browseru jednostavno ne upisem ovo? Koji k ce mi jos i privoxy?'
Privoxy vam treba zbog problema znanog kao DNS leeking. Sto je to? Kada vi
upisete nesto tipa 'www.google.com', vas browser prvo treba saznati ip
adresu servera na koji se treba spojiti da bi tu stranicu dohvatio, dakle
nesto tipa 72.14.221.103. Da bi to ucinio, vas browser mora kontaktirati tzv
DNS (domain name system) server. Problem nastaje zbog ovoga - vas browser
vjerojatno zna pricati samo preko socks protokola v 4 i 5. Ovi protokoli
znaju raditi samo s IP adresama, ne s imenima domena, a to znaci da ce se
svi DNS upiti rjesavati lokalno, sto pak znaci da ce se u logovima vaseg
lokalnog DNS servera tocno vidjeti koje ste siteove posjecivali. Not good.
Ok, zapravo socks 5 zna napraviti dns resolving preko proxyja, ali
implementacij ovog protokola u vasem browseru to ne podrzava. Vi zelite
natjerati vas browser da s torom prica preko socks 4a protokola koji zna
rjesavati DNS upite preko socks proxyja. Tu dolazi privoxy, i ona famozna
linija u njegovom config fileu:
forward-socks4a
127.0.0.1:9050 .
Privoxy se prema vasem browseru s jedne strane ponasa kao http/https proxy,
dok ce s druge strane komunicirati s torom preko socks 4a protokola i sve
ok.
Za druge protokole ulogu privoxyja preuzeti ce freecap koji zna preko socks
5 protokola rjesavati imena domena (ako ste ga konfigurirali da to cini).
3.6.2. Sto jos trebam znati o privatnosti na webu?
Iskljucite Javu. Iskljucite ActiveX. Tamo gdje mozete, iskljucite i
javascript. Zasto? ActiveX i Java mogu izvrsavati kod na vasem racunalu i
bez problema se spojiti pored konfiguriranog http proxyja na neki server
koji ce pokupiti vasu pravu IP adresu. Ali zasto javascript? On ne moze
nigdje mimo proxyja? Tocno, ali moze poslati neke druge podatke o vama tipa
u kojoj se vremenskoj zoni nalazite, trenutnu rezoluciju vaseg prikaza i
slicne informacije koje mogu suziti podrucje pretrage ili potvrditi sumnju
nekoga tko, iz nekih drugih razloga vec sumnja na vas.
3.7 Neke napomene o koristenju tora
Tor je mreza proxyja koju cine dobrovoljci. Imajte to na umu i nemojte
zlostavljati tu mrezu kojom dobivate puno toga zabadava. Izvorna namjena je
bila anonimno surfanje, no moze se iskoristiti i za brojne druge protokole.
Kada koristite tor vodite racuna o slijedecem
Tor nije pogodan za primjene gdje vam treba brz prijenos velike kolicine
(npr za p2p mreze). Pokusaj da ovo ucinite usporiti ce tor mrezu i vama i
drugima. Zelimo da tor mreza radi sto bolje sto je duze moguce, prema tome,
nemojte je koristiti bas za bilo sto. Isto tako, koristite tor mrezu da
budete nevidljivi, ne da radite sranja. Puno sranja s tor mreze uzrokovati
ce to da ce vecina admina blokirati konekcije s tor izlaznih cvorova i
umjesto da napravite sranje nekom drugom napravit cete ga sebi i drugim
korisnicima tor mreze.
3.8. Kako biti anoniman na drugim protokolima, a ne samo na webu?
Vecina programa moze se 'torificirati', tj natjerati da rade preko tor
mreze. U nekim programima (npr mirc) moci cete tor unijeti kao socks proxy
(opet vodite racuna da provjerite moze li vas program raditi remote dns
resolving). Za neke druge koristan program ce vam biti FreeCap,
www.freecap.ru/eng/. FreeCap sluzi za preusmjeravanje mreznog prometa iz
neke aplikacije kroz proizvoljan server (u vasem slucaju tor, dakle
127.0.0.1:9050). Pazite da vam u FreeCapu bude ukljucen remote dns
resolving. Sada aplikaciju pokrenete kroz freecap, i bez obzira zeli li ona
koristiti proxy ili ne, sav promet ide preko proxyja. U teoriji. U praksi ne
rade sve aplikacije dobro ovako, pa prije nego probate ovako zastititi
privatnost na nekom novom protokolu prvo pronadjite na netu iskustva drugih
koji su to isto pokusali. Nije lose upisati u google tor i ime programa na
kojemu zelite zastiti privatnost. Tako cete naci rasprave i uputstva na tu
temu.
- vecina remailera odbacuje sve poruke vece od nekog praga i na taj nacin
vas onemogucava da postate binse
Slanje maila/usenet posta kroz remailere moguce je uciniti rucno,
editirajuci headere emial poruka, no takodjer postoje i dva programa koji
ovaj postupak donekle automatiziraju
QuickSilver, quicksilvermail.net
Jack Be Nymble
Osobno preferiram QS iz vrlo jednostavnog razloga - QS mi je radio, JBN
nije. Mozda vama bude obrnuto.
Stoga cu u nastavku teksta dati par smjernica o koristenju QuickSilvera
Downloadate li QuickSilver, obavezno skinite i njegov dodatak za remailere mixmaster.
Zelite li poslati email, idete na file->new->message. Tamo ispunite headere
koji se od vas traze i dobijete ovako nesto:
Fcc: outbox
Host: mail.t-com.hr
From: ime.prez...@email.t-com.com
From: Jesus Christ <jesus.chr...@heaven.org>
Chain: *,*,twisty; copies=2
To: presid...@whitehouse.gov
Subject: message from heaven
you are going to hell
~~
Fcc linija govori quicksilveru gdje da spremi poruku
Host - ovdje upisite vas pravi smtp server
From - ovdje upisite vasu pravu email adresu, ne brinite, biti ce obrisana
na prvom remaileru
Drugi From - ovdje napisite od koga zelite da izgleda da poruka dolazi. Da
bi ovo polje proslo kako treba, zadnji remailer u lancu ga mora moci
ispravno proslijediti. Ovo rade samo neki remaileri, ostali ovdje stave
svoje podatke, ili nesto izmedju.
Chain - ovdje specificirate lanac remailera, znak * zamjenjuje nasumicno
odabran remailer. Konkretno, Chain linija gore napraviti ce lanac remailera
u kome ce prva dva biti nasumicno odabrana, dok ce treci biti remailer
'twisty'. Stavka copies povecava broj kopija ove poruke koje ce se poslati
na 2 i na taj nacin si povecavate vjerojatnost da ce poruka stici kroz lanac
remailera na odrediste
To - ovdje upisete kome ide poruka
~~ linija oznacava kraj poruke
Ostatak je jasan
Zelite li poslati usenet post, idete na file->new->usenet article
dana.
Drugi, jeftiniji nacin, je da ukradete tudji account za komercijalni nntp
provider. U ovome vam necu pomoci, a uostalom, to i nije poanta ovog
tutoriala.
3.10. Jos neke napomene o anonimnosti
Nikada nemojte, dok koristite tor mrezu, istovremeno pristupati vasim
osobnim (javnim) podacima i onima za koje zelite da ostanu skriveni. Ako
bih, na primjer, preko tora, istovremeno pristupao svojoj pravoj i tajnoj
email adresi, tada bi se, analizirajuci promet iz izlaznih cvorova tor
mreza, ipak moglo doci do moga identiteta.
Takodjer, ako preko tora otvarate neke accounte (npr za google groups)
nemojte koristiti vasu pravu email adresu. Koristite email adresu koju ste
takodjer otvorili preko tora samo za tu namjenu.