Copy Link
Add to Bookmark
Report
2x15 Security from iso - osi reference model perspective
...................
...::: phearless zine #2 :::...
.....>---[ Security from iso/osi reference model perspective ]---<......
.........................>---[ by root9 ]---<...........................
root9[at]net[dot]hr
Sadrzaj
Uvod
ISO/OSI model i Internet
1. sloj - Sigurnost signala na vodu
-Fizicki sloj u ISO/OSI referentnom modelu
-Sigurnosne prijetnje na fizickoj razini
-Prisluskivanje
--Presretanje elektromagnetskog zracenja
---Intruzivno prisiuskivanje signala u vodu
---Prisluskivanje radio signala i mikrovalova
--Ometanje i onemogucavanje komunikacije
--Neovlasteno mijenjanje signala
-Zastita podataka na fizickoj razini
--Zastita visih razina
--Eliminacija elektromagnetske radijacije
--Zastita signala u vodovima
--Zastita bezicnih veza
2. sloj - Sigurnost okvira izmedu dva susjedna racunala na vezi
-Sloj podatkovne veze u ISO/OSI referentnom modelu
-Sigurnosne prijetnje na razini podatkovne veze
--Neovlasteni prijem okvira
--Krivotvorenje okvira (hardware address spoofing).
--Sigurnosni problemi Point to point protokola
-Zastita podataka na razini podatkovne veze
--Segmentacija mreze
--Koristenje nestandardnih mreznih komponenti
--Koristenje filtrirajuce mrezne opreme
--Pracenje sigurnosnih izvjesca
3. sloj - Sigurnost paketa u mrezi
-Sloj mreze u ISO/OSI referentnom modelu
-Sigurnosne prijetnje na mreznoj razini
--Krivotvorenje ARP poruka
--Krivotvorenje usmjerivackih poruka
--Krivotvorenje poruka usmjerivackog protokola
--Onemogucavanje izvrsavanja servisa
-Zastita podataka na mreznoj razini
--Otkrivanje krivotvorenih ARP poruka
--Onemogucavanje krivotvorenja ARP poruka
--Zastita od utjecaja krivotvorenih ICMP redirekcijskih poruka
--Zastita od utjecaja krivotvorenih poruka usmjerivackih protokota
--Koristenje IPsec nadogradnje Internet protokola
--Koristenje vatrozida
4. sloj - Sigurnost prijenosa izmedju dva krajnja racunala
-Transportni sloj u ISO/OSI referentnom modelu
-Sigurnosne prijetnje na razini transporta
--Zaobilazenje filtriranja iskoristavanjem fragmentacije na mreznoj razini
--Napad fragmentacijom TCP zaglavlja
--Napad iskoristavanjem preklapanja fragmenata
--Ometanje i onemogucavanje rada racunala
---"Syn flood" napad
---"Land" metoda napada
---"Rose Attack" metoda
---Preplavljivanje UDP paketima
---Napad desinkronizacijom TCP veze
---Uspostavljanje i odrzavanje veze TCP-om
---Desinkronizirano stanje veze
----Izvodenje napada desinkronizacijom veze
-Zastita podataka na razini transporta
--Koristenje vatrozida
--Zastita od napada iskoristavanjem fragmentacije
--Samozastita racunala na razini transporta
5. sloj - Sigurnost veze izmedu procesa Sloj
-sesije u ISO/OSI referentnom modelu
-Sigurnosne prijetnje na razini sesije
--RPC prijetnje
-Zastita podataka na razini sesije
--Koristenje SSL i TLS protokola
---Secure Sockets Layer protokol
---Transport Layer Security protokol
--Koristenje protokola sigurne identifikacije
---TAG Access Control Server protokol
---Kerberos
6. sloj - Sigurnost podataka u prijenosnoj sintaksi
-Sloj prikaza u ISO/OSI referentnom modelu
-Sigurnosne prijetnje na razini prikaza
--Napadi slanjem poruka u prijenosnoj sintaksi
--Kriptoanaliza
---Nasilno desifriranje podataka (brute force attack)
---Lazno predstavljanje (Social engineering)
-Zastita podataka na razini prikaza
--Koristenje PGP kriptosustava
--Temelji PGP sifriranja
---Sigurna identifikacija, integritet podataka i neporecivost
---Kljucevi, distribucija i certifikati
7. sloj - Sigurnost izvornog podatkovnog sadrzaja
-Aplikacijski sloj u ISO/OSI referentnom modelu
-Sigurnosne prijetnje na aplikacijskoj razini
--Krivotvorenje DNS odgovora
--Krivotvorenje tekstualnih poruka
--Napad FTP posluzitelja (The bounce attack)
--Napadi povezani uz World Wide Web
--Presretanje i krivotvorenje SNMP paketa
--Dostupnost zaporki
--Preotimanje uspostavljene veze
--Trojanski konji
-Zastita podataka na aplikacijskoj razini
--Vanjska kontrola pristupa
--Vatrozidi
--Mrezni posrednici (proxy)
--Sigurnost na krajnjim tockama komunikacije
--Koristenje sigurne identifikacije
Uvod
U ovom tekstu mozete procitati o svi sigurnosnim aspektima vezanih uz mrezu.
Prvo sam odlucio da cu opisati sigurnosne propuste za svaki sloj ISO/OSI,
a nakon njih zastitu s kojom se smanjuje ili u potpunosti uklanja sigurnosni
rizik. Ovaj tekst napisao sam za svoj buduci seminar tako da je tekst napisan
koristeci pravilnik o pisanju seminara (prevodjenje svih eng. izraza i sl.).
Globalizacijom Interneta, te stalnim snizenjem cijena racunala, danas racunala
dostupnija su nego ikad. Potencijal takve globalne mreze ubrzo je shvacen i u
poslovnom svijetu pa je uslijedila nagla komercijalizacija.
U takvim okolnostima, sigurnost podataka na Internetu postaje, u bilo kojem
kontekstu koristenja te mreze, najvaznijim aspektom uopce. Stete koje mogu
nastati kao rezultat bilo kakvog ugrozavanja podataka dostupnih na Internetu
danas se mjere u milijardama dolara. S velikom se sigurnoscu moze tvrditi da
ne postoji racunalo s pristupom na Internet koje ne moze biti metom napada i
zato omogucavanje zadovoljavajuce razine vlastite sigurnosti mora biti imperativ
svakog umrezenog objekta, bio to pojedinac ili organizacija.
Najopcenitija definicija racunalske sigurnosti jest ona od Howard te glasi:
"Racunalska sigurnost jest sprecavanje napadaca da postigne svoje ciljeve
koristeci nedopusteni pristup ili nedopustenom upotrebom racunala i
racunalskih mreza."
Iz perspektive Interneta, zadovoljavajuca je definicija sigurnosti sadrzana
u slijedecoj recenici: "Sigurnost na Internetu je onemogucavanje napadaca da
uzrokuje stetu bilo koje vrste nad podacima dostupnim koristenjem Internet
infrastrukture."
Da bi definicija bila potpuno odredena, jos je samo potrebno defmirati i sam
pojam Interneta. U tu svrhu, Internet se moze defmirati kao:
"Globalna racunalska mreza sastavljena od medusobno povezanih elemenata
(privatnih, javnih i ostalih mreza i racunala) koji komuniciraju TCP/IP
skupom protokola".
U ovom tekstu nemoguce je prikazati sve moguce aspekte racunalske sigurnosti
tako da cu objasniti ona najpoznatija. Neki sigurnosni propusti vise nisu
aktualni, ali bitno je uhvatiti "bit" racunalne sigurnosti u mrezi.
ISO/OSI model i Internet
Internet arhitektura kakvu danas poznajemo, od samih svojih pocetaka bazira se
na TCP/IP modelu protokola, koji predstavlja de facto standard na podrucju
globalnog i lokalnog umrezavanja.
Glavna odlika TCP/IP modela i najveci razlog njegove dominantnosti jest
orijentiranost implementaciji pa su napori u razvoju modela usmjereni prema
sto boljem sudjelovanju sa sto vecim brojem razlicitih fizickih mreznih
arhitektura.
Ako bi se za TCP/IP model moglo reci da je nedovoljno promisljen ali potvrden u
praksi, za ISO/OSI model vrijedi upravo suprotna tvrdnja. Radi se, naime, o
medunarodnom de jure standardu u podrucju umrezavanja koji je, nakon nekoliko
godina razvoja, donesen 1978. godine.
Odlika je tog sedmeroslojnog modela definiranje standarda za sve komponente
mreznih arhitektura, a ne prilagodavanje postojecim sve raznolikijim rjesenjima.
Na zalost, unatoc svim prednostima ovakvog pristupa, taj model jos nije u vecoj
mjeri zazivio u implementaciji.
Sagledavanjem cinjenica iznesenih u prethodnom odjeljku, postavlja se opravdano
pitanje koji je razlog istrazivanja sigurnosti na Internetu oslanjajuci se na, u
praksi slabo koristen, ISO/OSI model umjesto na Internetu imanentni TCP/IP model.
Vec je receno da bi se potonjem mogla prigovoriti nedovoljna promisljenost.
Kompenzaciju tog nedostatka pruza upravo dobro definirani ISO/OSI model. Naime,
strogost modularnog dizajna ovog modela pruza mogucnost povlacenja funkcionalne
paralele izmedu TCP/IP i ISO/OSI baziranih mreznih arhitektura. Ta je usporedba
prikazana na sljedecoj slici. Korist od ovakvog pristupa istrazivanju Internet
sigurnosti ocituje se u laksoj i potpunijoj sistematizaciji sigurnosnih aspekata.
Dok se vecina literature koja obraduje ovo podrucje oslanja na manjkav TCP/IP model
i time najcesce ne pruza kompletan pregled svih sigurnosnih elemenata, ovaj ce se
tekst osloniti na funkcionalnu analogiju dvaju modela, te pruziti pregled
sigurnosnih prijetnji i njihovog onemogucavanja u svakom od sedam ISO/OSI slojeva.
Sigurnosni aspekti svakog od slojeva takoder su prikazani na sljedecoj slici.
-------------------------------------------------------------------------------
| |ISO/OSI sloj | TCP/IP sloj | Sigurnosni aspekt |
|-------------------------------------------------------------------------------|
| 7 | Aplikacije | Aplikacijski | Sigurnost izvornog podatkovnog sadrzaja |
|-----------------| protokoli |---------------------------------------------|
| 6 | Prikaza | (FTP, TELNET, | Sigurnost podataka u prenosnoj sintaksi |
|-----------------| SMTP,..) |---------------------------------------------|
| 5 | Sesije | | Sigurnost veze izmedu procesa |
|-------------------------------------------------------------------------------|
| 4 | Transporta | TCP, UDP | Sig. prijenosa izmedu dva krajnja racunala |
|-------------------------------------------------------------------------------|
| 3 | Mreze | IP | Sigurnost paketa u mrezi |
|-------------------------------------------------------------------------------|
| 2 | Veze | Protokoli | Sig. okvira izmedu dva susjedna rac. na vezi|
|-----------------| fizickog |---------------------------------------------|
| 1 | Fizicki | prijenosa | Sig. signala na vodu |
-------------------------------------------------------------------------------
Sigurnosni aspekt jest element mreznog protokola date razine koji je sigurnosnim
prijetnjama ugrozen ili ga se zloupotrebljava te zbog toga treba biti zasticen.
Na primjer, na najnizoj,fizickoj razini, napadac prisluskuje ili ometa prijenosni
signal, pa je prema tome sigurnost signala onaj aspekt na kojeg se treba
koncentrirati pri osiguravanju ove razine. U nastavku teksta, upravo ce sigurnosni
aspekt biti glavni kriterij svrstavanja grade u koristeni model sistematizacije.
------------------------------------------------------------------------------------
1. sloj - Sigurnost signala na vodu
Fizicki sloj u ISO/OSI referentnom modelu
Na najnizem, fizickom, sloju ISO/OSI modela nalazi se strojna oprema -spojista,
vodici i signali koji njima putuju da bi direktno povezali dvije tocke mreze.
Prijenos podataka Internetom danas se najcesce vrsi elektricnim ili svjetlosnim
signalima kroz zicane ili opticke vodove te radio ili mikrovalovima prostorom.
Svaki od ovih nacina prijenosa podlozan je opasnim sigurnosnim prijetnjama.
U razvoju TCP/IP modela ovaj je sloj bio nepromjenjiva konstanta - model se
oslanjao na fizicki sloj za obavljanje prijenosa ali nije imao ambicije baviti
se njegovom implementacijom ili razvojem. Iz tog razloga sigurnosne prijetnje
na ovoj razini nisu osobitost Interneta samog, vec svake mreze koja koristi neku
od nabrojanih tehnologija prijenosa.
Iz istog razloga, radovi koji se bave sigurnoscu na Internetu slabo ili nikako
ne obraduju ovo podrucje cime uskracuju vazan dio znanja o nacinima zastite od
napada na ovoj razini. Ipak, nedavnim saznanjima o projektu Echelon (americki
spijunski projekt globalnog prisluskivanja elektronickih komunikacija putem mreze
presretackih stanica i satelita, koristio se upravo presretanjem na fizickoj
razini, odnosno prisluskivanjem prijenosnih signala), jace se razvila svijest o
ozbiljnosti prijetnji koje dolaze s ove razine.
Globalna podjela sigurnosnih prijetnji koja ce biti koristena u ovom tekstu, na
bilo kojoj razini razlikuje dvije vrste napada:
- pasivni napadi su napadi koji se bave neovlastenim citanjem podataka
- aktivni napadi su napadi koji uzrokuju promjenu ili unistenje podataka
Na fizickoj razini, u pasivne napade se moze uvrstiti bilo koja vrsta
prisluskivanja prijenosnih signala dok se aktivnim napadima smatraju
onemogucavanje komunikacije te neovlasteno mijenjanje signala. Svaki ce od ovih
napada, kao i nacini njihovog sprecavanja, biti obradeni u nastavku.
Prisluskivanje
Prisluskivanje na fizickoj razini jest neovlasteno primanje prijenosnog signala.
U mnogim je drzavama, pa tako i u nasoj, prisluskivanje stavljeno van zakona.
Prema clanku 131. Kaznenog zakona Republike Hrvatske kaznjivo je bilo kakvo
neovlasteno prisluskivanje ili snimanje razgovora ili izjave koji su namijenjeni
nekom drugom, sto se odnosi i na racunalske podatke, odnosno poruke.
U podatkovnoj komunikaciji, napadacu nije dovoljno presresti i snimiti signal
iako je vec time pocinio kazneno djelo. Da bi uzrokovao stetu nad podacima,
on mora iz signala izdvojiti korisne informacije, dakle sadrzaj koji signal
prenosi. Iz tog se razloga tehnike prisluskivanja nikad ne koriste samostalno,
vec se kombiniraju s tehnikama koje analiziraju signal i dobivene podatke
interpretiraju kroz vise razine, a bit ce objasnjene u slijedecim poglavljima,
u sklopu razina kojima pripadaju. Ovisno o nacinu prijenosa, postoji nekoliko
tehnika prisluskivanja od kojih su neke svojom slozenoscu vrlo sofisticirane,
dok su druge vrlo jednostavne.
Presretanje elektromagnetskog zracenja
Opce je poznata cinjenica da racunalska oprema samim svojim radom emitira odredenu
kolicinu elektromagnetskog zracenja. Manje je poznata cinjenica da to zracenje,
uz odgovarajucu opremu, bilo kome moze omoguciti najneprimjetniji i time najudobniji
nacin prisluskivanja. Od mreznih komponenti koje se koriste u infrastrukturi
Interneta, najranjiviji na takav nacin napada su "inteligentni" elementi, poput
usmjerivaca, kod kojih najvecu razinu zracenja ispustaju njihovi procesni element,
te vodovi kojima prolazi elektricni signal. Nerazvijena svijest o ovoj vrsti
prijetnje uzrok je cinjenici da je danas gotovo kompletna infrastruktura Interneta
podlozna prisluskivanju presretanjem elektromagnetskog zracenja.
Elektricni signali koji putuju unutar usmjerivackih sklopova ili kroz vodove posjeduju
dvije bitne karakteristike koje uzrokuju pojacano elektromagnetsko zracenje i
olaksavaju detekciju takvog zracenja u odnosu na detekciju zracenja ostalih izvora.
Te su karakteristike:
- oblik signalnog vala - cetverokutni "square" valovi oslobadaju vece kolicine
konstantnog zracenja od nekih drugih oblika valova
- frekvencije signalnog vala suvremena oprema koristi visoke frekvencije signalnih
valova koje rezultiraju jacim zracenjem. Vjeruje se da se uspjesno presretanje
elektro magnetskog zracenja nezasticene opreme te izdvajanje korisnih podataka
moze vrsiti do udaljenosti unutar jednog kilometra od izvora.
Sljececa slika prikazuje nacin funkcioniranja ove vrste prisluskivanja
________
/ \
| Internet |
\________/
/ \
\ /
____________ / \ ____________
Mreza A -------|Usmjerivac A| |Usmjerivac B|--------------- Mreza B
|____________| |____________|
\__
/\____
/\_____
/ /\ ____________
/ \_______|Prijemnik i |
|i analizator|-->Podaci
|____________|
Sustav prisluskivanja sastoji se od tri kljucne komponente:
- antena (eksperimentalno je dokazano da se vec i obicnim antenama za prijem
zemaljskog radijskog ili televizijskog programa mogu dobiti zadovoljavajuci
rezultati. Bolji rezultati dobivaju se konstruiranjem antena koje ciljano
primaju elektromagnetske valove u podrucju nizih valnih duljina)
- radio prijemnik (iz iskustva je poznato da zracenje racunalske opreme
moze izazivati smetnje i na obicnim radio prijemnicima. Prijemnici koji se
koriste u nadzoru opremljeni sa posebnim filtrima i pojacalima koji pospjesuju
prijem valnog podrucja od interesa)
- analizator signala (najcesce je racunalo koje iz primljenih signala izdvaja
podatke)
Intruzivno prisiuskivanje signala u vodu
Intruzivno prisiuskivanje signala u vodu ostvaruje se fizickom kompromitacijom voda.
Ovisno o vrsti voda, postoje i razliciti nacini kompromitacije voda. Vodovi koji
danas cine infrastrukturu Interneta provode ili elektricne ili svjetlosne signale.
Vodove kojima putuju elektricni signali najlakse je intruzivno prisluskivati,
pogotovo ako nisu zasticeni.
Sljedeca slika prikazuje intruzivni spoj na vod kojim putuju elektricni signali.
_ spoj na vod
|
----------|----------
---------------------\
\vodic
Glavna odlika ovakvog nacina spajanja jest pasivnost, sto otezava ili onemogucava
njegovo otkrivanje jer spoj ne izaziva nikakve smetnje u radu mreze. Elektricni
signal se jednostavno grana i putuje do odredista neometan, dok napadac isti taj
signal takoder neometano prima. Nakon toga, pretvaranjem signala u podatke i raznim
protokol analizama vise razine, napadac ga lako moze koristiti da neovlasteno pribavi
bilo kakvu informaciju koja putuje vodom.
Opticke je vodove takoder moguce intruzivno prisluskivati. U tu svrhu, postoje dva
razlicita pristupa prisluskivanju. Oba su nacina prikazana na sljedecoj slici.
_ spoj na opticki vodic
|
----------°----------
---------------------\
\ opticki vodic
Prvi nacin kradja signala
ulaz izlaz
_|___|_
--------|_| |_|----------
--------|_______|----------\
\ opticki vodic
Drugi nacin umetanje aktivnog elementa
Prisluskivanje umetanjem aktivnog elementa je destruktivniji od dvaju nacina.
Ostvaruje se potpunim fizickim prekidanjem voda. Oba se prekinuta kraja tada spajaju
na aktivni element. Aktivni je element zapravo prijemnik i predajnik u jednom, pri
cemu je zadatak predajnika ponavljati primljeni signal bez promjene. Signal iz
prijemnika, uz prosljedbu predajniku, takoder putuje i do napadaca i njegove opreme
omogucujuci mu neovlasteni pristup podacima.
Drugi bi se nacin prisluskivanja optickog voda mogao nazvati i "kradjom" signala.
Moguce je, naime, zarezivanjem ovojnice voda doprijeti do samih optickih vlakana,
bez njihova ostecivanja. Stavljanjem detektora na mjesto te vrste intruzije,
omogucava se nesmetan promet vodom (odnosno, normalan lom svjetla u vodu) uz
istovremeno osiguran neovlasten pristup signalu. Teskoca je ovog pristupa velika
kompleksnost detektora koji mora biti i dovoljno osjetljiv i dovoljno tocan da bez
gresaka rekonstruira signal u vodu.
Prisluskivanje radio signala i mikrovalova
Najlaksi je nacin prisluskivanja presretanje signala koji putuju prostorom.
Metama takvih napada mogu biti sve vrste bezicnih veza, od bezicnih lokalnih mreza
do satelitskih veza. Postupci i oprema koja se koristi za takvu vrstu prisluskivanja
jednostavni su i gotovo jednaki bez obzira o kakvim se signalima radi.
Kljucni dio opreme cini antena. Usmjerene antene, u zargonu nazvane "ribljom kosti"
koriste se u prisluskivanju usmjerenih ili geografski ogranicenih signala koje
generiraju mikrovalne veze ili bezicne lokalne mreze. Sirokopojasne antene se koriste
za prijem signala koji se slobodno sire prostorom, kao sto su radio signali.
Jednom primljen signal dalje se, uz znanje o njegovim karakteristikama (frekvencija,
nacini modulacije i slicno), lako pretvara u podatke koji se mogu dalje analizirati.
Ometanje i onemogucavanje komunikacije
Najjednostavniji nacin ugrozavanja podataka na Internetu je onemogucavanje komunikacije.
To je vrsta aktivnog napada koju bi se moglo nazvati "mreznim vandalizmom" jer se cesto
koristi destruktivnim metodama u postizanju svojih ciljeva. Ovisno o vrsti mrezne
infrastrukture koja se napada, te se metode razlikuju, ali im je zajednicka
karakteristika da su vrlo jednostavne. Pri tome se najcesce napada medij, odnosno vod
kojim putuje signal.
Onemoguciti komunikaciju vodom najlakse je nasilnim prekidom ili unistenjem voda.
Drugi je nacin onemogucavanja intenzivnim ometanjem, na sto su ranjivi vodovi koji
prenose elektricne signale. Ispostavljanje takvog voda jakom magnetskom zracenju
destruktivno utjece na signal koji njime putuje cime se otezava i na kraju onemogucava
komunikacija.
Onemoguciti komunikaciju bezicnom vezom, radio ili mikrovalovima, takoder nije tesko.
Emitiranjem slucajnog signala u frekvencijskom podrucju signala veze, veza ce postati
neucinkovita zbog smetnji ili ce biti potpuno prekinuta. Pri tome se najveci efekt
postize usmjerenim odasiljanjem prema prijemniku ili predajniku.
Posebne vrste potpuno usmjerenih bezicnih veza, kao sto je laserska veza, zahtijevaju
opticku vidljivost izmedu predajnika i prijemnika. Trivijalan je nacin onemogucavanja
takve veze postavljanjem prepreke na put signala. Utjecajem na medij (zrak), najcesce
zagrijavanjem, u blizini predajnika ili prijemnika, moze se postici skretanje usmjerene
zrake i prekid veze.
Neovlasteno mijenjanje signala
Na fizickoj razini ISO/OSI referentnog modela teoretski je moguce neovlasteno mijenjati
prijenosni signal. Medutim, puko mijenjanje signala, bez mijenjanja podataka i na visim
razinama, pripadalo bi u kategoriju ometanja i onemogucavanja komunikacije.
Stoga je neovlasteno mijenjanje signala u smislu krivotvorenja podataka na fizickoj
razini samo posljedica neovlastenog mijenjanja podataka na visim razinama.
Drugim rijecima, krivotvorenje podataka inherentno uzrokuje i promjenu signala koji te
podatke prenosi.
Gledajuci fizicki spoj na mrezu, mijenjanje signala obavlja se slicnim, ranije opisanim,
nacinima kojima se vrsi i njegovo prisluskivanje. Jedina je razlika ta sto se, u ovom
slucaju, u mrezu neovlasteno ubacuje signal koji predstavlja neke podatke, dakle napad
je aktivnog tipa, za razliku od prisluskivanja koje pripada pasivnim napadima.
Zbog toga je mijenjati signal teze.
Prakticna izvedivost neovlastenog mijenjanja signaia ovisna je o nacinima prijenosa i
vrsti protokola visih razina. Posto nas na ovoj razini zanimaju samo nacini fizickog
prijenosa, u slijedecim odjeljcima ukratko ce biti obradene mogucnosti neovlastenog
mijenjanja signala s obzirom na taj aspekt.
Najlaksi nacin uvodenja izmijenjenog signala u mrezu je putem vodova, bilo da je rijec
o koaksijalnim vodovima, paricama ili optickim vlaknima. Nakon fizickog prekidanja voda,
spajanje strojne komponente koja je u mogucnosti tim vodom prenositi identican signal
kakav po njemu vec putuje je trivijalno i opisano prije, u dijelu teksta koji se bavi
intruzivnim prisluskivanjem.
Kada se radi o bezicnom prijenosu, jednostavnost ovisi o prirodi prijenosnog vala.
U slucaju usmjerenog vala, koji se najcesce koristi u prijenosima putem lasera ili
infracrvenog svjetla, zadatak napadaca takoder nije tezak. U takvim je slucajevima
najcesci zahtjev opticka vidljivost na relaciji predajnik-prijemnik sto ostavlja
mogucnost da se direktno na put signala postavi prepreka koja istodobno sprecava
prolaz originalnom signalu i generira lazni signal. U slucaju djelomicno usmjerenih
ili neusmjerenih valova, primjerice radio i mikrovalova, napad neovlastenim mijenjanjem
signala je teoretski moguc, ali u praksi tesko izvediv.
Zastita podataka na fizickoj razini
Zastita visih razina
Prije iznosenja glavnih nacina zastite podataka od napada na fizickoj razini,
potrebno je naglasiti da niti jedan od njih nije potpuno siguran i ne garantira
podacima sigurnost u prijenosu. Namjera ovog kratkog odjeljka je upozoriti da se
samo kombiniranjem mjera zastite po sto vecem broju mreznih razina moze osigurati
zadovoljavajuca zastita. Sve ce najcesce koristene i najucinkovitije tehnike zastite
biti obradene u nastavku teksta, prema mreznoj razini na kojoj djeluju.
Eliminacija elektromagnetske radijacije
Americka je Vlada rano uvidjela opasnosti od ugrozavanja sigurnosti presretanjem
elektromagnetskog zracenja. Rezultat je toga tajni projekt, kodnog imena "TEMPEST",
koji se koncentrirao na pronalazenje ucinkovitih nacina osiguranja od spomenute
prijetnje. Tehnologija dobivena istrazivanjem ovog podrucja danas se vecinom koristi u
zastiti vojnih i ostalih podataka vaznih za americku nacionalnu sigurnost, a ponekad
i za hvatanje hakera, (kad koriste "neprobojne" algoritme poput PGP).
Iako civilnim korisnicima tehnologija "TEMPEST" projekta nije dostupna, pridrzavanje
nekih smjernica pri nabavci i instaliranju mrezne opreme moze znacajno smanjiti
rizik od prisluskivanja presretanjem elektromagnetskog zracenja.
Zastita prikupljena iz razlicitih izvora, naveden je u nastavku:
- pridrzavanje standarda o dopustenom zracenju -- vecina opreme nosi
deklaraciju o zadovoljavanju nekog americkog standarda o dopustenom
zracenju, pri cemu oprema koja zadovoljava najstrozi (FCC Class "B")
standard posjeduje, za civilne svrhe, dovoljnu sigurnost od prisluskivanja
- upotreba oklopljenih vodica - vodici koji su dodatno zasticeni, najcesce
metalnom folijom, oslobadaju manju kolicinu zracenja koju je teze detektirati
- ugradnja filtera - filteri razlicitih vrsta mogu se ugraditi na spojeve s
vodovima kako bi eliminirali prenosenje elektromagnetskog zracenja kroz
vodove napajanja ili mrezne veze, kao i telefonske vodove
- koristenje feritnih jezgri - omotavanjem duzih vodica oko feritnih jezgri
njihovo se zracenje trosi zagrijavanjem u samom materijalu i tako velikim
dijelom eliminira
-uzemljenje - uzemljenje za elektromagnetska zracenja ucinkovit je nacin
njihove eliminacije, ali i vrlo tezak za implementaciju jer mora djelovati na
sto vecu kolicinu zracenja koje pokriva vrlo sirok spektar
Zastita signala u vodovima
Zastita prijenosnih vodova nije uvijek lagan zadatak i, na zalost, ne ovisi o krajnjem
korisniku osobi direktno zainteresiranoj da podaci budu sigurni. Komercijalnim tvrtkama,
vlasnicima vodova, u interesu jest njihova zastita od unistenja, ali nedovoljna se paznja
posvecuje zastiti signala koji njima putuju, posebno od prisluskivanja.
Odreden splet okolnosti ipak, na srecu, diktira rastucu razinu zastite signala u vodovima.
Tehnoloski je razvoj u posljednjem desetljecu za glavni prijenosni medij odredio opticka
vlakna. Ucinak na povecanu razinu zastite signala koja se dobiva koristenjem optickih
vlakana je dvojak:
- prijenos svjetlosnim zracenjem znaci eliminaciju elektromagnetskog zracenja koje se
moze presresti u svrhu prisluskivanja. Uz to, na minimum je smanjena i mogucnost
intruzivnog prisluskivanja
- osjetljivost vlakana uvjetuje, za sigurnost, bolje uvjete njihova postavljanja.
Vodovi se najcesce postavljaju podzemno gdje su tesko dostupni napadacima i zasticeni
su posebnim zastitnim cijevima.
Uz koristenje optickih vlakana i otezavanje dostupa vodovima, u okolinama gdje se
zahtijeva sigurnost najvise razine, moguce je vodove postaviti unutar posebnih cijevi
pod pritiskom. U kombinaciji sa senzorima za otkrivanje promjena u pritisku unutar
takvih cijevi, ovaj pristup cini najsigurniji nacin zastite vodova koji je, medutim,
vrlo skup za implementaciju, i tako nedostupan za siroku upotrebu.
Zastita bezicnih veza
Raznolikost nacina bezicnog povezivanja pruza velik izbor pri ostvarenju bezicnih veza.
Bezicne veze nisu samo 802.11x (x prestavlja sve trenutne i buduce standarde) vec sve
sto putuje ne zizanim vodovima. Detalje o bezicnim mrezama 802.11x mozete procitati u
prvom broju phearless zine "Wireless: Under the hood by argv". Samo da napomenem
da malo prije spomenuti tekst objasnjava sniffanje bezicnih mreza i to ne spada u
prvi sloj vec cetvrti sloj ISO/OSI referetnog modela.
Ovdje cu objasniti bezicnu infracvenu i radio komunikaciju (koristi vojska).
Sa sigurnosnog aspekta, povoljni nacini povezivanja dani su u obliku smjernica u
slijedecim odjeljcima.
Za povezivanje geografski razdvojenih lokacija najbolje je koristiti usmjerene veze.
Pri tome su najpogodnije pravocrtne usmjerene veze koje zahtijevaju opticku vidljivost,
kao sto je laserska veza. Takve je veze nemoguce neopazeno prisluskivati ili ometati
jer je svaka prepreka na putu signala, postavljena u tu svrhu, vidljiva golim okom i
lako uklonjiva. Ukoliko konfiguracija terena ili udaljenost ne dopustaju upotrebu
ovakve veze, neizbjezno je koristiti radio ili mikrovalove. Povecanu razinu sigurnosti
takve komunikacije pruza koristenje sirokog spektra frekvencija i preskakanje
frekvencijskih podrucja.
Princip na kojem radi ova tehnologija jednostavan je. Ukupan frekvencijski opseg
koji je dostupan za upotrebu, dijeli se na nekoliko frekvencijskih pojaseva.
Predajnik, prema nekom odredenom kljucu, svaki od tih pojaseva koristi u nekom
kratkom vemenskom intervalu za odasiljanje. Po isteku intervala, predajnik "preskace"
na drugi frekvencijski pojas. Pozitivni sigurnosni pomaci dobiveni koristenjem ovih
tehnologija ocituju se u dva aspekta:
- otezano ometanje - tehnologija dopusta da se frekvencijski pojasevi u kojima su
prisutne smetnje iskljuce iz upotrebe, ili, u slucaju nestanka smetnji, ponovo
ukljuce
- otezano prisluskivanje - nacin i raspored upotrebe frekvencijskih pojaseva u
komunikaciji poznat je samo predajniku i prijemniku, a bez tih podataka
rekonstrukcija originalnog signala nije moguca vec on primatelju izgleda poput
uobicajenog suma u datom opsegu, odnosno smetnje.
U lokalnom je umrezavanju, postoji li mogucnost prisluskivanja izvana,
preporucljivo koristiti bezicnu, infracrvenu komunikaciju. Infracrveni valovi
imaju mali domet i ne prolaze kroz cvrste objekte kao sto su zidovi, pa ih se,
za razliku od elektromagnetskih valova, ne moze presresti u svrhu prisluskivanja.
Ukoliko komunikacija bazirana na infracrvenim valovima nije moguca, druga
mogucnost sastoji se u koristenju bezicne radio komunikacije koja koristi
preskakanje frekvencija i opisana je maloprije.
Svakim danom pojavljuju se nove bezicne tehnologije koje pruzaju neke nove
mogucnosti jedna od njih je Bluetooth, a sigurno ce ih biti jos.
------------------------------------------------------------------------------------
2. Sloj - Sigurnost okvira izmedu dva susjedna racunala na vezi
Sloj podatkovne veze u ISO/OSI referentnom modelu
Sloj podatkovne veze, zajedno sa fizickim slojem ISO/OSI modela, u TCP/IP okolini
cini najnizu razinu. Za razliku od fizickog sloja, specifikacijama nekih Internet
protokola obuhvacen je i sloj veze.
Prema ISO/OSI referentnom modelu, sloj veze pruza visim razinama pouzdan prijenos
podataka obavljajuci formatiranje podataka u okvire, detekciju gresaka i
retransmisiju podataka u slucaju greske. Prijenos podataka moze teci ili putem
uspostavljene veze pri cemu su podaci preneseni vezom logicki povezani, ili bez
uspostavljanja veze, pri cemu se svaki okvir smatra samostalnim. Protokoli ovog
sloja podatke prenose izmedju izvora i odredista koji su elementi iste fizicke
mreze.
U skupu protokola razvijenih za koristenje na Internetu, jedan se vazan protokol
nalazi bas na drugoj razini ISO/OSI referentnog modela. Taj je protokol nazvan
"Point to point protocol", ili skraceno PPP, a danas se koristi kako u povezivanju
krajnjih korisnika putem javnih telefonskih mreza na Internet.
Ostali protokoli koji nisu razvijeni za Internet upotrebu, ali se koriste u tu
svrhu ukljucuju protokole lokalnih mreza. Protokoli lokalnih mreza koriste se na
rubnim mrezama Interneta, srodni su i razlikuju se u ovisnosti o standardu za
umrezavanje koji se koristi.
Sigurnosne prijetnje na razini podatkovne veze
Neovlasteni prijem okvira
Masovno koristeni pasivni napad na sigurnost podataka na Internetu jest
neovlasteni prijem okvira. Taj je napad moguc na rubnim mrezama Interneta,
odnosno lokalnim mrezama i uvjetovan je trenutno vazecim specifikacijama i
zahtjevima koje mora ispuniti oprema za lokalno umrezavanje. Osjetljivost
na ovaj napad iskazuju kako mreze ostvarene vodovima, tako i one bezicne.
Put signala kroz lokalnu mrezu odreden je njenom topologijom. Osnovni
topoloski oblici koji dopustaju ovu vrstu napada u lokalnim mrezama su mreze
spojene u prsten, te mreze povezane preko zajednicke sabrisnice.
Kako za prstenasti, tako i za sabirni oblik topologije, karakteristicna
je osobina da sve mrezne stanice povezuje samo jedan logicki komunikacijski
kanal. Direktna je posljedica te cinjenice, kao i prirode sirenja elektricnog
signala, da signal koji prenosi podatke dopire u sve dijelove mreznog voda.
Iz tog razloga, podatkovni okviri prolaze cijelom duljinom lokalne mreze,
cime postaju dostupni bilo kojoj mreznoj stanici spojenoj na istu mrezu ili
mrezni segment. Strojna komponenta koja vrsi ulogu sucelja prema lokalnoj
mrezi u normalnom rezimu rada sve okvire koji u sebi nose njenu adresu zaprima
i prosljeduje na dodatnu obradu visim mreznim razinama, dok okvire koji sadrze
druge adrese jednostavno ignorira. Ta metoda jos je poznata kao "Ethernet
sniffing" ili skraceno Sniffing". Dodatni rezim rada koji sve standardne
komponente tog tipa podrzavaju je i tzv. "promiskuitetni rezim".
Detalje kako napisati sniffer pogledajte u prvom phearless zine "The Art of
Sniffing by BaCkSpAcE"
__________ __________
|Racunalo B| |Racunalo D|
|__________| |__________|
\ /
\ /
\ /
__________ \ / __________
|Racunalo c|/___________\____________________/_______|Racunalo A|
|__________|\ |__________|
Racunalo C radi Rac. A salje podatke Rac. B
u promiskuitnom Rac. A salje podatke Rac. D
rezimu rada prima pakete
namjenjene Rac. B i D
Mrezna komponenta koja radi u promiskuitetnom rezimu prosljeduje visim razinama
sve okvire ne obaziruci se na odredisnu adresu prisutnu u primljenim okvirima.
Takav je rezim rada uveden kako bi mrezni administrator s jednog mjesta mogao
nadzirati cjelokupan mrezni promet i tako ucinkovitije uklanjati probleme.
Na zalost, losa je posljedica istog ta da svaki korisnik mreze moze, koristeci
promiskuitetni rezim rada na mreznoj komponenti svojeg racunala, prisluskivati
sav promet bio on za to ovlasten ili ne. Pri tome on iz dobivenih okvira moze
izdvajati podatke najvise razine kao sto su zaporke ili moze informacijski
sadrzaj okvira dalje analizirati kako bi dobio podatke o protokolima visih razina
i informacije o mreznim transakcijama.
Krivotvorenje okvira (hardware address spoofing)
Aktivna varijanta neovlastenog prijema okvira jest njihovo krivotvorenje.
Pri tome se krivotvorenje sastoji od dvije komponente:
- krivotvorenje izvorisne strojne (MAC) adrese
- krivotvorenje informacijskog sadrzaja
__________
________________|Racunalo B|_____________
| |__________| |
| |
| |
________|_ krivotvoreni okvir __|_______
|Racunalo A|/===================================|Napadac |
|__________|\ |Cilj A|Izvor B|Podaci| |__________|
|______|_______|______|
Vecina komponenti mreznog sucelja dozvoljava programsko mijenjanje izvorisnih
adresa u okvirima koje salju. Tu mogucnost koriste neka programska rjesenja koja,
izvrsavajuci se na osobnom racunalu s dvije komponente mreznog sucelja,
obavljaju ulogu mreznog mosta. Na zalost, zloubotrebom iste mogucnosti nastaju
ozbiljni sigurnosni problemi, koji se ocituju prvenstveno na visim razinama kao
posljedica krivotvorenja informacijskog sadrzaja okvira. Najlaksi nacin opisivanja
ove vrste napada je nabrajanjem koraka koje treba obaviti da bi napad bio uspjesan.
U ovom slucaju, ti su koraci kako slijedi:
1. Napadac isprva neovlasteno prima okvire i iz njih dobiva informacije o strojnim
(MAC) adresama izvorisnog i odredisnog racunala koja medusobno komuniciraju
izvrsavajuci neku operaciju, kao i informacije o protokolima vise razine kojima
se ta komunikacija odvija.
2. U pogodnom trenutku, napadacevo racunalo salje okvir odredisnom racunalu.
Izvorisna adresa tog okvira je krivotvorena i nosi adresu pravog izvorisnog racunala.
Informacijski dio okvira sadrzi podatke u nekom visem protokolu.
3. Odredisno racunalo prima okvir, prema izvorisnoj adresi pretpostavlja da je okvir
dosao od izvorisnog racunala i izvrsava trazenu, najcesce po sigurnost stetnu, akciju.
Manifestacije napada koje ovom tehnikom mogu biti izazvane na visim razinama mreznog
modela su brojne, i bit ce opisane u slijedecim poglavljima.
Sigurnosni problemi Point to point protokola
PPP jest jedan od protokola koji je razvijen kako bi se koristio bas na Internetu.
Specifikacije ovog protokola javno su dostupne i detaljno izradene. Problem koji se
negativno odrazava na sigurnost koristenja ovog protokola jest kompleksnost njegove
implementacije.
Za razliku od protokola podatkovne veze koji se distribuiraju uprogramirani u mreznu
opremu, PPP se najcesce izvodi od strane glavnog procesora neke mrezne stanice ili
servera. Implementacija tog protokola obavlja se u velikom broju slucajeva od strane
proizvodaca operacijskog sustava koji se na doticnom racunalu izvodi. Izvorni kod
protokola pri tome postaje dio ukupne mase izvornih kodova kompletnog operacijskog
sustava i kao takav objekt kontinuirane dorade. Nije neobicno da se takvim
doradivanjem u kodu pojave greske koje, zbog prirode svojeg zadatka, ugrozavaju
sigurnost racunala na kojima se kod izvrsava. Takve greske cesce se pojavljuju u
razvoju programske opreme, ali niti proizvodaci strojne opreme koji kod ugraduju
direktno u svoje komponente nisu na njih imuni. U proslosti zbog razlicitih
implementacija ovog protokola bila su poznata dva ozbiljna sigurnosna problema:
- problem prepunjavanja privremenih memorijskih spremista ("buffera")
mogao je uzrokovati rusenje izvrsne verzije implementacije protokola ili
cijelog racunala. Jedan od, na Internetu cesce koristenih, operacijskih
sustava, FreeBSD, patio je od ove greske,
- problem nekorektne implementacije autentikacije na razini PPP-a
omogucavao je spajanje dva razlicita korisnika na istu (izvorisnu) stranu
visedijelne logicke veze. PPP, naime, omogucuje uspostavljanje jedne
logicke veze koristenjem vise fizickih veza (primjerice, koristenjem dva
para modema). Problem koji se javljao u spomenutoj implementaciji
omogucavao je bilo kojem od te dvojice korisnika prekidanje veze
preostalog korisnika. Tu su gresku posjedovale implementacije protokola u
pristupnim modemskim posluziteljima tvrtke Ascend koji su takoder cesto
koristeni od strane pruzatelja usluga Internet pristupa.
Zastita podataka na razini podatkovne veze
Segmentacija mreze
Jedan od jednostavnijih nacina smanjivanja rizika od nastajanja steta uzrokovanih
neovlastenim prijemom okvira jest segmentacija mreze. Mrezni segment cini odreden
broj racunala koja dijele isti kanal i mogu vidjeti isti sadrzaj mreznog prometa.
Razbijanje jedinstvene fizicke mreze na vise segmenata postize se postavljanjem
odredenih mreznih komponenti na mjesta u mrezi koja su odredena da budu spojisne
tocke izmedu segmenata.
Komponente koje se koriste u segmentaciji lokalnih mreza su mrezni mostovi i
prespojnici (switch ili bridge). Zajednicka je karakteristika ovih komponenata da
izmedu segmenata propustaju samo okvire koji su namijenjeni komunikaciji racunala
smjestenih na dva raziicita segmenta. Okviri koje za komunikaciju koriste racunala
smjestena na istom segmentu, ne prenose se u drugim segmentima i za tamosnja su
racunala nevidljivi. Takvim nacinom rada ne narusavaju fizicku cjelovitost mreze
jer je svakom racunalu dopusteno komunicirati s bilo kojim drugim racunalom, bez
obzira kojem segmentu pripada, ali povecavaju sigurnost jer je broj okvira koje
svako pojedino racunalo moze neovlasteno primiti smanjen. Idealan je slucaj kada
je taj broj jednak nuli, i postize se koristenjem prespojnika i zvjezdaste topologije.
Takav je slucaj prikazan na sljedecoj slici.
__________ __________
|Racunalo C| |Racunalo B|
|__________| |__________|
\ /
\ /
\ /
__________ \ / __________
|Racunalo D|____________\__/____________|Racunalo A|
|__________| |__|prespojnik |__________|
/ \
/ \
/ \
/ \
____/_____ _\________
|Racunalo E| |Racunalo F|
|__________| |__________|
Zvjezdasta mrezna topologija uz koristenje prespojnika
Ovakvo rjesenje prakticno znaci da svaki segment mreze sadrzi samo jedno
racunalo. Prespojnik pri komunikaciji izmedu dva racunala uspostavlja direktnu
vezu izmedu njihovih segmenata kojom putuju okviri. Ostali su segmenti, odnosno
racunala, fizicki odvojeni od te veze.
U praksi, gore opisano idealno rjesenje nije u velikom broju slucajeva moguce
postici, sto zbog prakticnih razloga - kao sto je prevelik broj racunala u mrezi,
sto zbog ekonomskih razloga - kao sto je potreba da se drugacijom implementacijom
mreze postigne usteda u novcu. Kompromisno rjesenje koje se u takvim prilikama mora
prihvatiti jest kreiranje mreznih segmenata s vise racunala. Kljucno pitanje na koje
se pri tome mora odgovoriti jest pitanje povjerenja. Korisnici racunala na istom
segmentu moraju moci imati povjerenja u druge korisnike na istom segmentu te moraju
biti sigurni da njihovi podaci nece biti ugrozeni neovlastenim prijemom okvira,
ili svi podaci koji putuju tim segmentom moraju biti takvog karaktera da nisu tajni
za bilo kojeg korisnika na istom segmentu. Uz to, potrebno je i fizicki onemoguciti
pristup takvim segmentima, uklanjanjem suvisnih mreznih uticnica i slicnim mjerama.
Koristenje filtrirajuce mrezne opreme
Cak na izgleda ovaj idealni zvijezdasti model moguce je kompromitirati, ako se
nedovoljno konfigurira preklopnik. Preklopnik sadrzi tablicu okvira i IP adresa
svih racunala. Filtrirajuci preklopnik naime, ima mogucnost programiranja strojnih
(MAC) adresa ciji promet smiju propustati na svojim odredenim spojnim mjestima.
Na taj nacin propustao bi samo okvire cija izvorisna strojna (MAC) adresa odgovara
adresama mreznih komponenti koje se nalaze na toj razini.
Namjernim prepunjavanjem te tablice moguce je preklopnik natjerati da se
ponasa kao hub. Vecina danasnih preklopnika ima mogucnost zakljucavanja pisanja
u tablicu s cim se uklanja propust prepunjavanjem tablice. Ponekad u velikim mreza
zakljucavanje tablice onemogucuje spajanje novih racunala na mrezu, bez intervencije
administratora. Promjenom racunala ili dodavanjem novih uvijek je potrebno upisati
njegove vrijednost u tablicu u preklopniku. Sto moze biti veliki problem ako su
promjene ceste, ali na mjestima gdje je potrebna maksimalna sigurnost npr. banke,
vojne ustanove, tajne sluzbe preporuca se zakljucavanje tablice u preklopniku.
Koristenje nestandardnih mreznih komponenti
Masovna proizvodnja komponenti mreznog sucelja ne poznaje pojam proizvodnje
nestandardnih komponenti. Ipak, greskama u proizvodnji, i nestandardne se
komponente mogu naci na trzistu. U smislu zastite i sigurnosti, najzanimljivije
su komponente kojima je proizvodnom pogreskom onemogucen promiskuitetni rezim rada.
Proizvodaci nece takav nedostatak svojeg proizvoda oglasavati kao prednost, ili ga
nece uopce oglasavati. Najlaksi nacin dobivanja popisa modela mreznih komponenti
koji su proizvedeni s takvom greskom jest proucavanjem dokumentacije koja dolazi
uz programe analizatore mreznog prometa. Naime, da bi administratorima olaksali
odrzavanje mreza, mnoge su tvrtke napisale programe koji koristeci upravo
promiskuitetni rezim rada analiziraju ukupan mrezni promet po svim mreznim
razinama od razine podatkovne veze navise. U dokumentaciju takvih programa obavezno
je ukljucen i popis mreznih komponenti s kojima programi ne mogu raditi. U vecini
slucajeva, razlog toj nemogucnosti je upravo spomenuta pogreska u proizvodnji.
Skuplje rjesenje jest nabaviti komponente konstruirane za povecanu sigurnost.
Osobine koje takve komponente nude ukljucuju i zaporkama zasticen promiskuitetni
rezim rada. Odredene komponente, i to vrlo cesto one koje se koriste u bezicnom
umrezavanju, vrse sifriranje informacijskog sadrzaja okvira. Ostale sigurnosne
osobine ovise o proizvodacima i modelima komponenata, te opcenito pruzaju dovoljnu
razinu sigurnosti bez da stete ukupnoj funkcionalnosti komponente.
Pracenje sigurnosnih izvjesca
Kao sto je u ranijem tekstu bilo obrazlozeno, kompleksnost i razlicitost
implementacija Point to point protokola moze uzrokovati greske koje izazivaju
razne sigurnosne probleme. Ta opaska vrijedi ne samo za PPP, vec za bilo koji
Internet protokol vise razine.
Nacin na koji se mogu smanjiti rizici jest redovito pracenje raznih sigurnosnih
izvjesca. Savjesni korisnici koji otkriju gresku u implementaciji protokola cesto
salju izvjesca na neki od specijaliziranih web servera posvecenih sigurnosti.
Sami proizvodaci takoder objavljuju izvjesca i programske ispravke.
Podaci o programskim komponentama, verzijama, proizvodacima te lokacijama na kojima
se moze doci do informacija o sigurnosnim problemima i njihovom rjesavanju
nezaobilazan su faktor sigurnog administriranja mreze. Jedna od najsadrzajnijih
lokacija na Internetu koja nudi ove informacije je "Security Focus"
ciji je URL http://www.securityfocus.com.
------------------------------------------------------------------------------------
3. sloj - Sigurnost paketa u mrezi
Sloj mreze u ISO/OSI referentnom modelu
Zadatak trece razine ISO/OSI referentnog modela, odnosno sloja mreze, jest
komunicirati podatke izmedu dva entiteta vise mrezne razine, razine transporta.
Pri tome protokoli ove razine od vaznijih zadataka obavljaju mrezno usmjeravanje
i brinu se o adresiranju. Zbog razlicitih osobina krajnjih sustava koje takvi
protokoli povezuju oni moraju voditi racuna i o kontroli toka, te o zakrcenosti
mreznih veza. Protokolima vise razine, a zbog duzih vremena prijenosa podataka i
nize brzine, oni mogu ponuditi komunikaciju uspostavljanjem logicke veze izmedu
krajnjih tocaka.
Protokol mrezne razine koji se koristi u komunikaciji na Internetu nazvan je
jednostavno Internet protokolom, skraceno - IP. On obavlja vecinu gore nabrojanih
funkcija uz dodatak mogucnosti fragmentacije i ponovnog sastavljanja podataka
uzrokovanog razlicitim dopustenim maksimalnim velicinama podatkovnih jedinica
prolaznih i krajnjih mreza.
Sastavni dio implementacije Internet protokola je i Internet Control Message
Protocol (ICMP). Prema Halsallu, zadaci koje ICMP obavlja su slijedeci:
- prijavljivanje gresaka
- testiranje dostupnosti
- kontrola zakrcenja veza
- obavjestavanje o promjenama u usmjeravanju
- mjerenje performansi
- adresiranje podmreza
Address Resolution protokol (ARP) obavlja jednostavniji zadatak i sluzi kao neka
vrsta poveznice izmedu razine mreze i razine podatkovne veze. Njegov je zadatak
pronaci strojnu (MAC) adresu komponenti mreznog sucelja na osnovu poznate mrezne
(IP) adrese istih komponenti. Prema Atkins, ovaj protokol nije dio IP-a vec je
dio protokola sloja podatkovne veze, medutim u literaturi se opisuje u sklopu
protokola mrezne razine, pa ce tako biti i u ovom radu. Protokol koji obavlja
obrnutu operaciju, odnosno pronalazi IP adresu na osnovu strojne (MAC) adrese
nazvan je Reverse Address Resolution Protocol (RARP).
Ostali protokoli koji djeluju na ovoj razini koriste se iskljucivo pri
usmjeravanju. Interior Gateway protokoli (IGP) koriste se za usmjeravanje unutar
mreza za ciju je administraciju odgovoran isti autoritet. Najpoznatiji i
najkoristeniji protokol te vrste je Routing Information Protocol (RIP).
Exterior Gateway protokoli (EGP) koriste se za usmjeravanje izmedu mreza koje
administriraju razliciti autoriteti.
Sigurnosne prijetnje na mreznoj razini
Krivotvorenje ARP poruka
Krivotvorenje ARP poruka direktna je posljedica krivotvorenja mrezne, IP adrese te
nacina rada ARP protokola. Taj se rad najbolje moze ilustrirati kroz opceniti primjer.
Pretpostavimo da izvorisno racunalo (Rac A) zeli odredisnom racunalu (Rac B) na istoj
mrezi poslati neke podatke. Rac A posjeduje IP adresu od Rac B, a da bi saznalo
strojnu (MAC) adresu od Rac B, Rac A ce, koristeci ARP poruke, te provesti ovakav
postupak:
1. Svim racunalima u mrezi poslat ce ARP poruku koja sadrzi IP adresu i
zahtjev za strojnom (MAC) adresom Rac B, ciju ce IP adresu ukljuciti u upit
2. Rac B ce, vidjevsi da se trazi njegova strojna (MAC) adresa, vratiti poruku
koja tu adresu sadrzi natrag do Rac A. Nakon sto tu poruku primi, Rac A ce
dodati par kojeg cine strojna (MAC) i IP adresa od Rac B u svoje privremeno
spremiste.
3. Po isteku odredenog vremena, neupotrebljavani parovi strojne (MAC) i IP
adrese se brisu iz privremenog spremista na Rac A i postupak se, prema potrebi,
ponavlja.
Ranjivost ovakvog izvrsavanja protokola lezi u drugom koraku. U slucaju da racunalo
primi dva odgovora koja za istu IP adresu daju dvije razlicite strojne (MAC) adrese,
a u implementaciji ARP-a nije prisutna dodatna procedura koja ce provjeravati
duplikate, ono ce konflikt rijesiti na jedan od dva nacina:
1. u privremeno spremiste spremit ce posljednji dobiveni par adresa, prepisujuci ga
preko vec postojeceg para s istom IP adresom;
2. ukoliko u spremistu vec postoji par s trazenom IP adresom, poruku s novim
podacima ce ignorirati.
Informacija o nacinu na koji racunalo rjesava ovaj konflikt omogucuje napadacu da
odgovor sa zeljenim parom adresa, koje ce sav promet namijenjem tudoj IP adresi
preusmjeriti na njegovo racunalo, posalje ili prije odgovora autenticnog racunala,
ili neposredno poslije. Jos je jednostavnije odgovor poslati umjesto autenticnog
racunala, njegovim gasenjem ili iskljucivanjem iz mreze, ako je to moguce.
Ova vrsta napada naziva "ARP spoofing".
Krivotvorenje usmjerivackih poruka
Usmjeravanje prometa na mreznoj razini vrse svi elementi koji su na toj razini
aktivni. Usmjeravanje se obavlja oslanjanjem na IP adrese prisutne u paketima.
Racunalo promet koji je namijenjen odredistima na istoj mrezi salje direktno
koristeci njihove strojne (MAC) adrese. Promet namijenjen odredistima u drugim
mrezama prosljeduje se usmjerivacu koji je zaduzen za direktan prijenos do
doticne odredisne mreze, ili pak podrazumijevanom usmjerivacu, ako nije poznat
usmjerivac koji bi direktno mogao obaviti prijenos. Krivotvorenjem usmjerivackih
poruka (route spoofing), koje se moze izvrsiti na nekoliko nacina, mrezni se
elementi navode da promet usmjeravaju putevima koji nisu za to namijenjeni.
Krivotvorenje ICMP redirekcijskih poruka
U kratkom opisu zadataka koje izvrsava ICMP bilo je spomenuto i obavjestavanje o
promjenama u usmjeravanju. ICMP poruke te vrste zovu se poruke redirekcije i nose
informaciju o adresi usmjerivaca koji pruza primjereniji (brzi, jeftiniji) put do
zahtijevanog odredista, od usmjerivaca koji je poruku poslao. Po primitku takve
poruke, racunalo azurira svoje lokalne podatke o usmjeravanju i promet nastavlja
slati u skladu s azuriranim podacima, preko drugog usmjerivaca.
Neprovjeravanjem autenticnosti poruke redirekcije racunalo postaje ranjivo na napade.
Napadac vrlo lako moze konstruirati laznu ICMP poruku redirekcije koja ce sav promet
izvorisnog racunala preusmjeriti na mrezni put koji mu omogucuje laksi dostup do
podataka ili se ne moze koristiti za slanje prometa na zeljena odredista.
Krivotvorenje poruka usmjerivackog protokola
Poruke obje vrste usmjerivackih protokoia (IGP i EGP) takoder mogu biti krivotvorene
i tako navesti i racunala i usmjerivace da svoj promet pocnu slati pogresnim mreznim
putem.
Sudjelovanje umrezenih objekata u radu usmjerivackog protokola moze biti pasivno
ili aktivno. Tako racunala najcesce u radu protokola sudjeluju pasivno, slusajuci i
prikupljajuci usmjerivacke informacije od aktivnih elemenata. Aktivni elementi
najcesce su usmjerivaci koji odasilju svoje usmjerivacke informacije za medusobnu
razmjenu, a isto ih tako salju i pasivnim eiementima. Primanje informacija od drugih
usmjerivaca oni takoder obavljaju na nacin na koji to rade i pasivni elementi.
Upravo opisanim nacinom rada sluzi se i RIP, jedan od Interior Gateway protokola.
Aktivni elementi koji se sluze tim protokolom svoje usmjerivacke informacije odasilju
svakih 30 sekundi. Te se informacije sastoje od parova vrijednosti koje sacinjavaju
mrezna adresa udaljene mreze i udaljenost od usmjerivaca do te mreze, izrazena brojem
usmjerivaca na putu kojim promet prolazi od izvorisnog usmjerivaca do odredisne mreze.
Aktivno odasiljanje krivotvorenih RIP poruka pasivnim eiementima vrlo je jednostavno
s bilo kojeg umrezenog racunala, i ukoliko pasivni element ne provjeri autenticnost
poruke njegove ce usmjerivacke informacije biti kompromitirane. Jos je veci problem
ako, kao pasivni elementi, u protokolu sudjeluju sami usmjerivaci, jer postoji opasnost
od potpunog raspada usmjeravanja, a samim time i mrezne komunikacije.
Onemogucavanje izvrsavanja servisa
Poznatiji pod imenom "Denial of Service", skraceno DoS, napadi ove klase imaju
zajednicku karakteristiku da elementima na odredenoj mreznoj razini onemogucuju
normalno funkcioniranje. Manifestacije ovog napada na razini mreze opisane su u
nastavku.
Onemogucavanje ispravnog usmjeravanja
Koristeci tehniku krivotvorenja ICMP paketa redirekcije opisanu prije, umrezenom
je racunalu moguce poslati potpuno pogresne podatke o usmjeravanju. Racunalo ce,
na osnovu dobivenih poruka, azurirati svoje lokalne podatke o usmjeravanju
pogresnim podacima. Napadnuto ce racunalo promet slati mreznim putevima koji ne
mogu dovesti do zeljenog odredista, cime mu je, prakticno, potpuno uskracena mrezna
komunikacija.
Druga je opasnost vec opisana u poglavlju o krivotvorenju poruka usmjerivackih
protokola i odnosi se na potpun zastoj usmjeravanja i prekid ukupnog mreznog prometa.
Onemogucavanje rada racunala
Ova se vrsta napada takoder sluzi ICMP paketima i direktna je posljedica gresaka
u implementaciji IP protokola na napadnutim racunalima. Posljedica napada je rusenje
operacijskog sustava racunala ili usmjerivaca.
Da bi izvrsio napad, napadac salje ICMP pakete za testiranje dostupnosti na ciljano
racunalo. Znacajka je poslanih paketa da u informacijskom dijelu sadrze vise od IP-om
dozvoljenog broja okteta, tako da ukupna velicina paketa prelazi maksimalnih
protokolom propisanih 65536 okteta. Implementacija protokola koja nije predvidjela
takvu velicinu primljenih paketa moze srusiti ili zamrznuti napadnuto racunalo ili
usmjerivac.
Ova vrsta napada dobijala je ime "Ping of Death" i vise nije izvediva u praksi.
Zastita podataka na mreznoj razini
Otkrivanje krivotvorenih ARP poruka
Ukoliko iz bilo kojeg razloga nije moguce poduzeti zastitne mjere onemogucavanja
ove vrste napada, opisane u slijedecem poglavlju, potrebno je poduzeti mjere kako
bi se napad otkrio na najbrzi moguci nacin. Atkins opisuje nekoliko nacina koji
omogucuju otkrivanje. Ukratko ih se moze klasificirati, nabrojati i opisati kako
slijedi u nastavku.
Otkrivanje na razini umrezenih racunala moze se vrsiti:
- pasivno - racunalo vrsi provjeru pristiglih ARP poruka i ispituje sadrze li
one izvorisnu adresu jednaku vlastitoj IP adresi sto predstavlja adresni
duplikat
- aktivno - racunalo vrsi ARP upit za vlastitu IP adresu, primi li odgovor,
rijec je o adresnom duplikatu
Druga je vrsta otkrivanja ona koja se vrsi na razini posluzitelja. Naime, racunalo
u tom slucaju vrsi dva upita
- ARP upitom dobiva strojnu (MAC) adresu koju provjerava dodatnim RARP upitom.
Na RARP upit odgovara RARP posluzitelj koji poznaje IP adrese pojedinih racunala
u mrezi i njihove odgovarajuce strojne (MAC) adrese. Ne podudaraju li se tako
dobiveni parovi strojnih (MAC) i IP adresa, moze se zakljuciti da je u tijeku napad.
Na kraju, otkrivanje na razini mreze moze se vrsiti:
- automatiziranom periodickom inspekcijom privremenih spremista adresnih
parova na svim racunalima mreze
- kontinuiranim nadzorom cjelokupnog mreznog prometa koristenjem promiskuitetnog
rezima rada komponente mreznog sucelja na racunalu mreznog administratora.
Onemogucavanje krivotvorenja ARP poruka
Najjednostavniji nacin zastite od ovog napada je prestanak koristenja ARP poruka.
Umjesto trazenja strojne (MAC) adrese odasiljanjem poruka, svakom je racunalu na
mrezi moguce te adrese upisati u konfiguracijske datoteke i dopustati samo njihovo
rucno mijenjanje. Dodatan napor u administraciji koji takav nacin rada zahtijeva
nadoknaden je eliminacijom problema.
Slicno rjesenje prethodnom ostvaruje se koristenjem ARP posluzitelja, ARP posluzitelj
odgovara na ARP upite umjesto pojedinacnih racunala, konzultirajuci zapise o
strojnim (MAC) adresama koje su upisane u njegove konfiguracijske datoteke i takoder
se samo rucno mogu mijenjati. Racunalo koje postavlja upite moze se konfigurirati
da postavlja upite odasiljanjem, a koristi samo odgovore koji dolaze s poznate
strojne (MAC) adrese ARP posluzitelja. Prednost ovog pristupa jest u laksoj,
centraliziranoj administraciji, a nedostatak je ranjivost na napade s nize mrezne
razine, krivotvorenjem okvira. Zastitu je moguce provesti i koristeci preklopnik
u kojem je tablica parova IP-MAC zakljucena od neovlastenog mijenjanja o tome
vise bilo je u predhodnom sloju.
Zastita od utjecaja krivotvorenih ICMP redirekcijskih poruka
Mogucnost fizickog, odnosno strojnog, rjesenja problema takoder je preporucljiva.
Mreza se, postavljanjem usmjerivaca, moze segmentirati koristeci ista nacela koja
su opisana u poglavlju o segmentaciji mreze na razini podatkovne veze. Jedina je
razlika sto se na mreznoj razini mrezni segmenti razlikuju svojim IP adresama,
odnosno njihovim mreznim dijelom.
Najslozeniji i najnesigurniji nacin zastite od napada krivotvorenjem ARP poruka
jest povremena rucna provjera privremenog spremista adresnih parova te rucno
brisanje sumnjivih podataka, Na racunalima koja izvrsavaju neku inacicu
Unix ili Windows operativnih sustava, za manipulaciju privremenim spremistem
ovih adresa sluzi naredba "arp".
Najlaksi je nacin zastite od napada krivotvorenim ICMP redirekcijskim porukama
njihovo jednostavno ignoriranje. Time ce se potpuno eliminirati utjecaj
krivotvorenih poruka, ali ce se isto tako izgubiti i mogucnost dinamickog
usmjeravanja i koristenja ucinkovitijih mreznih puteva na koje ukazuju autenticne
poruke ove vrste.
Drugi nacin zastite temelji se na provjeri autenticnosti poruke. Da bi racunalo
provjerilo dolazi li poruka uistinu od usmjerivaca, potrebna je provjera
izvorisne
strojne (MAC) adrese koju poruka sadrzi, koristenjem ARP upita. Na zalost, zbog vec
iznesenih ranjivosti tog protokola, kao i mogucnosti krivotvorenja okvira na nizoj
mreznoj razini, razini podatkovne veze, ovaj nacin zastite nije potpuno siguran.
Zastita od utjecaja krivotvorenih poruka usmjerivackih protokota
Dva su nacina zastite od napada krivotvorenim porukama ove vrste. Prvi je ne
dopustiti usmjerivacima da rade kao pasivni elementi u usmjerivackom protokolu
jer tako i oni mogu postati zrtvom krivotvorenih poruka. Za razmjenu poruka
izmedu usmjerivaca moguce je koristiti drugaciji protokol od onog kojim se
informacije predaju pasivnim elementima.
Na strani racunala, odnosno pasivnih elemenata, potrebno je koristiti takvu pasivnu
implementaciju protokola koja ce provjeravati autenticnost primljenih poruka.
Takva ce implementacija podatke o usmjerivacima procitati iz vlastite
konfiguracijske datoteke i koristit ce samo njihove poruke u azuriranju svojih
usmjerivackih informacija.
Koristenje IPsec nadogradnje Internet protokola
Uvidjevsi velik broj ozbiljnih prijetnji koje se javljaju na razini mreze,
tijela za donosenje Internet standarada pokrenula su razvoj nadogradnje IP
protokola sa odredenim sigurnosnim elementima. Taj je razvoj rezultirao
pojavom IPsec nadogradnje, koja na mreznoj razini povecava sigurnost
komunikacije IP paketima. Na zalost, IPsec jos nije u cestoj prakticnoj upotrebi,
a njegov informativni opis slijedi u nastavku.
IPSec omogucuje dvije osnovne sigurnosne osobine na mreznoj razini:
- tajnost podataka
- zajamcen identitet izvora
S tim u vezi, IPsec se sastoji od dva osnovna protokola, i to Authentication
header (AH) protokola te Encapsulation Security Payioad (ESP) protokola.
Da bi mogla zapoceti sigurnu komunikaciju, oba protokola izmedu izvorista i
odredista stvaraju jednosmjerni logicki kanal s dogovorenim sigurnosnim
osobinama. Za dvosmjernu komunikaciju, uspostavljaju se dva kanala, svaki
iniciran od jedne strane. Ti se kanali imenuju Security Agreement (SA) i
odredeni su trojkom vrijednosti koju cine:
- identifikator protokola (AH ili ESP),
- izvorisna IP adresa kanala,
- identifikator veze, 32-bitna vrijednost koja je nazvana Security Parameter
Index (SPI).
Jednostavniji od dvaju protokola, AH protokol, omogucuje sigurnu identifikaciju
izvorista te integritet podataka, ali ne i tajnost. Zaglavlje AH protokola
smjesteno je neposredno nakon IP zaglavlja, u podatkovni dio IP paketa, kako to
pokazuje sljedeca slika.
__________________________________________
| IP | AH | Podaci |
|zaglavlje |zaglavlje | (TCP, UDP segmenti)|
|__________|__________|____________________|
IP paket s AH zaglavljem
Najvaznije polje u zaglavlju AH protokola jest Authentication Data (AD) polje koje
sadrzi digitalni potpis paketa. Pomocu tog polja odrediste vrsi sigurnu identifikaciju
izvorista te moze provjeriti integritet podataka u paketu.
ESP protokol omogucuje i tajnost podataka i sigurnu identifikaciju izvorista.
Elementi koje ovaj protokol dodaje standardnom IP paketu kao i sifrirani i dijelovi
zajamcene vjerodostojnosti posiljatelja paketa prikazani su na sljedecoj slici.
sifrirano
|<---------------------------->|
| |
Zajamcena vjerodostojnost
|<--------------------------------------->|
| |
__________________________________________________________
| IP | ESP | Podaci | ESP | ESP |
|zaglavlje |zaglavlje | (TCP, UDP segmenti)|zavrsetak| AD |
|__________|__________|____________________|_________|_____|
IP paket s elementima ESP protokola
Sifriranje podataka se vrsi DES-CBC algoritmom. Kao i kod AH protokola, najvaznije
polje jest Authentication Data(AD) polje koje se nalazi na samom kraju paketa.
Oba protokoia se za siguran rad oslanjaju na efikasnu i sigurnu distribuciju kljuceva
za sifriranje. U tu su svrhu razvijeni i Internet Key Exchange (IKE) algoritam, koji je
podrazumijevani algoritam za rad s kljucevima AH i ESP protokola, te Internet
Security Association i Key Management protokol (ISKMP) koji se koristi u radu s
kljucevima kao i uspostavljanju logickih kanala.
Koristenje vatrozida
U kontekstu racunalskog umrezavanja, pojam vatrozid, prema definiciji koja je citirana
u Atkins, oznacuje skup komponenti koji je smjesten izmedu dviju mreza i koji posjeduje
slijedece tri osobine:
- sav promet u bilo kojem smjeru mora proci kroz vatrozid
- promet kojem je dopusten prolazak mora biti u skladu s lokalnom sigurnosnom politikom
- sam vatrozid je imun na napade i pokusaje probijanja
Djelovanje vatrozida tipicno pocinje na razini mreze ISO/OSI referentnog modela i
nastavlja se kroz vise razine.
Vatrozide koji djeluju samo na razini mreze zovemo i filtrirajucim usmjerivacima.
Ti usmjerivaci, vodeni definiranim pravilima filtriranja, pregledavaju svaki IP paket
koji njima prolazi i, u ovisnosti o rezultatu usporedivanja u njemu sadrzane IP adrese
(izvorisne ili odredisne) te protokoia sa pravilima zabranjenim vrijednostima, paket
propustaju odnosno ne propustaju.
Nedostatak je ovakvih vatrozida tesko konfiguriranje i nemogucnost potpune sigurnosne
kontrole opasnosti na visim razinama mreznog modela, pa se stoga u praksi ipak koriste
kao pocetni nivo zastite ili je njihovo funkcioniranje uklopljeno u vatrozide koji
djeluju po vise mreznih razina.
------------------------------------------------------------------------------------
4. sloj - Sigurnost prijenosa izmedju dva krajnja racunala
Transportni sloj u ISO/OSI referentnom modelu
Sredisnje mjesto u ISO/OSI referentnom modelu pripada sloju transporta. Kao takav,
sloj transporta ima ulogu sucelja izmedu slojeva visih razina modela, i mrezno ovisnih
slojeva na prve tri razine modela, cime ih izolira od detalja konkretne mrezne
implementacije i omogucuje njihovu prenosivost. Od protokola u upotrebi na Internetu,
sloj transporta cine Transmission Control protokol (TCP) te User Datagram protokol (UDP).
TCP je slozeniji protokol koji prijenos podataka obavlja uspostavljanjem veze izmedu
krajnjih tocaka komunikacije. Uslugu koju taj protokol pruza protokolima vise razine
u literaturi obraduju pod imenom usluge pouzdanog prijenosa toka. Pri tome pouzdanost
oznacuje prijenos podataka bez gresaka i gubitaka, te sacuvan redoslijed prijema
poslanih podataka. Vazna je osobina ovog protokola i to da sve podatke tretira na
jednak nacin - kao skup okteta, bez obzira na njihovu vrstu. Podatke TCP prenosi u
podatkovnim jedinicama segmentima koje na odredistu cuva u privremenim spremistima.
Nakon sto se privremeno spremiste napuni, podaci se predaju visim slojevima na obradu.
UDP je jednostavniji protokol koji se oslanja na protokol nize razine, IP, za
obavljanje najveceg dijela posla. Kao takav, UDP podatke prenosi bez uspostavljanja
veze, i bez provjere gresaka u prijenosu. Za razliku od TCP-a, ovaj bi se protokol
mogao nazvati nepouzdanim, ali to nikako ne znaci i da je neupotrebljiv pa na
Internetu nalazi mnoge nacine upotrebe.
Sigurnosne prijetnje na razini transporta
Zaobilazenje filtriranja iskoristavanjem fragmentacije na mreznoj razini
Napadi koji iskoristavaju fragmentaciju na mreznoj razini zapravo su napadi
segmentima transportne razine koji iskoristavaju neke osobine protokola mrezne
razine. Radi se, dakle, o kombiniranoj tehnici napada gdje je segment transportne
razine sredstvo ugrozavanja sigurnosti a paket mrezne razine pruza potrebnu
infrastrukturu da bi se napad uspjesno obavio. Pri tome su meta napada postupci
filtriranja koji takoder djeluju na osnovu informacija prikupljenih iz segmenata
transportne razine. Dvije vrste ovakvih napada opisane su u nastavku.
Napad fragmentacijom TCP zaglavlja
Cesto se, kao dio mreznog osiguranja, koristi filtriranje paketa. Da bi uspjesno
otkrili paket koji sadrzi segment transportne razine koji krsi pravila i shodno tome
ne smije biti propusten, nuzno je da mrezni element koji obavlja filtriranje moze
prikupiti sve bitne informacije o namjeni segmenta. Te su informacije sadrzane u
zaglavlju TCP segmenta.
Uspjesno zaobilazenje ovakvog nacina zastite napadacu omogucuje fragmentacija na
mreznoj razini. Internet standard kojim je defniran IP protokot [RFC 791] propisuje
najmanju velicinu IP paketa koji ne smije biti fragmentiran na 68 okteta, od cega
60 okteta otpada na IP zaglavlje, a 8 okteta na podatke. Fiksni dio zaglavlja TCP
segmenta, s druge strane, zauzima cijelih 20 okteta, pri cemu se iza granice od
8 okteta nalaze i za filtriranje vazni podaci kao sto su zastavice opcija.
Zeli li ilegalno uspostaviti vezu sa zasticenim racunalom na transportnoj razini,
napadacu je dovoljno da sa svojeg racunala posalje TCP segment razbijen u dva
dijela, kako to prikazuje sljedeca slika.
Polja TCP zaglavlja
______________________________________
| |
| |
___________________________________________________
Fragment 1 |IP zaglavlje|Izvor.port |Odred. port|Broj sekvence|
|____________|____________|___________|_____________|
___________________________________________________
Fragment 2 |IP zaglavlje|Broj potvrde|Pomak | Rezervirano |
|____________|____________|___________|_____________|
| |
|______________________________________|
Fragmentacija TCP zaglavlja
Pri tome ce, zbog mogucnosti slanja IP paketa minimalne velicine, zaglavlje TCP
segmenta biti razdvojeno. Naidje li element koji vrsi filtriranje na takav paket,
nece moci ispitati sva polja zaglavlja i u najvecem ce broju slucajeva paket
biti propusten i stici do svojeg odredista. Na odredistu ce segment biti ponovno
sastavljen i veza na transportnoj razini na taj nacin moze biti uspostavljena.
Napad iskoristavanjem preklapanja fragmenata
Druga vrsta napada bazirana na fragmentiranju paketa iskoristava ranjivost uzrokovanu
nacinom sastavljanja fragmenata na odredistu od strane Internet protokola. Standardom
je propisano, a toga se drzi i najveci broj implementacija, da se u slucaju prijema
dva fragmenta, gdje drugi fragment sadrzi oktete koji vec postoje u prvom fragmentu,
pri sastavljanju uzimaju u obzir samo oni okteti prisutni u drugom fragmentu.
Da bi iskoristio ovu ranjivost, napadac ce u prvom fragmentu poslati kompletno
zaglavlje TCP segmenta za koje zna da ce uspjesno proci kroz postupak flltriranja
Zatim ce u drugom fragmentu poslati samo promijenjeni dio zaglavlja i ostatak
segmenta. Promijenjeni dio zaglavlja, koji sadrzi informacije o uspostavijanju
veze kakve postupak flltriranja inace ne bi propustio, na odredistu ce zamijeniti
one informacije koje su stigle prvim fragmentom, segment ce biti sastavljen i veza
moze biti uspostavljena.
Razlog zbog kojeg drugi fragment prolazi provjeru pri filtriranju jest taj sto vecina
filtrirajucih elemenata provjerava samo one IP pakete koji prenose pocetak TCP
segmenata. IP paketi koji prenose neki unutrasnji dio TCP segmenta se ne provjeravaju
i propustaju se. Na taj nacin, napadac moze preklapanjem poslati gotovo cijelo
zaglavlje (osim prvog okteta) sa bitno izmijenjenim poljima i tako ostvariti
nelegalnu vezu na razini transporta.
Ometanje i onemogucavanje rada racunala
Niti transportna razina nije imuna na napade iz "Denial of Service" klase. U nastavku
ce biti obradjena nekoliko primjera takvih napada. Napada ove vrste su aktivni i
destruktivne prirode, i uzrokuju nemogucnost komunikacije Internetom.
Oba se napada baziraju na preplavljivanju ciljanog racunala velikim brojem paketa
transportne razine.
"Syn flood" napad
"Syn flood" napad koristi postupak "trostranog rukovanja" koji TCP-u omogucuje
otvaranje veze posluzitelj-klijent tipa izmedu dvaju mreznih elemenata, najcesce
racunala. Svaki mrezni element koji pruza neku na TCP-u baziranu uslugu potencijalna
je meta uspjesnog izvodenja ovog napada, pa tako napadnuti mogu biti i usmjerivaci ili
neka druga mrezna oprema.
Da bi uspostavila TCP vezu, dva mrezna elementa razmjenjuju tocno odredenu sekvencu
TCP segmenata, prikazanu na sljedecoj slici.
Izvor/klijent Odrediste/posluzitelj
__________________________ ___________________________
Uspostavi vezu |\SYN |
| \ |
| \ |
| \ |
SYN-ACK\|
| /| Prijem i potvrda zahtjeva
| / |
| / |
| / |
veza uspostavljena,potvrdi|/ |
|\ACK |
| |
| \ |
| |
| \|veza uspostavljena
__________________________| |___________________________
Uspostavljanje TCP veze
Crtkanom strelicom je na slici oznacen segment koji se pri napadu ne salje.
Vecina standardnih implementacija TCP-a na posluziteijskoj strani vec nakon primanja
prvog segmenta i slanja odgovora (->SYN; SYN-ACK->) rezervira i inicijalizira odredeni
memorijski prostor koji ce, nakon uspostavljanja, sadrzavati sve parametre veze.
Iskoristavanje ovakvog nacina rada implementactje u svrhu napada je trivijalno.
Napadacu je dovoljno da ciljano racunalo preplavi zahtjevima za uspostavljanje veze,
a postupak uspostavljanja sa svoje strane niti za jedan zahtjev ne dovrsi.
Nakon odredenog broja pokusaja, napadnuto racunalo iscrpi sav memorijski prostor
predviden za informacije o zapocetim postupcima uspostavljanja veze sto rezultira
smetnjama u radu u obliku nemogucnosti uspostavljanja normalnih veza.
Najcesci nacin izvodenja ovakvog napada jest u kombinaciji s krivotvorenjem paketa
mrezne razine. Krivotvorenje adrese u IP paketu omogucuje napadacu da ostane neotkriven
i istodobno ne ugrozi svoje racunalo primanjem velikog broja odgovora na zahtjev za
uspostavljanje veze. Napadnuto racunalo, naime, odgovore na pokusaje uspostavljanja
veze salje na krivotvorenu IP adresu.
"Land metoda" napada
Rijec je o napadu slanjem zlonamjerno oblikovanih TCP (Transfer Control Protocol)
paketa, koji sadrze postavljenu SYN zastavicu te izvorisnu i odredisnu IP (Internet
Protocol) adresu te izvorisni i odredisni port postavljen na vrijednosti odredisnog
racunala. U takovom scenariju dolazi do privremenog (10-15 sekundi) DoS stanja na
odredisnom sustavu zbog potrosnje cjelokupnih procesorskih resursa.
"Rose Attack" metoda
U ovoj metodi napada radi se o fragmetaciji paketa koji zahvaca gotove sve uredjaje
spojene na Interentu (telefone, satelite, mrezne uredjaje, ...).
Napad je jednostavan. Dva dijela fragmentiranih paketa salju se racunalu koje se
napada. Prvi fragmentirani paket 32 oktera je incializira nulti fragment SYN paketa.
Drugi fragmentirani paket takodjer je 32 okteta, samo sto je 64800 okteta upisano
u datagram. Ova metoda mogucaje na ICMP, TCP, UDP protokolima.
Buduci da napad ne zahtjeva uspostavu veze s napadnutim sistemom
izvorisna IP adresa moze biti lazna s cim se skriva prava lokacija napadaca.
Takodjer izvorisni i odredisni port nije bitan posto se paket ne provjerava
na cetvrtom sloju, tj. racunalo prima paket bez obzira koji se port koristi.
Preplavljivanje UDP paketima
Napad izveden preplavljivanjem UDP paketima uzrokuje zakrcenje mreze, cesto do granica
neupotrebljivosti. Najcesce se takoder izvodi u kombinaciji s krivotvorenjem IP paketa
kako bi napadac bio teze otkriven. Preplavljivanje UDP paketima moze biti ciljano na
jedno racunalo, ili moze biti izvedeno izmedu dva racunala.
Velik broj servisa vise, aplikacijske razine, koji koriste UDP, svojim radom moze
kreirati velik broj UDP paketa. Medusobnim spajanjem takvih servisa koje je trivijalno
izvesti, napadac moze zakrciti rad jednog racunala ili cijele mreze. U prvom slucaju,
on ce servise spojiti na istom racunalu, u drugom ce spojiti servise izmedu dva
razlicita racunala.
Primjer dva takva UDP servisa na Unix racunalima su echo i chargen. Echo servis
jednostavno odgovara na primljeni upit, odnosno zahtjev za potvrdom upita.
Chargen, s druge strane, je servis koji kreiranjem znakova (CHARacter GRNerator),
u legalnoj upotrebi pomaze administratorima pri otklanjanju problema u radu mreze.
Napadac ga u ilegalne svrhe moze iskoristiti tako da rezultate izvrsavanja velikog
broja zahtjeva chargen servisu poveze s echo servisom pri cemu nastaje velik broj
paketa koji uzrokuju zakrcenje.
Napad desinkronizacijom TCP veze
Napad desinkronizacijom TCP veze je napad aktivnog tipa koji se odvija na transportnoj
razini, koristeci standardni nacin uspostavljanja i odrzavanja veze TCP-om.
Djeluje uz pomoc napada na nizoj razini gdje napadac svoje racunalo lazno predstavlja
napadnutim racunalima, a vrijedi i pretpostavka da moze prisluskivati i mijenjati sav
promet izmedu njih. Desinkronizacijom veze napadac postize ili neovlasteno
uspostavljanje veze ili preuzimanje vec uspostavljene TCP veze izmedu neka dva mrezna
entiteta. U nastavku ce taj napad biti opisan kroz nekoliko odijeljenih cjelina, radi
lakseg razumijevanja.
Uspostavljanje i odrzavanje veze TCP-om
Predhodna slika prikazuje koje segmente razmjenjuju dva racunala da bi uspostavila
TCP vezu. Pri uspostavljanju veze, svakom od SYN segmenata pridruzuje se slucajan broj
sekvence (X). Segmenti potvrde (ACK) nose broj (Y) kojim potvrduju primljeni broj
sekvence. Oba se broja upisuju u odgovarajuce polje zaglavlja segmenta. Za vrijeme
uspostavljanja, svaka strana komunikacije kreira svoju lokalnu kopiju varijabli koje
sadrze spomenute brojeve. Nazovimo te varijable XI i YI za izvoriste, te XO i YO za
odrediste. Brojevi koje one sadrze omogucuju identificiranje veze u uspostavljanju i
od strane izvorista i od strane odredista. Uzimajuci u obzir vrijednosti u varijablama,
veza se uspostavlja izvodenjem slijedecih koraka:
1. Izvoriste -> SYN(XI) -> Odrediste
2. Odrediste -> SYN(XO)-ACK(YO) -> Izvoriste
3. Izvoriste -> ACK(YI) -> Odrediste
Azuriranje varijabli s obje se strane izvodi u ovisnosti o prometu na vezi. U stabilnim
stanjima veze koja su na snazi neposredno nakon uspostavljanja veze, te nakon
kompletiranih razmjena segmenata (sekvenci slanja i primanja segmenata te slanja i
primanja potvrda) za te varijable moraju vrijediti jednakosti:
- XO - YI i
- XI - YO.
Desinkronizirano stanje veze
Desinkronizirano stanje veze nastupa kada u stabilnim stanjima veze za varijable
sekvence i potvrde ne vrijede gore spomenute jednakosti. Takvo stanje moze nastupiti
greskama u prijenosu, ili namjernom desinkronizacijom u svrhu zloupotrebe te
onemogucava bilo kakvu razmjenu podataka izmedu dvije strane,
Izvodenje napada desinkronizacijom veze
Da bi uspjesno izveo napad, napadac ce nasilno desinkronizirati vezu te sa svojeg
racunala poceti slati segmente na obje napadnute strane, oponasajuci suprotnu stranu
na svakoj od njih.
Desinkronizacija veze moze se izazvati na vise nacina, od kojih su najjednostavniji:
- rana desinkronizacija vrsi se pri uspostavljanju veze, Napadac uzrokuje takvo
uspostavljanje veze da su napadnuta racunala medusobno desinkronizirana, ali je
svako od njih sinkronizirano s napadacevim racunalom. Taj je nacin prikazan sljedecom
slikom, gdje XN iYN predstavijaju napadaceve kopije varijabli sekvence i potvrde
- desinkronizacija slanjem nul-podataka vrsi se u trenucima kada je veza vec
uspostavljena. Napadac na obje strane veze salje velik broj podataka koji
nemaju drugu namjenu nego da iz sinkronizacije izbace varijable sekvence
i potvrde.
Izvor, klijent Napadac posluzitelj
______________ ______________ ________________
Uspostavi vezu|\1SYN(XI)| | |
| |
| | | |Prijem i potvrda
| 1\| zahtjeva
| | | SYN(XO)| YO=XI
| ACK(YO)|
| | | 2/|
| |
| | | |
| \3 |
Veza |/2 | Resetiranje | RST(XI)|
Uspostavljena | Uspostavi vezu 3\|Veza zatvorena
| | |\4 SYN(NX)|
| |
| | | 4\|Prijem i potvrda
| | zahtjeva
| | | | YO=NX
| SYN(XO) |
| | | ACK(YO)5/|
| |
| | | |
| |
Paket odbacen |/5 | | |
pogresan broj | Potvrda |
potvrde (YO) | |uspostavljanja| ACK(YN) |
| YN=XO \6 |
| | | |
| 6\|Veza uspostavljena
______________| |______________| |__________________
Nakon sto je veza desinkronizirana, napadac prati svaki pokusaj komunikacije s bilo
koje strane. Originalni segmenti koje strane salju jedna drugoj bivaju od druge
strane odbaceni. Napadac ce te odbacene segmente prepraviti, umecuci brojeve
sinkronizacije i potvrde koji su drugoj strani prihvatljivi, a usput i dodajuci
stetan sadrzaj u podatkovni dio segmenta, kad mu to odgovara. Na taj nacin, niti
jedna korisnicka strana nece primijetiti nista sumnjivo jer se razmjena podataka
naizgled nesmetano obavlja.
U slucaju da segmentima putuju naredbe, kao dio komunikacije nekim aplikacijskim
protokolom, primjerice Telnetom, dodavati stetan sadrzaj u njih je trivijalno,
a vrlo opasno. Takvim je naredbama moguce brisati ili mijenjati datoteke,
srusiti racunalo ili slicno.
Zastita podataka na razini transporta
Koristenje vatrozida
Funkcionalnost vatrozida na razini transporta i na razini mreze medusobno je ovisna
i povezana. Vatrozidi, naime, filtriraju pakete mrezne razine na osnovu informacija
koje dobivaju iz njihovog podatkovnog dijela, koji pak sadrzi zaglavlje i podatkovni
dio TCP segmenta.
Kao sto je ranije receno, TCP zaglavlje je od posebne vaznosti za ucinkovito filtriranje
paketa. Pri tome se najcesce koriste slijedeca polja zaglavlja:
- izvorisni i odredisni port - prisutni su i u zaglavlju UDP paketa, a oznacuju namjenu
prijenosa koji se uspostavlja, pri cemu vatrozid moze blokirati prijenose namijenjene
odredenim servisima visih razina, kao sto su FTP ili slicni
- broj sekvence i potvrde - sadrze pomake (u oktetima) dijela segmenta koji se salje
odnosno prima od pocetka tog istog segmenta. Vece segmente TCP razbija u dijelove pri
cemu je najvazniji prvi dio (kojem je pomak od pocetka jednak nuli) koji sadrzi zaglavlje
- zastavice - definiraju znacajke koje za dani segment vrijede. Vatrozid segmente s
odredenim znacajkama ne mora propustati.
Zastita od napada iskoristavanjem fragmentacije
Filtrirajuci element najlakse ce sprijeciti napad fragmentacijom zaglavlja
nepropustanjem svih paketa manjih od nekog minimalnog broja okteta za koji se
sigurno moze znati da sadrzi sve potrebne informacije za filtriranje. Kao sto je vec
receno, fiksni dio zaglavlja TCP segmenta velik je 20 okteta. Defmiranjem ukupne
minimalne velicine paketa mrezne razine na 80 okteta (60 od kojih otpada na zaglavlje
koje upotrebljava IP, a 20 na zaglavlje TCP-a), napad je sprijecen.
Zastita od napada preklapanjem fragmenata takoder je jednostavna. Dovoljno je
filtrirajuci element konfigurirati tako da ne propusta pakete koji ne sadrze pocetni
fragment, a unutrasnji dio TCP segmenta kojeg prenose je preblizu pocetku tog istog
TCP segmenta. Prema vec iznesenim podacima, to bi znacilo da filtrirajuci element ne
smije propustiti paket koji sadrzi unutrasnji fragment ako je pocetak podataka u
tom fragmentu na manje od 20 okteta od pocetka ukupnog TCP segmenta.
Samozastita racunala na razini transporta
TCP segmenti koji uspiju proci kroz nize razine zastite jos uvijek ne moraju biti
sigurni, kako su to i gornji primjeri pokazali. Dospiju li napadacevi segmenti do
ciljanog racunala, ono mora imati mogucnost samo se zastititi od njih. Takva zastita
danas postoji na vecini racunala koja imaju sposobnost komuniciranja Internetom, bilo
da se nalazi u paketu s implementacijama protokola i operacijskim sustavom, bilo da se,
u obliku aplikacije, moze nabaviti od alternativnih proizvoctaca programske opreme.
Na vecini posluziteljskih Internet sustava koji rade pod nekom inacicom Unix
operativnog sustava, ta zastita dolazi u obliku "TCP Wrappera". Rijec je o filteru
TCP segmenata koji, na osnovu svojih konfiguracijskih postavki, a u skladu sa
sigurnosnom politikom, podatke iz TCP segmenata prosljeduje ili ne prosljeduje visim
razinama na daljnju obradu.
I na ostalim operativnim sustavima postoji alati koji obavljaju isti zadatak.
Posebno to vrijedi za Windows platformu koja u posljednje vrijeme trpi velik broj
sigurnosnih napada najrazlicitije vrste.
Zadnja verzija windowsa dolazi s ugradjenim firewallom u sam operativni sustav.
Najkoristeniji programi koji pruzaju zastitu su sotwerski firewall najcese koristen je
besplatni "Zonealarm".
------------------------------------------------------------------------------------
5. sloj - Sigurnost veze izmedu procesa Sloj
sesije u ISO/OSI referentnom modelu
Prema ISO/OSI referentnom modelu, sloj sesije je zaduzen za uspostavljanje i
prekidanje komunikacijskog kanala kojim dva entiteta vise razine obavljaju svoj
dijalog. Pri tome sloj obavlja i pomocne zadatke poput povremene sinkronizacije
vremenski dugih prijenosa ili prijavljivanja gresaka visim slojevima.
Iz prve slike u ovom tekstu moze se zakljuciti da u Internet svijetu sloj sesije
ne postoji. Naime, sve funkcije ovog sloja obavljali su protokoli aplikacijske razine.
Komunikacija protokola aplikacijske i transportne razine bila je direktna, bez
posrednih razina. Jedina iznimka tog pravila bila je Remote Procedure Call (RPC)
protokol razvijen od tvrtke Sun koji se koristi u distribuiranim programskim sustavima
i visim slojevima pruza uslugu slicnu onoj protokola sloja sesije u ISO/OSI
referentnom modelu. Prirodno je i da su najvece sigurnosne prijetnje na ovoj razini
dolazile zbog upotrebe upravo tog protokola, sto je slucaj i danas,
Kako ovaj sloj ne bi ostao od minorne vaznosti, na srecu ili na zalost, pobrinuo se
povecani broj sigurnosnih prijetnji, odnosno inventivnost napadaca da svaku mogucu
priliku iskoriste za kradu ili ugrozavanje korisnikovih podataka, Uvidjevsi sve vecu
prijetnju, tvrtka Netscape je odlucila razviti protokol koji bi korisnicima pruzio
siguran komunikacijski kanal izmedu krajnjih tocaka komunikacije. Vec i iz same
prethodne recenice jasno je da je mjesto pozicioniranja takvog protokola upravo na
razini sesije ISO/OSI referentnog modela. Razvojem u Netscapeu nastao je
"Secure Sockets Layer" (SSL) protokol, kojeg je standardizacijom i manjim izmjenama
IETF (Internet Engineering Task Force) pretvorio u sluzbeni "Transport Layer
Security" (TLS) protokol.
Kako TCP/IP cetveroslojni model ne poznaje slojeve izmedu transportnog i
aplikacijskog, a TLS pruza usluge aplikacijskom sloju, to je on nazvan transportnim.
Medutim, gledajuci kroz prizmu ISO/OSI referentnog modela, njegovo je mjesto u sloju
sesije, pri cemu, zbog sifriranja podataka kojeg vrsi, dio njegove funkcionalnosti
zadire i u visi sloj, sloj prikaza.
Slican je slucaj upravo opisanom i sa protokolima sigurne identifikacije. Dva su takva
Siroko koristena protokola TAG Access Control Server protokol (TACACS) i Kerberos,
a funkcionalnost potonjeg takoder se dijelom obavlja u sloju prikaza. Svi ce oni
ipak biti opisani u sklopu nizeg sloja na kojem se pojavljuju, dakle sloja sesije,
kojem pripada veci dio njihove funkcionalnosti, ili na kojem obavljaju sav posao u
slucaju kada ne komuniciraju sifriranim podacima.
Sigurnosne prijetnje na razini sesije
RPC prijetnje
Napadi koji koriste RPC protokol baziraju se prije svega na slabim ili nikakvim
mogucnostima autentikacije ugradenim u sam RPC protokol. Kao sto mu i ime kaze,
RPC omogucuje pozivanje procedura na udaljenim racunalima sto se prvenstveno koristi
u razvoju distribuiranih aplikacija. Mrezni servisi aplikacijske razine koji
upotrebljavaju RPC su, izmedu ostalih, "Network File System " (NFS) te "Network
Information System" (NIS). Mogucnosti sigurne identifikacije posiljatelja definirane
u temeljnoj RPC speciflkaciji su vise nego slabe. Naime, RPC u svojoj osnovnoj verziji
moze raditi bez identifikacije, sto je potpuno neprihvatljivo, uzimajuci u obzir
vaznost aplikacijskih servisa koje opsluzuje. Drugi nacin rada je koristenjem
identifikacijskog servisa na klijentskom racunalu, sto je daleko od potrebne sigurnosti
jer odgovori identifikacijskog servisa vrlo lako mogu biti krivotvoreni.
NFS omogucava dijeljenje datoteka izmedu racunala pri cemu se datoteke udaljenog,
posluziteljskog racunala prividno pojavljuju kao dio datotecnog sustava na klijentskom
racunalu. Opasnost potencijalnog napada omogucenog ovako slabom identifikacijom
ocigledna je - napadat RPC protokolom moze dobiti pristup, ovisno o konfiguraciji,
za citanje, pisanje ili brisanje NFS-om izlozenih datoteka. Upravo je nekoliko
ovakvih napada iz prakse i poznato. Pri tome je ova vrsta napada klasificirana u
prijetnje s razine sesije, jer se radi bas o sigurnosti, odnosno nesigurnosti veze
koju RPC pruza visim razinama koje ga koriste.
Zastita podataka na razini sesije
Koristenje SSL i TLS protokola
Tvrtka Netscape odlucila je korisnicima omoguciti dodatnu sigurnost komunikacije te
je razvila SSL. Postavsi de facto standard za sigurnu komunikaciju na ovoj razini,
SSL je evoluirao u TLS. lako baziran na SSL-u, TLS je procesom de jure standardizacije
izmijenjen te je s njime nekompatibilan. U nastavku ce biti opisana oba protokola.
Secure Sockets Layer protokol
SSL protokol visim razinama omogucuje Uspostavljanje i komunikaciju sigurnim kanalom.
Uspostavljanje kanala provodi se dijalogom, prikazanim na sljedecoj slici.
Izvor/klijent Odrediste/posluzitelj
____________________ _______________________
Uspostavljanje veze | Zahtjev za |
|identifikacijom, lista |
| podrzanih protokola |
|---------------------->|
| |
|identifikacija servera,|
|predlozeni protokoli i | Potvrda uspostavljanja
| javni kljuc |
|<----------------------|
| |
| Tajni kljuc sifriran |
Dogovor o sifriranju| javnim kljucem |
| posluzitelja |
|---------------------->|
| |
| Dogovorene opcije |
| sifrirane tajnim | Dovrsetak uspostavljanja
| kljucem |
____________________|<----------------------|______________________
Uspostavljanje veze SSL protokolom
Slika prikazuje najjednostavniju verziju ovakvog dijaloga. Slozenije verzije
omogucuju sigurnu identiflkaciju klijenta te dodjeljivanje jedinstvenog broja sesiji.
Algoritmi za sifriranje koje protokol podrzava, a dogovaraju se uspostavljanjem, mogu
biti RC4-128, RC2-128, DES, Triple DES ili IDEA.
Kako proces uspostavljanja veze, tako i prijenos podataka, obavljaju se putem suvisno
imenovanog SSL Record Protocol sloja. Taj sloj definira format paketa prijenosa, koji
je prikazan sljedecom slikom.
__ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __
| SSL paket |
______________________________
| __|Zaglavlje | Podaci |______________________ |
| |__________|___________________| |
||_ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ |_|
| |
| Paket s 2 okteta u zaglavlju |
| __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ |_
| | _________________________________________ | |
|-->| Zaglavlje i tip paketa | Duljina paketa | |
| | |________________________|________________| | |
| |
| | ______________________________________ | |
| | Kod indetiteka | Podaci |<--|
| | |________________|_____________________| | |
| __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ |_
| |
| Paket s 3 oktera u zaglavlju |
| __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ |_
| | ____________________________________________ | |
|-->|Zaglavlje i | Escape bit | Duljina |Duljina | |
| | tip paketa | | paketa | dopune | | |
|____________|____________|_________|________| |
| | |
____________________________________________ |
| | Kod | | | | |
| identiteta| Podaci | Dopuna |<-----|
| |___________|_______________________|________| |
__ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __
Format SSL paketa
Paket se sastoji od zaglavlja i podatkovnog dijela u kojem se nalazi kod za i
dentiflkaciju posiljatelja zajedno sa samim podacima. Prilikom komunikacije,
samo je podatkovni dio u cjelini sifriran.
Sigurnost komunikacije maksimalizira se koristenjem sifriranja s vecom duljinom
kljuceva (128-bitni ili veci), dodjeljivanjem slucajnog identifikacijskog broja
svakoj sesiji te sigurnom identifikacijom obje strane komunikacije, na razini
protokola.
Transport Layer Security protokol
Promjene koje je SSL dozivio standardizacijom osigurale su da TLS bude
sveobuhvatniji i relativno ucinkovitiji. Struktura protokola je bolje definirana,
a omogucena mu je i nadogradivost novim nacinima sifriranja.
Najvaznija je promjena segmentiranje sloja na cetiri medusobno povezana (linearno
ili hijerarhijski) protokola:
1.- Record protokol vrsi fragmentaciju, kompresiju, sifriranje i slanje poruka s
izvorisne strane, te obrnute operacije prijema, desifriranja, dekompresije i
sastavljanja na strani primatelja. To je osnovni protokol na koji svoju
funkcionalnost nadograduju ostali protokoli nabrojani u nastavku
2.- Handshake protokol, ili protokol uspostavljanja veze, usuglasava osobine
veze izmedu krajnjih tocaka komunikacije, pri njenom uspostavljanju
3.- Alert protokol sluzi prijavljivanju nastalih gresaka ili neocekivanih dogadaja
4.- Change cipher spec protokol koristi se kada se jedna ili obje strane odluce
promijeniti algoritam za sifriranje u nastavku komunikacije
5.-Application data protokol pruza direktno sucelje visim razinama za prijenos
podataka.
Promjena koja daje velik doprinos ukupnoj sigurnosti odnosi se na dodatke u protokolu
uspostavljanja veze. Tim se promjenama maksimalizira sigurnost uspostavljanja veze,
pa time i veze same. Uspostavljanje zapocinje razmjenom pozdravnih poruka, iniciranom
od strane klijenta, pri cemu se strane dogovaraju o sigurnosnim parametrima poput
verzije protokola, identifikacije sesije, nacina sifriranja i metode sazimanja.
Nakon sto su parametri dogovoreni, pocinje razmjena kljuceva. Posluzitelj salje
svoju certifikaciju klijentu neposredno nakon pozdravnih poruka, ili se pocinje s
razmjenom posluziteljskih kljuceva, ukoliko posluzitelj nema potrebnu certifikaciju.
Nakon toga, klijent posluzitelju takoder salje svoj certifikat i kljuc. Obavljanjem
ovih koraka obje strane su autorizirane za komunikaciju i razmjena podataka moze poceti
prema prije dogovorenim parametrima.
Koristenje protokola sigurne identifikacije
Dva razlicita protokola sigurne identifikacije koja se cesto koriste, a djeluju na
razini sesije, poznata su pod imenima TACACS i Kerberos. Nacini njihova
funkcioniranja znatno se razlikuju, i u nastavku ce ukratko biti opisani.
TAG Access Control Server protokol
Jednostavniji i nesigurniji od dvaju protokola je TACACS. Taj se protokol koristi
u sigurnoj identifikaciji korisnika koji svoj pristup mrezi ostvaruju preko
terminalskog posluzitelja.
Terminalski posluzitelj, prije omogucavanja pristupa, od korisnika zahtijeva unos
korisnickog imena i zaporke. Te podatke on prosljeduje posluzitelju za identifikaciju
koji ih usporeduje s podacima koje i sam posjeduje. U ovisnosti o rezultatu
usporedbe, posluzitelj identifikacije vraca terminalskom serveru paket u kojem je
instrukcija o omogucavanju ili odbijanju pristupa. U slucaju omogucavanja pristupa,
uspostavlja se ovlasteni dijalog izmedu korisnika i terminalskog posluzitelja
koji korisnik koristi za nastavak rada.
Kerberos
Kerberos je slozeniji sustav koji omogucuje ne samo sigurnu identifikaciju vec
i sigurnu komunikaciju s posluziteljima u sustavu. Temelji se na dijalogu s dva
centralizirana posluzitelja - posluziteljem ulaznica (PU) te identifikacijskim
posluziteljem, odnosno autentikacijskim posluziteljem (AP).
Funkcija je identifikacijskog posluzitelja cuvati i azurirati podatke o korisnicima
i ostalim posluziteljima sustava u identifikacijskoj bazi, te pruziti mogucnost
sigurne identifikacije korisniku kako bi se ovaj mogao sluziti sustavom. Posluzitelj
ulaznica, s druge strane, izdaje dozvole za korisnikovu interakciju s ostalim
posluziteljima u sustavu, kao sto su aplikacijski ili datotecni posluzitelji.
Da bi korisnik uspjesno koristio sustav, prvi mu je zadatak obaviti sigurnu
identifikaciju na AP pomocu vlastitog korisnicnikog imena i zaporke. Nakon sto je
uspjesno obavio taj zadatak, pomocu specijalnog kljuca sesije dodijeljenog od AP,
omoguceno mu je da od PU zatrazi dozvolu za koristenje nekog od posluzitelja u
sustavu. PU ce mu takoder vratiti kljuc sesije koji na kraju korisnik koristi da bi
pristupio zeljenom posluzitelju. Na taj nacin korisnik ostvaruje ovastene dijaloge i
s PU i s posluziteljem na kojem obavlja posao.
------------------------------------------------------------------------------------
6. sloj - Sigurnost podataka u prijenosnoj sintaksi
Sloj prikaza u ISO/OSI referentnom modelu
Definiranje standardnog, apstraktnog tipa podataka kao univerzalnog sredstva
sporazumijevanja, glavni je zadatak ovog sloja. Isto tako on definira i odreden broj
prijenosnih sintaksi. Sloj prikaza dogovara prijenosnu sintaksu izmedu krajnjih tocaka
komunikacije, te vrsi konverziju iz i u lokalnu apstraktnu sintaksu ukoliko se ista
razlikuje od prijenosne sintakse. Pri tome osigurava ocuvanje strukture poruka koje se
razmjenjuju.
Sloj prikaza ima i dodatnu, opcionalnu ulogu, koja nije obuhvacena standardom.
U slucaju potrebe sigurne komunikacije, na ovoj se razini izvorista vrsi sifriranje
podataka, dok sloj prikaza odredista vrsi desifriranje. Pri tome se postupak sifriranja
podataka moze shvatiti i kao postupak njihova prevodenja u prijenosnu sintaksu.
Iako na prvoj slici ne prikazuje se postojanje sloja prikaza u cetveroslojnom TCP/IP
modelu, on je na Internetu funkcionalno prisutan. Razlicitost sustava koji Internetom
komuniciraju uvjetovala je pojavu nekih nacina prevodenja podataka u standardne oblike,
kako bi podaci mogli lako biti prevodeni iz lokalnog nacina prikaza jednog sustava u
lokalni nacin prikaza nekog drugog, razlicitog sustava. Standard koji danas definira
takve nacine prevodenja nazvan je "Multimedia Internet Mail Extensions" (MIME) i moze
se koristiti u vecem broju aplikacija, a ne samo u elektronickoj posti, kako bi se iz
imena moglo zakljuciti.
Uz opisane, univerzalne nacine primjene ovog sloja, on je prisutan i kao dio
implementacije nekih protokola. Telnet protokol, primjerice, sloj prikaza koristi za
prevodenje formata prikaza podataka izmedu razlicitih terminalskih tipova, a vec
spomenuti RPC komunicira podacima prevedenim u posebnu prijenosnu sintaksu imenovanu
"External data representation" (XDR).
Prisutnost sloja prikaza na Internetu se ocituje i u raznini paketima za sifriranje,
odnosno kriptosustavima, koji, kako je vec receno, svoje djelovanje obavljaju bas u
sklopu ovog sloja. Na Internetu najkoristeniji takav kriptosustav jest "Pretty Good
Privacy" (PGP) koji je u praksi postao standardom za sifriranje na Internetu, a
pogotovo nakon sto je MIME standard predvidio sintaksu za integriranje PGP sifriranog
sadrzaja u poruke.
Sigurnosne prijetnje na razini prikaza
Napadi slanjem poruka u prijenosnoj sintaksi
Kako je vec receno, odreden broj protokola koristi sloj prikaza kako bi uspjesno
razmjenjivao podatke medu razlicitim sustavima. Otvorenost specifikacija takvih
protokola cini ih ranjivim na napade koji se izvode slanjem poruka u prijenosnoj
sintaksi. Spomenuti napadi najcesce se izvode na dva nacina, ciji kratki opisi
slijede.
Slanje, po podatke stetnih, poruka u prijenosnoj sintaksi moze biti manifestacija
napada nize razine, najcesce desinkronizacije TCP veze. Na takve su prijetnje
osjetljivi svi protokoli koji kao prijenosni protokol upotrebljavaju TCP, a najcesce
su to protokoli koji su dio aplikacijskog sloja i koriste usluge sloja prikaza.
Srz problema lezi u cinjenici da poznavanje apstraktne, ali i prijenosne sintakse
napadacu otkriva konkretne posljedice izvrsavanja svake od poslanih poruka te
predstavlja osnovu za formatiranje i slanje zlonamjernih poruka, sto bi, da se
komunikacija vrsi "sirovim" podacima, bilo puno teze. Tako, primjerice, napadac
koji odluci napasti Telnet vezu, moze slanjem raznih poruka preuzeti kontrolu
nad parametrima korisnikovog terminala i onemoguciti mu njegovu upotrebu, sto
je samo jedna od bezazlenijih mogucnosti.
Druga vrsta ovih napada iskoristava greske u implementaciji protokola i moze
prouzrociti stetu slanjem poruka preko potpuno legalno ostvarene veze. Konkretno,
jedan takav napad je ugrozio velik broj posluzitelja koji su izvrsavali ToolTalk
RPC servis. Naime, napadac je slanjem predugih XDR poruka mogao iskoristiti gresku
u implementaciji koja mu je omogucavala da preuzme potpunu kontrolu nad servisom i
time ugrozi sigurnost cjelokupnog posluziteljskog racunala.
Kriptoanaliza
Kriptoanaliza jest skup postupaka (neki je cak zovu i znanoscu) za analiziranje i
dekriptiranje. U nastavku ce biti opisano nekoliko njavaznijih, na Internetu
najcescih, postupaka kriptoanalize koju provode napadaci.
Nasilno desifriranje podataka (brute force attack)
Koristenjem nekih od ranije opisanih nacina prisluskivanja, svaki napadac moze doci
do sifrirane verzije podataka koji se prenose mrezom. Iako sifriranje treba pruziti
zastitu od interpretacije takvih podataka, ono u nekim slucajevima nije dovoljno
ucinkovito.
Algoritmi za sifriranje koji se danas koriste imaju epitet nereverzibilnosti, sto
znaci da se sifrirani podaci ne mogu nikako desifrirati izvodenjem koraka sifriranja
u obrnutom redoslijedu. Da bi se izvrsilo desifriranje, potrebno je imati dodatne
podatke koje posjeduje samo primatelj i sadrzani su u tajnim kljucevima, ili je
potrebno poznavati glavni kljuc ukoliko se sifriranje provodi na klasican nacin,
pomocu jednog kljuca. Problem se javlja u cinjenici da su algoritmi i alati te
format kljuceva za desifriranje poznati i javno dostupni. Ukoliko su podaci potrebni
za desifriranje, odnosno kljucevi, premale duljine, napadac moze, isprobavanjem
svih kombinacija elemenata (znakova) koje bi mogle ciniti takav kljuc, nakon nekog
vremena uspjesno rekonstruirati kljuc i desifrirati podatke. Takav nacin napada nazvan
je nasilnim desifriranjem (brute force attack).
Vrijeme potrebno za uspjesnu rekonstrukciju kljuca i na modernom je racunalu veliko
i u eksponencijalnom je odnosu s duljinom kljuca. Medutim, podjelom posla izmedu
velikog broja racunala to se vrijeme moze bitno smanjiti, pa danas postoje brojni
eksperimenti i natjecanja u sto brzem obavljanju ovakvog zadatka u kojima sudjeluje
velik broj Internet posluzitelja i korisnickih racunala.
Dodatni problem korisnicima u osiguranju njihovih podataka izazivaju vlasti nekih
drzava. Naime, drzave poput Francuske zakonom zabranjuju upotrebu sigurnijih nacina
sifriranja u strahu da bi se njima mogli sluziti kriminalci. Slicno razmisljaju i SAD
koje izvoz tehnologija sifriranja strogo kontroliraju i tretiraju ga jednako izvozu
oruzja.
Lazno predstavljanje (Social engineering)
Koristenje javnog i tajnog kljuca u kriptografiji ostavlja napadacu jednostavnu
mogucnost krivotvorenja identiteta kojom moze doci do povjerljivih podataka.
Koristeci bilo koju od tehnika krivotvorenja elemenata nizih mreznih razina,
napadac se moze predstaviti kao netko drugi, primjerice krivotvorenjem svoje
mrezne adrese i uspostavljanjeni komunikacije sa zrtvom.
Ukoliko je zrtva napada uvjerena kako komunicira s autenticnim sugovornikom,
nije je tesko navesti da sugovorniku posalje i povjerljive podatke. Koristi li zrtva
sifriranje, napadac ce joj poslati svoj javni kljuc, Podaci sifrirani javnim
kljucem napadaca citljivi su samo njemu i on tako na vrlo jednostavan nacin moze
doci do povjerljivih podataka koji su namijenjeni nekom drugom
U cijelom ovom napadu vrlo je bitan i psiholoski aspekt. Zrtva ce vrlo rado
prihvatiti napadacev javni kljuc jer joj on garantira sigurnost podataka u
prijenosu, no zbog te ce sigurnosti najcesce zanemariti prijetnju laznog
predstavljanja. Ukoliko zrtva vec posjeduje javni kljuc strane koju napadac
lazno predstavlja, opet je nije tesko nagovoriti na koristenje novog kljuca
naglasavanjem, inace potpuno opravdane, zabrinutosti o mogucoj kradi tajnog
kljuca ili iznosenjem nekog slidnog razloga.
Zastita podataka na razini prikaza
Koristenje PGP kriptosustava
PGP je cjelovit sustav za sigurnu komunikaciju Internetom. Djeluje na razini
prikaza, prevodeci aplikacijske podatke u sifrirani tekst i obrnuto, a cine ga kako
algoritmi za sifriranje, tako i razliciti protokoli razmjene. U protokole razmjene
ukljucena je i razmjena elemenata sifriranja, kao sto su kljucevi. Najvazniji aspekti
ovog kriptosustava bit ce opisani u nastavku.
Temelji PGP sifriranja
PGP se jednim dijelom temelji na asimetricnoj sifarnoj shemi, shemi koja je
imenovana kriptografijom javnog kljuca. Sifriranje pomocu javnog kljuca koristi
dvije vrste kljuceva kako bi zastitila podatke. Primateljevim javnim kljucem podaci
se prvo sifriraju, a nakon toga salju na odrediste. Primatelj koristi svoj tajni
kljuc, da bi podatke desifrirao. Primateljev javni kljuc je javno dostupan svakoj
strani koja s njim zeli uspostaviti sigurnu komunikaciju. Tajni kljuc posjeduje samo
primatelj i njegov je zadatak zajamciti da poruku sifriranu odgovarajucim javnim
kljucem moze procitati samo primatelj kojemu je namijenjena. Za razliku od
asimetricne sheme, konvencionalan nacin sifriranja temeljio se na jednom kljucu
koji je bio koristen i u kritriranju i u desifiriranju.
PGP nije cisti asimetricni sustav, vec je hibridni sustav koji posjeduje elemente
i konvencionalnih i asimetricnih shema. Postupak sigurne komunikacije pomocu PGP-a
provodi se izvodenjem slijedecih koraka:
1. Izvorni tekst se prvo komprimira cime se postize dvostruka korist. Komprimiranjem
se stedi na vremenu prijenosa cijele poruke s jedne strane, dok se s druge strane
otezava posao napadacima da, analizirajuci poznate pojave u pisanom tekstu (kao sto
je ucestalost pojavljivanja odredenih samoglasnika ili slicno), lakse desifriraju
poruku.
2. Element konvencionalnih shema sifriranja je kreiranje slucajnog kljuca sesije koji
se koristi i u sifriranju i u desifriranju. Slucajni se kljuc kreira za svaku sesiju,
odnosno poruku, posebno, sto znaci da je samo jednokratno upotrebljiv. Izvorni se
tekst sifrira pomocu kljuca sesije, konvencionalnim algoritmom za sifriranje, dok se
sam kljuc sesije sifrira asimetricnim algoritmom, pomocu javnog kljuca primatelja.
3. Konvencionalno sifrirani tekst se zajedno s asimetricno sifriranim kljucem sesije
salje primatelju.
4. Na primateljevoj strani, postupak desifriranja krece se obrnutim redoslijedom.
Pomocu svog tajnog kljuca primatelj prvo asimetricnim algoritmom desifrira kljuc sesije.
Dobivsi kljuc sesije, primatelj moze desifrirati i izvorni komprimirani tekst, koristeci
konvencionalni algoritam za desifriranje. Na kraju, dekomprimiranje dobivenih podataka
rezultira originalnim, izvornim tekstom.
Prednosti dobivene ovakvom hibridnom arhitekturom kriptosustava ocituju se prije svega u
brzini sifriranja i desifriranja. Kako su konvencionalni sustavi za nekoliko redova
velicine brzi u obavljanju ovih operacija, ustede na vremenu su znatne, a da pritom nije
ugrozena sigurnost jer ukupan postupak kombinira najbolje iz svijeta konvencionalne i
asimetricne kriptografije.
Sigurna identifikacija, integritet podataka i neporecivost
Osim sifriranja, PGP omogucava koristenje jos tri vrlo vazna elementa sigurne
komunikacije. Sigurna identifikacija omogucuje primatelju da sa sigurnoscu moze
utvrditi da je identitet posiljatelja uistinu onaj kojim se posiljatelj predstavio.
Integritet podataka jamci primatelju da ce svako neovlasteno mijenjanje podataka moci
nedvojbeno otkriti. Neporecivost onemogucava posiljatelju da zanijece slanje poruke.
Sva se tri dodatna elementa sigurnosti komunikacije postizu koristenjem digitalnih
potpisa.
Nacin na koji PGP kreira i upotrebljava digitalne potpise moze se rasclaniti
na slijedece korake:
1. U prvom koraku, PGP izvorni tekst pomocu zbirne funkcije prevodi u sazetak.
Zbirna funkcija od ukupnog izvornog teksta, bilo koje velicine, kreira sazetak fiksne
velicine i to s osobinom da je sazetak za danu poruku jedinstven. Time ce bilo kakav
pokusaj promjene poruke izazvati neslaganje izmedu poruke i njenog sazetka, cime je
integritet poruke osiguran.
2. Sazetak se nakon toga sifrira tajnim kljucem posiljatelja cime nastaje digitalni
potpis.
3. Poruka se zajedno s digitalnim potpisom salje primatelju.
4. Primatelj samo pomocu posiljateljevog javnog kljuca moze desifrirati potpis da bi
dobio sazetak, cime je osigurana sigurna identifikacija i neporecivost poruke.
Nezavisnim kalkuliranjem sazetka, primatelj moze usporediti izracunati i sa porukom
dobiveni sazetak i tako se uvjeriti u integritet poruke.
Kljucevi, distribucija i certifikati
Kljuc u sifriranju konkretno nije nista drugo nego vrlo velik broj. Takav se broj
predstavlja odredenom kolicinom potrebnih bitova pri cemu vrijedi da su veci brojevi,
odnosno kljucevi s vecim brojem bitova, imuniji na pokusaje napada nasilnim
desifriranjem od onih s manjim brojem bitova. Ovisno o algoritmu sifriranja, sigurnost
kljuceva funkcija je njihovih duljina. U konvencionalnoj kriptografiji, danas se potpuno
sigurnim smatra kljuc duljine 512 bita. U asimetricnoj kriptografiji duljina potpuno
sigurnog kljuca mora biti veca od 1024 bita.
Najsigurniji nacin razmjene javnih kljuceva jest medusobna osobna razmjena medu
poznanicima, koristenjem nekog prenosivog medija, kao sto su diskete/CD/HDD/USB stick.
Kako takav nacin razmjene nije u najvecem broju slucajeva praktican, kljucevi se najcesce
razmjenjuju putem mrezne komunikacije, koji je ranjiv na napade laznim predstavljanjem,
opisane prije. Putem mreze, kljucevi se mogu razmjenjivati ili neposredno izmedu
zainteresiranih strana, ili centralizirano, putem posebnih posluzitelja na koje korisnici
samostalno salju svoje kljuceve. Posiljatelji tako dobivaju javne kljuceve primatelja
posredno, uzimajuci ih s posluzitelja.
Kako bi onemogucio napade laznim predstavljanjem, PGP koristi koncept digitalnih
certifikata. Digitalni certifikat je skup informacija koje ukljucenom javnom kljucu
jamce njegovu izvornost. Takav se certifikat sastoji od tri dijela:
1. korisnikovog javnog kljuca,
2. informacija o korisniku koje se certificiraju, kao sto su njegovo ime i korisnicka
oznaka,
3. jednog ili vise digitalnih potpisa
Digitalni su potpisi kljucni dio certifikata. Njima jedna ili vise trecih, povjerljivih
osoba, jamce da su informacije u certifikatu tocne i da odgovaraju javnom kljucu.
Osiguranje povjerenja u certifikate organizacije rjesavaju uspostavljanjem
certificirajuceg autoriteta. To je tijelo koje ima mogucnost provjeriti istinitost
podataka za koje korisnik trazi certifikaciju. U slucaju pozitivnog rezultata provjere,
tijelo izdaje trazeni certifikat. Da bi sigurnost bila dodatno pojacana, certifikati se
izdaju na odredeno vrijeme. Nakon isteka tog vremena, korisnik mora obnoviti certifikaciju
svojeg kljuca.
------------------------------------------------------------------------------------
7. sloj - Sigurnost izvornog podatkovnog sadrzaja
Aplikacijski sloj u ISO/OSI referentnom modelu
Sadrizajem najbogatiji sloj ISO/OSI modela je najvisi, aplikacijski sloj.
Taj sloj korisnicke aplikacije koriste kako bi mogle medusobno komunicirati
koristenjem dostupnih mreznih resursa. Protokoli aplikacijskog sloja obavljaju
najrazliditije zadatke, od kojih su najkoristeniji prijenos datoteka ili razmjena
poruka -npr. elektronicke poste. Uz navedeno, oni obavljaju i niz pomocnih, usluznih
zadataka poput identifikacije komunikacijskih strana simbolickim imenima, ili slicnih.
Sve prije receno, osim za ISO/OSI, vrijedi i za cetveroslojni TCP/IP model.
Na Internetu koristeni protokoli aplikacijske razine mnogobrojni su, a lista
najkoristenijih po meni su:
- Domain Name System (DNS) prevodi simbolicke mrezne adrese u brojcane, kakve
koristi sloj mreze
- Telnet protokol omogucuje terminalski rad (zamjenjen je SSH-om),
- File Transfer protokol (FTP) koristi se za prijenos datoteka mrezom(zamjenjen
je SSH-om),
- Hypertext Transfer protokol (HTTP) koristi se za pristup najkoristenijem
servisu, World Wide Webu,
- Simple Mail Transfer protokol (SMTP) sluzi prijenosu elektronickih poruka, odnosno
omogucuje rad elektroniclce poste,
- Network News Transfer protokol (NNTP) prenosi clanke u javnim diskusijskim grupama.
- Simple Network Management protokol (SNMP) omogucuje udaljeno administriranje mreznih
uredaja, kao sto su, primjerice, usmjerivaci.
Sigurnosne prijetnje na aplikacijskoj razini
Na aplikativnoj razini nemoguce je nabrojiti sve metode pa cu objasniti samo one
najpoznatije. Problemi najcesci su i najopasniji problemi koji se pojavljuju na
aplikacijskog razini, a u najvecoj su mjeri uzrokovani neprovodenjem sigurnije
identiflkacije od strane aplikacijskih protokola, ili nedovoljnom provjerom
korisnickih podataka.
Krivotvorenje DNS odgovora
DNS protokol prvenstveno sluzi pretvaranju simbolickih imena racunala kakva
upotrebljavaju korisnici, u numericke adrese kakve upotrebljava sloj mreze, no ima
mogucnost obavljanja i obrnute operacije, ukoliko to korisnicima zatreba. U slucaju da,
iz bilo kojeg razloga, korisnicka aplikacija DNS-om dobije pogresnu adresu, nastaje
velik sigurnosni problem koji napadacu omogucava oponasanje bilo kojeg racunala na
Internetu i time dostup do eventualno povjerljivih podataka koje korisnici salju.
To znaci da je DNS zapravo kicma Interneta i njegovim rusenjem onemogucen bi bio
njegov rad.
Direktna je to posljedica cinjenice koja je u Garfinkel opisana ovako: "DNS je
dizajniran kao nesigurni protokol jer IP i simbolicke adrese cine sustav koji omogucuje
prijenos podataka, a ne identifikaciju posiljatelja".
DNS protokol adrese dobiva od DNS posluzitelja, koji za proces pretvaranja adresa
koristi slozenu distribuiranu podatkovnu bazu adresa. Adresni prostor na Internetu
je podijeljen na domene. Svaka domena ima svoj DNS posluzitelj koji cuva podatke o
njenim adresama, a odnos izmedu razlicitih DNS posluzitelja, kao i izmedu razlicitih
domena, je hijerarhijski. DNS posluzitelj neke domene je autoritativni izvor informacija
o adresama u toj domeni, sto znaci da njegovim podacima vjeruju i koriste ih svi
posredni DNS posluzitelji koji te podatke trebaju. Svaki DNS posluzitelj spojen na
Internet ima dostup do adresnih podataka na bilo kojem drugom DNS posluzitelju,
koristeci spomenutu hijerarhiju.
U slucaju da na bilo koji nacin napadaci uspije klijentu poslati odgovore za koje
potonji vjeruje da dolaze od DNS posluzitelja, on njima moze vracati krivotvorene
autoritativne podatke o adresama posluziteljeve domene i tako korisnika navesti da
komunicira s potpuno drugim racunalom od zeljenog. Napad je to opasniji sto je
posluzitelj kojeg napadac oponasa na visoj hijerarhijskoj razini domena, jer na taj
nacin moze krivotvorhi podatke o vecem broju racunala.
Tri su nacina na koja se ovakav napad moze uspjesno izvesti:
1. Preplavljivanjem klijenta, koji od DNS posluzitelja trazi adresu, krivotvorenim
odgovorima, klijent ce vrlo vjerojatno prihvatiti laznu adresu prije nego sto do
njega dode pravi odgovor DNS posluzitelja.
2. Punjenjem privremenog spremista DNS posluzitelja laznim podacima. Neki DNS
posluzitelji u privremenom spremistu cuvaju sve dobivene adrese, bez obzira da li
su ih je zahtijevali ili nisu. Slanjem krivotvorenih adresa nakon sto posluzitelj
posalje neki DNS zahtjev, on ce, uz trazeni odgovor, spremiti i lazne adrese.
3. Slanjem laznih odgovora s legalnih posluzitelja. Napadac moze biti i stvarni
administrator nekog DNS posluzitelja, ili moze provalom u posluziteljsko racunalo
steci administratorske ovlasti koje mu omogucuju slanje zeljenih, laznih odgovora
Krivotvorenje tekstualnih poruka
Protokoli kojima se razmjenjuju tekstualne poruke su SMTP, u direktnoj komunikaciji
dvaju korisnika i NNTP, u medusobnoj komunikaciji veceg broja korisnika putem
diskusijskih grupa. Oba protokola definiraju potrebu da se izvor poruke identificira
ali ne i nacin na koji to sigurno uciniti. U najcescem broju slucajeva, napadac moze
kompletan tekst poruke, ukljucujuci i zaglavlje kojim se sluzi sam protokol,
iskonstruirati na nacin koji mu se cini prikladan za uspjesno izvrsenje napada.
Takvu ce krivotvorenu poruku bez ikakvih dodatnih pitanja protokol prenijeti do
ciljanog odredista.
Ovaj napad jos se i danas koristi u bezazlene svrhe, najcesce kao dio necije neslane
sale. Krivotvorenjem polja posiljatelja u zaglavlju poruke moguce je primatelja
uvjeriti da poruka uistinu dolazi od navedenog posiljatelja i tako stvoriti razne
nesporazume. Granica bezazlenosti, medutim, lako moze biti prijedjena, a slucajeve
ovakvog krivotvorenja s ozbiljnijim posljedicama nije tesko zamisliti.
Vecina korisnika koristi lazna zaglavlje radi sprecavanje spamera da uhvate njihovu
email adresu.
Napad FTP
posluzitelja (The bounce attack)
Tipican primjer zloupotrebe mogucnosti protokola koja je u protokol ukljucena u
najboljoj namjeri olaksavanja rada korisnicima i u legalnoj je upotrebi vrlo korisna,
jest napad FTP posluzitelja odskakanjem.
Osnovna je namjena FTP-a omoguciti prijenos datoteka izmedu posluziteljskog i
korisnickog racunala, u bilo kojem smjeru. U slucaju kada korisniku nije neposredno
potrebna neka datoteka, vec je on samo zeli s jednog posluzitelja iskopirati na drugi,
ostavljena mu je mogucnost koristenja posrednickog nacina rada FTP protokoia. Pri tome
korisnikovo racunalo preuzima samo ulogu posrednika, koji uspostavlja i upravlja
direktnom vezom izmedu dva FTP posluzitelja izmedu kojih tece prijenos datoteka.
Zloupotreba ove mogucnosti nije teska. Servis kojem korisnik zeli pristupiti na
racunalima je identificiran brojem koji se naziva port i koji je za svaki servis
drugaciji. Portovi nekih osnovnih servisa na svim racunalima nose jednak broj i javno
su poznati. Spajanjem na odredeni port posluzitelja, korisnicka aplikacija daje
protokolom specificirane naredbe servisu koji koristi doticni port. Odlika je vecine
Internet protokola da su sve podrzane naredbe tekstualnog oblika i ljudima razumljive.
Iskoristavajuci tu cinjenicu, te cinjenicu da posrednicka mogucnost FTP-a omogucuje
spajanje na bilo koji port, napadac moze prvo na izvorisni posluzitelj poslati
tekstualnu datoteku s naredbama ciljanom protokolu. Nakon toga, napadac jednostavno
instruira izvorisni posluzitelj da se spoji na port ciljanog protokola na napadnutom
racunalu te da tom vezom prenese tekstualnu datoteku s naredbama. Protokol na
napadnutom racunalu izvrsit ce u datoteci prisutne naredbe, a napadacev identitet ce
za napadnuto racunalo ostati potpuno nepoznat jer je napad izvrsen bez bilo kakvog
povezivanja na napadnuto racunalo s njegove strane.
Navedeni napad nije jedini na koji je FTP ranjiv, ali je najzanimljiviji te ga se moze
sprijeciti metodama koje svojom implementacijom sprecavaju i ostale napade, a bit ce
opisane u drugom dijelu ovog poglavlja.
Napadi povezani uz World Wide Web
Daleko najveca kolicina podataka Internetom danas putuje prenosena HTTP-om, temeljnim
protokolom WWW servisa. Mnogi od tih podataka su povjerljive prirode i kao takvi mogu
postati metom napada.
HTTP u svojoj osnovnoj specifikaciji ne pruza nikakvu mogucnost zastite podataka koje
prenosi. Prisluskivanjem napadac tako moze doci do bilo kojeg dokumenta u prijenosu.
Poseban je problem interaktivnost mnogih WWW posluzitelja koji od korisnika traze sve
osobne podatke kako bi ih registrirao za nastavak koristenja doticnog servisa. Osobni
podaci, poput imena i prezimena, adrese stanovanja, datuma rodenja, a u velikom broju
slucajeva i ukupne godisnje zarade kucanstva zanimljivi su ne samo elektronickim, vec
i pravim, staromodnim kriminalcima koji ih mogu iskoristiti za fizicko ugrozavanje
korisnika i njegove imovine.
Uz problem privatnosti krajnjeg korisnika, velik problem predstavlja i potencijalna
mogucnost pristupa bilo kojem sadrzaju kako na posluziteljskim, tako i na klijentskim
racunalima. Protokol se oslanja na posluziteljske i klijentske programe da kontroliraju
pristup sadrzajima na svojim stranama komunikacije. Ukoliko zbog gresaka u
implementaciji ili konfiguraciji oni to ne cine na zeljen nacin, protokol ce bez
dodatnih pitanja napadacu prenijeti sadrzaj s bilo koje lokacije na ciljanom racunalu
ukljucujuci i korisnicke privatne podatke i sistemske podatke racunala.
Navedene prijetnje nikako nisu i jedine koje se, kako za korisnika, tako i za pruzatelja,
javljaju pri upotrebi WWW servisa. Kao najkoristeniji i jedan od najslozenijih servisa,
WWW i njegovi protokoli pruzaju napadacima najveci broj mogucnosti da svoje napade bilo
koje vrste uspjesno izvedu.
Presretanje i krivotvorenje SNMP paketa
SNMP mreznim administratorima omogucuje centralizirano nadgledanje mreze i mijenjanje
postavki mreznih uredaja. Za razliku od vecine protokola aplikacijske razine, SNMP
svoje podatke prenosi koristeci UDP protokol transportne razine, bez uspostavljanja
transportne veze medu krajnjim tockama komunikacije.
Prisluskivanjem prometa koji generira SNMP, napadac moze saznati velik broj informacija
o konfiguraciji mreze i strojnim i programskim resursima koje mrezni elementi koriste.
Na taj mu je nacin olaksano trazenje i iskoristavanje eventualno prisutnih sigurnosnih
slabosti u tim elementima.
Veca je opasnost krivotvorenje SNMP paketa. Funkcionalnost instrukcija koje se SNMP-om
prenose proteze se od jednostavnih zahtjeva za informacijama o mreznom elementu do
naredbi o pokretanju ili zaustavljanju odredene fizicke komunikacijske veze. Steta koju
je moguce napraviti zloupotrebom ovakvih naredbi moze biti vrlo ozbiljna, poput potpunog
onemogucavanja rada mreze. Uz to, mijenjanjem mrezne konfiguracije moguce je sigurnosno
oslabiti mrezu i time otvoriti put novim i opasnijim napadima.
Dostupnost zaporki
Odreden broj protokola zahtijeva da se korisnik, pri uspostavljanju veze, identificira
korisnifikim imenom i zaporkom. Primjer takvog protokola je FTP. Velik problem koji
takvim nacinom identifikacije nastaje je dostupnost zaporki. Zaporke se upisuju na
klijentskom racunalu, a zatim se prenose do posluzitelja koji, nakon provjere, dopusta
nastavak rada. Put kojim zaporke prolaze moze se protezati kroz velik broj tranzitnih
mreza u ciju sigurnost krajnji korisnik ne moze i ne treba imati povjerenja. Ukoliko se
na nekoj od nizih razina podatkovne jedinice protokola (primjerice okviri) ne zasticuju
sifriranjem, napadacima su i zaporke i korisnicka imena dostupni u svojem izvornom,
nepromijenjenom obliku.
Upravo je krada zaporki i korisnickih imena primarni cilj vecine manje ambicioznih
napadaca koji do njih dolaze prisluskivanjem na razini podatkovne veze. Samim time i
meta takvih napadada su krajnji korisnici, cije mrezne resurse napadac zloupotrebljava
kako bi, u najvecem broju slucajeva, dobio pistup do, inace mu nedostupnih, servisa
ili kako bi sakrio svoj identitet u nastavku napada na druge cilj eve.
Preotimanje uspostavljene veze
O napadu preotimanjem uspostavljene veze vec je bilo rijeci u cetvrtom poglavlju, u
sklopu opisa napada desinkronizacijom TCP veze. Taj se napad manifestira najcesce na
aplikacijskoj razini i djeluje na aplikacijske protokole koji svoju vezu uspostavljaju
preko TCP-a.
Gotovo svi osnovni protokoli aplikacijske razine svoju vezu uspostavljaju koristenjem
TCP-a, ukljucujuci tu i Telnet i FTP. U slucaju Telneta, koji se koristi za direktnu
komunikaciju s operacijskim sustavom udaljenog racunala, opasnosti od posljedica
napada preotimanjem veze vrlo su velike. Napadac moze vezu iskoristiti za izdavanje
bilo kakvih naredbi operacijskom sustavu udaljenog racunala, sto, ovisno o korisnikovim
ovlastenjima na tom racunalu, moze izazvati pravu katastrofu u obliku potpunog gubitka
svih korisnickih podataka ili kompromitacije eventualno povjerljivih podataka.
U slucaju FTP-a, prijenos povjerljivih datoteka moguce je presresti i uciniti kopiju
podataka, ili u podatke umetnuti lazni sadrzaj.
Potencijalne opasnosti od preotimanja veze i ostalim protokolima aplikacijske razine
nisu manje. Format podatkovnih jedinica (paketa) svakog od tih protokola javno je
poznat, a paketi mrezom putuju u izvornom obliku te ih nije tesko mijenjati ili
krivotvoriti.
Trojanski konji
Noseci ime kojeg je inspirirala grcka mitologija, ovi programi zapravo su servisi
kojima napadaci neovlasteno dobivaju pristup najcesce korisnikovom racunalu.
Rijec je o programu kojeg korisnik, pod pogresnim dojmom da se radi o korisnoj ili
zanimljivoj programskoj komponenti, dobrovoljno pokrece na svojem racunalu. Nakon
pokretanja, program postaje servis koji se kasnije pokrece automatski, najcesce sa
svakim ucitavanjem operacijskog sustava racunala.
Servisi koje takvi programi instaliraju sluze se vlastitim protokolom aplikacijske
razine. Ti su protokoli u pravilu bazirani na TCP ili UDP, dakle rade bez uspostavljanj
a veze na transportnoj razini(UDP). Ovisno o mogucnostima protokola, napadacu je
omogucen prijenos datoteka sa i na korisnikovo racunalo, ili cak potpuna kontrola
nad racunalom sa mogucnoscu pokretanja raznih programa ili zadavanja naredbi ljusci
operacijskog sustava, sto je posebno opasno.
Zastita podataka na aplikacijskoj razini
Strategije zasite podataka na najvisoj razini mreznog modela su brojne. U nastavku ce
biti pokusano izvrsiti njihovu primjerenu klasifikaciju te ih kratko opisati.
Vanjska kontrola pristupa
Vanjskom kontrolom pristupa problematicnim se pokusajima mrezne komunikacije staje na
put prije nego dopre do ciljanih racunala. Nacini postizanja ovakve kontrole opisani
su u nastavku.
Vatrozidi
Vatrozidi koji kontrolu pristupa vrse na razini aplikacije najcesce su kompletni sustavi
kontrole koji pruzaju najvecu sigurnost mrezi i umrezenim racunalima po svim mreznim
razinama, a ne samo aplikacijskoj.
Na aplikacijskoj razini takvi vatrozidi imaju mogucnost filtriranja svih podatkovnih
jedinica protokola, prema definiranim pravilima. Za primjer, neka od tih pravila su:
- omogucavanje izlaznog, ali ne i ulaznog uspostavljanja veze bilo kojim protokolom
vise razine,
- onemogucavanje uspostavljanja samo odredenih nacina povezivanja protokolom
aplikacijske razine, primjerice aktivnog modaliteta rada FTP podatkovne veze gdje
klijent uspostavlja vezu za prijenos podataka, a dopustanje ostali modaliteta, kao
sto je pasivni modalitet veze FTP-om, zapravo koristite SFTP
- onemogucavanje uspostavljanja veze od klijenta koji nije na zadovoljavajuci nacin
identificiran.
Takvim pravilima vatrozidi bitno smanjuju mogucnost napada na aplikacijskoj razini jer
prema zasticenoj unutrasnjosti mreze propustaju samo manji, sigurniji podskup ukupnog
moguceg prometa. Istovremeno, zasticenim je racunalima omogucen zadovoljavajuci pristup
servisima koji se nalaze na ostalom dijelu Interneta.
Zastitu treba obavezno povecati i pravilnim konfiguriranjem servera tj. servisa koji
se nalaze na njima. Potrebno je i redovito vrsiti update.
Mrezni posrednici (proxy)
Iako se u jednom dijelu literature, primjerice u Sams, mrezni posrednici obraduju u
sklopu vatrozida, ovdje su izdvojeni radi njihova specificnog nacina rada. Mrezni
posrednici koji djeluju iskljucivo na aplikacijskoj razini, a takvih je vecina, u
strucnoj se literaturi nazivaju jos i "application gateways",
Razliku izmedu ova dva koncepta. Osnovna je odlika vatrozida da dopustaju direktnu
vezu izmedu krajnjih tocaka komunikacije, ako je to u skladu s kriterijima filtriranja.
Mrezni posrednici, za razliku od vatrozida, nikada ne omogucavaju uspostavljanje takve
direktne veze. Svaki pokusaj uspostavljanja veze izmedu vanjskog i unutarnjeg dijela
mreze ili obratno mrezni ce posrednik presresti. Ukoliko pokusaj zadovoljava definirana
sigurnosna pravila mrezni ce posrednik samostalno uspostaviti vlastitu vezu s zeljenim
odredistem. Time nastaju dvije odvojene veze u kojima je mrezni posrednik centralni
element.
Ovakvim nacinom rada, mrezni posrednik postaje mostom izmedu dvije veze. Njegov je
zadatak obaviti potrebne konverzije podatkovnih jedinica protokola koje dobiva s
jedne strane komunikacije i takve ih proslijediti na odrediste. Cesto to ne ukljucuje
samo kopiranje podataka i mijenjanje zaglavlja izmedu paketa istog protokola, vec i
sve operacije koje su potrebne da bi se povezala dva razlicita protokola prema kojima
veze funkcioniraju.
Mrezni posrednik pruza veci stupanj zastite mreze od vanjskih upada, ali uzrokuje i
dodatno kasnjenje u isporuci paketa zbog konverzija koje mora vrsiti. Isto tako
zahtijeva i posebnu funkcionalnost u klijentskim aplikacijama koje moraju podrzavati
rad preko posrednika. Upravo zbog navedenih razloga takav nacin rjesavanja
sigurnosnih problema nije preporucljiv za primjenu u bas svim situacijama.
Koristenje sigurne identifikacije
U praksi najpozeljnija sigurnosna konfiguracija svakako je ona koja se ne bazira na
paranoicnosti vec na povjerenju. Problem je prve sto u najvecem broju slucajeva uvodi
restrikcije koje ozbiljno ugrozavaju ukupnu upotrebljivost mreze. Problem je druge
sto se povjerenje mora bazirati na savrsenom sustavu identifikacije kakav u praksi
ne postoji. Ipak, kako bi se ukupnost mrezne sigurnosne konfiguracije barem malo
pomakla u smjeru povjerenja, potrebno je uvesti najbolji dostupni sustav identifikacije.
Odreden broj aplikacijskih protokola omogucuje identifikaciju pomocu korisnickog imena
i zaporke sto nije osobito sigurno, imajuci na umu cinjenicu da ti podaci mrezom putuju
u izvornom obliku. Stoga je koristenje sigurnih identifikacijskih servisa posebno
preporucljivo. Mogucnost za suradnju protokola aplikacijske razine i razine sesije u
ovom je podrucju velika, i u velikom se broju slucajeva uspjesno koristi na Internetu.
Dobar je primjer koristenje ranije opisanog sustava Kerberos za identifikaciju i
sigurnu komunikaciju sa servisima aplikacijske razine.
Sigurnost na krajnjim tockama komunikacije
Dosadasnja razmatranja zastite na aplikacijskoj razini temeljila su se na upotrebi
posrednickih sustava. To ipak ne znaci da se i na krajnjim tockama komunikacije ne moze
pozitivno utjecati na sigurnost, cak stovise, takvi su napori visoko preporucljivi.
Naime, vanjska kontrola pristupa bori se da bi osigurala sto vecu sigurnost, uz sto
neznatnije smanjenje funkcionalnosti. Kako su ova dva cilja u suprotnosti, cesto se
na racun funkcionalnosti gubi na sigurnosti, pa u takvu vrstu kontrole nije dobro
imati potpuno povjerenje.
Najlaksi nacin zastite jest koristenje aplikacijskih protokola koji imaju mogucnost
sigurne komunikacije. Autori SNMP-a uvidjeli su velike sigurnosne prijetnje koje su
direktna posljedica velikih mogucnosti i nepostojanja sigurnog nacina razmjene
podataka tim protokolom. Iz tog se razloga u sve novije specifikacije ukljucuju i
sigurnosni elementi cije koristenje je imperativ za svakog ozbiljnog mreznog
administratora. Novije verzije ostalih protokola takoder se nadograduju sigurnosnim
elementima, a posebno je tu zanimljiv HTTP koji ima mogucnost koristenja SSL-a.
U takvim okolnostima, slanje bilo kakvih osobnih podataka nikako ne bi trebalo biti
obavljano putem nesigurne HTTP veze. SSL i ostalim protokolima aplikacijske razine
omogucuje uspostavljanje sigurne veze, a kada se klijentski programi s takvom
mogucnoscu pojave, svakako ih treba poceti koristiti.
Sigurnosni nedostaci ostalih protokola mogu se nadoknaditi upotrebom tehnika
sifriranja koje su opisane u sklopu sloja prikaza. Aplikacijskom protokolu poput SMTP-a
ili NNTP-a, kojemu su sigurnosne mogucnosti slabe ili nikakve, svejedno je hoce li
korisnik njime poslati sifriranu, digitalno potpisanu ili potpuno nezasticenu poruku.
Kada mu je vec omogucen takav izbor, korisnik bi svakako trebao izabrati sigurniji
nacin komunikacije doticnim protokolom. Bolja je mogucnost koristenje potpuno
drugacijeg protokola koji obavlja isti zadatak, ako takav postoji i ako je siguran.
U primjeru terminalskog pristupa, preporuca se koristenje Secure Shell protokola (SSH)
koji svoje podatke prenosi sifrirane i za koji postoji mnostvo klijentskih aplikacija
na najrazlicitijim operacijskim sustavima, upotreba Telneta ili slicnih protokola
postaje nepreporucljiva i zapravo suvisna.
Veliki pozdrav svima onima koju su cijeli ovaj tekst procitali ;)
Pozdravljam takodjer sve ljude s HackGen, II-LABS, ...
i naravno sve ljude s #ugs (krstarica)
Nadam se da nisam zaboravio koga :P
root9