Varnost informacij in omrežij

Dušan Gleich, Žarko Čučej

temelji na
»Information and Network Security«
od Miguel Soriano

Avtorji

Dušan Gleich, Žarko Čučej
temelji na »Information and Network Security«
od Miguel Soriano

Naslov

Varnost informacij in omrežij

Izdan

České vysoké učení technické v Praze

Preveden

Fakulta elektrotechnická

Kontakt

Technická 2, Praha 6, Czech Republic

Recenzent

Andrej Knuplež, Maruša Bence

1. izdaja

ISBN 978-80-01-05300-3

Innovative Methodology for Promising VET Areas (IMProVET)
http://improvet.cvut.cz

Izvedba tega projekta je financirana s strani Evropske komisije.
Vsebina publikacije (komunikacije) je izključno odgovornost avtorja in v nobenem primeru ne predstavlja stališč Evropske komisije.

PRIPOMBA

Ta modul vsebuje informacije, potrebne za osnovno orientacijo študentov na področju varnosti omrežja in informacij.

CILJI

Modul vsebuje osnovne informacije o varnosti informacij in omrežij: kako zagotoviti varnost informacij in omrežij, kako oblikovati varnostno politiko in kako zmanjšati nevarnost napadov na varnost. Prav tako vsebuje opis kriptografije z javnim in tajnim ključem. Opis zaključuje še pregled varnosti omrežja in požarnih pregrad.

LITERATURA

[1]  Bruce Schneier: Applied Cryptography. John Kiley & Sons, Inc., New York, 1994

[2]  William Stallings: Cryptography and Network Security. Principles and Practices. Prentice Hall, New Jersey, 2003

[3]  Vesna Hassler: Security fundamentals for E-Commerce. Artech House, Boston, 2001

[4]  Rolf Oppliger: Internet and Intranet Security. Artech House, Boston, 2002

RAZLAGA

Definition | DEFINICIJA
Interesting | ZANIMIVO
Note | ZAPISEK
Example | PRIMER
Summary | POVZETEK
Advantage | PREDNOSTI
Disadvantage | SLABOSTI

1
Uvod

1.1 Uvod

Varnost informacij ni le preprečevanje okužb z virusi, onemogočanje vdorov hekerjem in omejevanje slamnate pošte. Varnost informacij zajema tudi sodelovanje z zaposlenimi in upravo organizacije oziroma podjetja. Slednja morajo zagotoviti, da bodo vsi zaposleni obveščeni o trenutnih grožnjah in o načinih, kako lahko zaščitijo svoje informacije in sisteme pred njimi.

Pojme varnost informacij, varnost računalnikov in varnost omrežja pogosto uporabljamo izmenično, saj se med seboj v veliki meri prekrivajo in si delijo skupen cilj: zavarovati zaupnost, celovitost in razpoložljivost informacij. Seveda so med njimi tudi drobne razlike.

DEFINICIJA

Varnost informacij pomeni varovanje informacij in informacijskih sistemov pred nepooblaščenim dostopom, uporabo, razkritjem, motnjami, spremembami, pregledovanjem, snemanjem ali uničenjem.

Varnost računalnikov je splošno, generično ime za zbirko orodij, namenjenih za zaščito obdelave in pomnjenja podatkov ter za onemogočanje hekerjev.

Varnost omrežja je splošno, generično ime za zbirko orodij, namenjenih za zaščito podatkov med njihovim prenosom. V povezavi z internetom se pogosto uporablja pojem varnost interneta. Ta pojem vključuje tudi splošno varnost, ki je generično ime za zbirko orodij za zaščito zasebnih omrežij pred uporabniki ostalih omrežij.

POVZETEK

Razlike med njimi so predvsem v pristopu do uporabnika, v uporabljeni metodologiji in v področju, na katerega se usmerjamo. Informacijska varnost se osredotoča na zaupnost, celovitost in razpoložljivost podatkov, ne glede na obliko podatkov. Ti so lahko v elektronski, tiskani ali drugi obliki. Računalniška varnost se osredotoča predvsem na zagotavljanje razpoložljivosti in pravilnega delovanja računalniškega sistema, ne skrbi pa za podatke, ki so shranjeni v računalniku ali jih ta obdeluje. Omrežna varnost se osredotoča na varovanje podatkov med njihovim prenosom.

1.2 Povzročitelji nevarnosti

Računalniškim sistemom in omrežjem niso nevarni samo znani virusi, njihova izpostavljenost raznim nevarnostim sega mnogo globlje. Zato je njihovo varovanje danes prednostna naloga. Danes je prednostna naloga varovanje računalniških sistemov in omrežij, saj jih ne ogrožajo le znani virusi, temveč je njihova izpostavljenost raznim nevarnostim sedaj mnogo obsežnejša. V omrežnem svetu nova generacija vandalov in podatkovnih huliganov ne potrebuje več fizičnega stika z žrtvijo. Podatke je mogoče enostavno “na daleč” kopirati, prenašati, spreminjati ali uničiti. Zato prizorišče kaznivega dejanja ne ponuja veliko dokazov: ni sledov, odkrivanje storilcev je skoraj nemogoče, njihovo prijetje pa še toliko težje, saj pravni okviri tovrstnega kriminala (še) niso ustrezno razdelani.

Narava Interneta, mislimo na njegovo delovanje v realnem času, dodaja še novo dimenzijo tega kriminala: dogaja se ta hip.

POVZETEK

Obstaja sicer mnogo povzročiteljev varnostnih težav. Med njimi so trije temeljni:

tehnološke slabosti,

slabosti v varnostni politiki,

slabosti v konfiguraciji sistemov.

ZAPISEK

Tem slabostim lahko dodamo še človeške slabosti in še nekatere druge, vendar je naš namen obravnava tistih varnostnih vprašanja, ki jih lahko potem, ko jih spoznamo, z ustrezno varnostno strategijo upravljamo, spremljamo in tako izboljšamo varnost.

Tehnološke slabosti

Vsaka tehnologija ima znane in neznane slabosti ali ranljivosti, ki jih lahko izkoristi vsak dovolj motiviran napadalec oziroma povzročitelj incidentov. Nekatere slabosti množičnih izdelkov so dobro znane, saj so pogosto objavljene v javnih medijih. To pa ne pomeni, da so izdelki, o katerih se manj piše, bolj varni. Dejstvo, da so hekerjem manj zanimivi, še ne pomeni, da so varni.

Med tehnološkimi slabostmi izpostavimo naslednje:

Zasnova prvotnih internetnih protokolov ni upoštevala problemov varnosti. Danes se proizvajalci trudijo, da bi z upoštevanjem najboljših praks varovanj in varnostnih storitev, zmanjšali varnostno tveganje pri njihovi uporabi.

Računalniški in omrežni operacijski sistemi. Ne glede na proizvajalca, naj gre za odprt standard ali zaščiten izdelek, ima vsak operacijski sistem (OS) pomanjkljivosti, ki jih je potrebno neprestano odpravljati s popravki, nadgradnjami in upoštevanjem najboljših praks.

Slabosti omrežnih naprav. Varnostno ranljivost omrežnih naprav pogosto imenujemo tudi "luknje" v varnosti. Te “luknje” odpravimo (kadar je le mogoče) s popravki, uporabo IOS nadgradnje in upoštevanjem najboljših praks, da tako ublažimo znane težave.

Slabosti v varnostni politiki

Slabosti v varnostni politiki se kažejo v pomanjkljivih predpisih in njihovem nespoštovanju ali pa podjetje sploh nima predpisov o varovanju svojega premoženja. V premoženju podjetja imajo danes največjo vrednost podatki in informacije, ki jih podjetje potrebuje pri svojem poslovanju.

Primeri slabosti v varnostni politiki, ki imajo negativni vpliv na varnost informacijskih in računalniških sistemov, so:

Ni dokumentov o varnostni politiki. Odsotnost predpisanih varnostnih postopkov in načrtov pomeni, da so varnostna prizadevanja, če sploh obstajajo, neorganizirana.

Ni načrta ukrepanja v primeru nesreč. Če ne obstaja vnaprej pripravljen načrt, kako ukrepati v primeru napada na omrežje, ali celo v primeru požara, poplave ali potresa, bodo zaposleni prepuščeni svoji iznajdljivosti in presoji. Še tako dobro usposobljeno in izkušeno osebje pa lahko reagira napačno, ko se sooči z nepričakovanimi katastrofalnimi dogodki.

Ni predpisov o dopolnjevanju ali spremembah programske in strojne opreme. Vsak dodatek ali nadgradnja programske in/ali strojne opreme, naj je motiv večja produktivnost ali razvedrilo, lahko povzroči nepričakovano ranljivost varnosti. Na primer, vključitev brezžične dostopne točke v omrežje brez dovoljenja odgovornih, lahko zruši navidezna “garažna vrata” do omrežja in virov podjetja. Podobno lahko namestitev neavtoriziranega ohranjevalca ekrana nekomu drugemu odpre dostop do gesel, uporabniških imen in ostalih informacij.

Odsotnost nadziranja varnosti. Čeprav podjetje zgradi varno omrežje, odsotnost stalnega nadzora zapisov o delovanju omrežja ali njihovi slabi presoji reviziji informacijskih sistemov omogoča nastanek novih ranljivih točk v omrežju in njegovo nepooblaščeno uporabo. V najslabšem primeru se zgodi, da ne opazimo resnih izgub pomembnih informacij ali njihovega stalnega odtekanja.

Politika zaposlovanja. Pogosto menjavanje osebja, odpravnine, ki so nižje od običajnih, pomanjkanje možnosti usposabljanja in podobno, lahko vpliva na varnost omrežja. Največjo nevarnost omrežju predstavljajo tako premalo izobraženi in neizkušeni zaposleni, ki so na odgovornih položajih in/ali pristojni za varnost omrežja, kot tudi kakorkoli prizadeti oziroma užaljeni bivši zaposleni.

Notranja politika. Brezbrižen odnos in brezbrižnost pri poslovanju pogosto ustvarita oportunistom relativno varno okolje in skušnjave, da se igrajo s svojo močjo. Takšni pojavi so posledica sindroma "tu smo vsi kot družina ". Na žalost imajo tudi najboljše družine v svoji sredi tatu. Varnostni problemi lahko ostanejo neopaženi oziroma prikriti tudi zaradi notranjih bojev, backbitinga obrekljivosti, borbe za premoč, ali podtalnega rovarjenja.

Slabosti v konfiguraciji sistemov

Veliko omrežnih naprav uporabljamo kar s privzeto konfiguracijo. Ta sicer poudari učinkovitost naprav ali olajša njihovo namestitev, le redko pa upošteva varnostni vidik uporabe naprav v konkretni situaciji. Zato lahko naprave, pri katerih nismo izvedli ustrezne korekcije privzetih nastavitev, povzročijo resne varnostne težave.

Nekatere skupne slabosti v konfiguraciji sistemov so navedene spodaj.

Neučinkovit seznam nadzora dostopa do omrežja, ki ne blokira neželenega prometa.

Privzeta, manjkajoča ali stara gesla.

Vrata in storitve, ki se ne uporabljajo, ostanejo aktivne.

Izmenjava identifikatorja (ID) uporabnika in gesla v nezaščitenem tekstu.

Nezaščiten ali slabo zaščiten daljinski dostop preko Interneta ali komutirane storitve.

Stalno spremljanje obvestil in opozoril prodajalcev opreme ter novic proizvajalcev nam lahko zelo pomaga pri odkrivanju najbolj znanih ranljivosti opreme in njene konfiguracije. V teh obvestilih in opozorilih so pogosto tudi napotki in rešitve za odpravo ali omilitev nepravilnosti.

1.3 Vrste napadov

POVZETEK

Napadi na varnost so tiste sistematične dejavnosti, katerih cilj je zmanjšanje ali onemogočanje varnosti. S tega vidika lahko napad razložimo kot sistematično grožnjo, ki jo izvaja neka entiteta namerno, pametno in na umeten način. Računalniška omrežja so lahko izpostavljena mnogim nevarnostim številnih napadov.

Nekaj napadov je opisanih v nadaljevanju.

Socialni inženiring, s katerim napadalec poskuša pridobiti dostop do omrežja z izkoriščanjem socialnih sredstev povezav (pretvarjanje, da je legitimni uporabnik sistema ali administrator oziroma skrbnik, z zavajanjem ljudi, da razkrijejo skrivnosti itd.).

Napadi z vojno klicev, v katerih napadalec s pomočjo računalnika, modema in posebne programske opreme išče računalnike opremljene z modemi, ki se samodejno odzivajo na klice. Preko njih skušajo ustvariti pot v omrežje podjetja.

Napadi z zavračanjem storitev. Ti vključujejo vse vrste napadov, s katerimi napadalec skuša tako preobremeniti računalnik ali omrežje, da ju zakoniti uporabnik ne more več uporabljati.

Napad z upoštevanjem protokolov. Ti napadi uporabljajo znane (ali neznane) pomanjkljivosti omrežnih storitev.

Napadi gostitelja, kjer napadalec napada ranljive točke operacijskega sistema v računalniku ali vzpostavitev sistema in njegovo administriranje.

Ugibanje gesla. Geslo je niz simbolov in je običajno povezano z imenom uporabnika, s katerim računalnik prepozna uporabnika ter ugotovi njegovo istovetnost. Na skoraj vseh računalnikih geslo izbere uporabnik. Ta postopek prestavlja breme varnosti na končne uporabnike, ki jih mnogokrat ne skrbi pomen varnosti pri izbiri gesel ali se ga sploh ne zavedajo. Pri izbiri gesel na splošno velja, da gesla, ki si jih enostavno zapomnimo, tudi enostavno uganemo. Napadalci pa poznajo veliko metod, kako uganiti geslo.

Prisluškovanje vseh vrst. Zajema tudi krajo elektronske pošte, datotek, gesel in drugih informacij na omrežju, ki jo napadalec izvede s prisluškovanjem.

Napade na varnost lahko razdelimo na dve glavni vrsti:

pasivne napade,

aktivne napade.

1.4 Pasivni napadi Passive attacks

POVZETEK

Pri pasivnih napadih napadalec samo prisluškuje ali spremlja dogajanje v prenosnem kanalu. S tem se želi naučiti, kako uporabljati informacije o sistemu, ne da bi vplival na vire sistema. Ti napadi ogrožajo predvsem zaupnost podatkov.

Razlikujemo dve vrsti pasivnih napadov:

Prisluškovanje. Večina omrežnih komunikacij ni zaščitena. Zato lahko napadalec, ki si pridobi dostop do prenosnih kanalov, “posluša” ali bere podatke, ki se izmenjujejo po njih. Največji varnostni problem administratorjev v podjetjih je prav možnost prisluškovanja. Tega lahko zmanjšamo ali preprečimo s šifriranjem podatkov.

Analiziranje prometa. V tem procesu s pomočjo interpretacije (razlaganja) in pregledovanja (obravnave) sporočil sklepamo o vzorcih v komunikaciji. Analiza podatkov je obravnava in interpretacija sporočil, s katero iz vzorca komunikacijskega prometa skušamo sklepati o informacijah v sporočilih. Analizo lahko izvajamo tudi pri šifriranih sporočilih, ki jih ne zmoremo dešifrirati. Na splošno velja, da večje kot je število opazovanih oziroma prestreženih in shranjenih sporočil, več lahko sklepamo o vsebini prometa.

Pasivni napadi

1.5 Aktivni napadi

Z aktivnimi napadi skuša napadalec spremeniti vire sistema ali vplivati na njihovo delovanje.

Maškarada ali kraja identitete. V tem napadu se napadalec pretvarja, da je avtorizirani uporabnik omrežja. Tako skuša doseči dostop ali privilegij za dostop do omrežja.

Ponavljanje. Pri tem napadu napadalec prestreže veljavni prenos podatkov, ga zakasni ali ponovno pošlje kot zlonamerni program. Ponovno pošiljanje je lahko del napada s krajo identitete.

Sprememba sporočila. Pri tem napadu napadalec ali spremeni del originalnega sporočila (tako, da ga najprej odstrani iz omrežja, nato ga spremeni in ponovno pošlje) ali pa sneta sporočila ponovno pošilja s spremenjenim vrstnim redom.

Mož na sredini. Pri tem napadu se napadalec vrine med žrtev napada in omrežje (ponavadi med spletno stran in njenim končnim uporabnikom). Iz prestreženih sporočil skuša pridobiti informacije za krajo identitete ali druge vrste prevar. Ta napad pogosto označujemo s kratico MitM (Man in the Middle).

Zavračanje storitev ali porazdeljeno zavračanje storitev. Ta napada preprečujeta ali ovirata normalno uporabo ali upravljanje komunikacijskih objektov ali storitev. Medtem ko se prvi napad vrši iz ene „okužene“ naprave (v žargonu jo imenujejo „bot“), se drugi vrši iz večjega števila okuženih naprav povezanih z Internetom. Te okužene naprave imenujem „botnet“. Ta napada pogosto označujemo z njunima angleškima kraticama DoS (Denial of Service) oziroma z DDoS (Distributed Denial of Service).

Inteligentno trajno ogrožanje. To je omrežni napad, v katerem nepooblaščene osebe pridobijo dostop do omrežja in so potem nanj zelo dolgo povezane. Cilj teh napadov je predvsem kraja (zaupnih) podatkov, zato so ponavadi tarče teh napadov organizacije, kot so vojaška obramba, proizvodna in finančna industrija. Ta napad pogosto označujemo z angleško kratico APT (Advanced Persistent Threat).

Aktivni napadi

1.6 Napadalci: cilji in njihovo obnašanje

DEFINICIJA

Napadalec ali vsiljivec je oseba, ki pridobi ali skuša pridobiti nepooblaščen dostop do informacijskega sistema.

ZAPISEK

Napadalce lahko razvrstimo na več načinov. V osnovi jih delimo v tri skupine glede na:

lokacijo napadalca, in sicer glede na lokacijo napadenega sistema,

kako dobro je izveden napad,

namen napada oziroma zakaj je bil napad izveden.

Iz vidika lokacije napadalca, ločimo dve vrsti napadalcev:

notranji napadalec ali “insider”,

zunanji napadalec ali “outsider”.

Notranji napadalec je oseba, ki lahko legalno dostopa do notranjega računalniškega omrežja, vendar skuša nepooblaščeno pridobiti podatke, vire sistema in storitve za katere ni pooblaščena, ali skuša zlorabiti podatke, za katere je pooblaščena.

Zunanji napadalec je oseba brez pooblastila za dostop do notranjega omrežja, zato vanj dostopiti tako, da izkoristi katerokoli njegovo ranljivo točko ali varnostno luknjo.

Glede na njihovo spretnost, napadalce delimo na:

amaterje,

profesionalce.

Amaterji in njihovi napadi so manj nevarni kot so napadi profesionalcev. Nivo teh napadov je enak nižji izobrazbi in slabši opremi napadalcev.

Profesionalci so ponavadi vrhunski računalniški strokovnjaki, ki imajo dostop do specializiranih virov in so visoko izobraženi. V praksi to pomeni, da so sposobni izvesti zelo nevarne napade z resnimi posledicami za računalniške sisteme in omrežja.

Pogoste so diskusije o delitvi napadalcev med:

hekerje,

krekerje.

Heker je oseba z dobrim ali odličnim poznavanjem informacijskih tehnologij. Pogosto je soudeležen v pomembnih programskih projektih. Zato lahko svoje poznavanje in znanje s pridom uporabi pri iskanju ranljivosti sistema in varnostnih lukenj v njegovi zaščiti. Ta njegova aktivnost je lahko v pomoč in je uporabna pri izboljševanju varnosti. Hekerji imajo svoj kodeks obnašanja, ki določa tudi viteško vedenje.

Kreker je oseba, ki lahko premaga protipiratsko zaščito programov in svoje znanje uporablja na neetični način. Za to skupino obstaja še več definicij, ki poudarjajo obseg njihovih aktivnosti.

Poleg hekerjev in krekerjev obstajajo še druge skupine napadalcev. Največja med njimi so „hekerski malčki“ (scriptkiddies). To so napadalci z nižjim nivojem znanja o informacijskih tehnologijah. V svojih napadih uporabljajo skripte s kodi, ki so sposobni izkoristiti ranljivost informacijskega sistema. Te vstavljajo v informacijski sistem brez njegove globlje analize, vendar ga z njimi lahko resno poškodujejo. Tovrstni napadi so najpogostejši in najnevarnejši.

1.7 Kako se lahko zaščitimo?

V tem razdelku opisujemo osnovna priporočila, kako se lahko doma zaščitimo pred napadi.

Uporabljamo varna gesla

Pogosto so gesla edina zaščita sistema. Uporabniško ime je samo ime in kot tako ne preverja uporabnikove istovetnosti. To naredi geslo. Zato so gesla ključnega pomena za varnost domačega omrežja in zaradi tega jih moramo ustrezno varovati ter izbirati. Požarni zid in sistem za zaznavanje vdorov ne bosta zaščitila vaših podatkov, če je vaše geslo ogroženo.

Varno geslo je takšno, da ga ne moremo najti v nobenem slovarju, ne v domačem in ne v tujem jeziku. Če gesla ne moremo najti v slovarjih, ga je mnogo težje uganiti. Geslo mora biti sestavljeno tako, da ga je težko uganiti. Prav tako je težje uganiti ali “zlomiti” daljša gesla kot krajša.

Pri izbiri varnega gesla je pametno upoštevati naslednja navodila:

Uporabite nesmiselno kombinacijo črk. Najboljša gesla so tista, katerih pomen je čista neumnost. Na primer, pri tvorjenju gesla uporabimo stavek: "Ne pričakuj, da se bom vedno popolno obnašala in na obrazu imela sončen nasmeh" in iz prvih črk vseh besed v tem stavku sestavimo geslo, ki se bo glasilo: npdsbvpoinoisn.

Geslo naj vsebuje velike in male črke. Varna gesla vsebujejo številke ter velike in male črke. Velika črka naj ne bo na prvem mestu.

Dolga gesla so bolj varna. Geslo mora biti dolgo vsaj osem znakov.

Gesla moramo periodično menjavati. Tudi najbolj varna gesla moramo redno menjavati (recimo vsaka dva meseca). S tem preprečimo napadalcu, da bi imel dovolj časa, da ga “zlomi”. Mnogi operacijski sistemi omogočajo nastavitev, ki od vsakega uporabnika zahteva, da po nastavljenem času menja geslo. Čeprav se veliko uporabnikov s pogosto menjavo gesla ne strinja, izkušnje kažejo, da je ta odločitev dobra in pravilna.

Gesla vsakokrat na novo oblikujte in ne uporabljajte istih gesel. Če že, pa isto geslo uporabite šele po preteku enega leta oziroma - bolje - po preteku osemnajstih mesecev.

Za geslo ne uporabi zaporedje črk iz tipkovnice. Izogibajmo se geslom, kot so qwertz, 12345678 ali asdfghj. Videti so nesmiselno, a imajo značilen vzorec zaporednih tipk na tipkovnici. Kreker zlomi tako geslo v nekaj sekundah.

Geslo je najbolj tajni podatek. Vsa gesla moramo zaščititi in jih ne smemo z nikomer deliti! Mnogi uporabniki naredijo veliko napako, ko si geslo zapišejo na samolepilni listek in ga zalepijo na zadnjo stran tipkovnice. Na ta način ne preslepijo računalniških nepridipravov!

Gesla upravne in izvorne ravni so za vsiljivce ključi do kraljestva. Sistemski skrbniki oziroma administratorji z osnovnim (root) privilegijem – torej nimajo omejitev pri dostopu in spreminjanju česarkoli v omrežju – morajo uporabljati najbolj varna gesla in upoštevati najstrožja pravila o njihovi izbiri in njihovem spreminjanju. Pri tem priporočamo, da skrbniki upoštevajo naslednje metode naslednji metodi:

Zapišite si vsa osnovna gesla in jih varno shranite. V primeru, da skrbnik nekaj časa ne more skrbeti za omrežje, ali pa nenadoma zapusti službo in gesel nimate nikjer varno shranjenih, so ta izgubljena za vedno. Sicer obstajajo programi za obnovitev gesla, vendar se v izrednih razmerah ni priporočljivo zanašati na njih.

Če zasumite, da je bilo osnovno geslo ogroženo, takoj zamenjajte vsa gesla. V primeru, če je bilo ogroženo ali razkrito osnovno geslo, ni več mogoče zagotoviti varnosti ostalih gesel.

Prav tako je priporočljivo, da uporabnik, ko zasumi, da mu je bilo ukradeno geslo, tega takoj zamenja in o tem obvesti skrbnika omrežja in nadrejene.

Vedno uporabljajte protivirusno zaščito

Nobena protivirusna zaščita ni popolnoma zanesljiva, vendar jo je še vedno bolje uporabljati kot ne. Večina jih dobro varuje pred najpogostejšimi virusi. Če pa smo brez protivirusne zaščite, ne bomo vedeli, ali je naš računalnik okužen (z znanimi virusi).

Protivirusne programe sestavljata dva dela. Prvi del vsebuje pregledovalnik, v drugem delu pa je baza virusov. Oba dela moramo redno posodabljati, v nasprotnem primeru se slabša učinkovitost programa. Za posodabljanje protivirusni program običajno vsebuje ukaz “posodobi” ali “update”, če tega nima, lahko za posodobitvami pogledamo na spletno stran ponudnika programa lahko posodobitve preverimo na spletni strani ponudnika programa.

Pregledovalnik protivirusnemu programu pove, kdaj, kako in kje skenirati, baza virusov pa vsebuje “podpise” vseh virusov, ki jih protivirusni program pozna. Podpisi so vzorci virusov in njihove aktivnosti. Protivirusni programi lahko večkrat sprožijo lažne preplahe, vendar je to le drobna neprijetnost v primerjavi z zaščito, ki jo nudijo.

Pri vsakem odkritju novega virusa dobavitelj protivirusnega programa posodobi bazo virusov in vključi nov pregled. Občasno moramo posodobiti tudi pregledovalnik. Vedeti moramo, da v primeru, ko je posodobljen le del programa, drugi del pa je zastarel, program ne bo več pravilno deloval.

Najboljšo zaščito pred virusi dobimo, ko instaliramo protivirusne programe na vsako delovno postajo, na vsak strežnik oziroma na vsak računalnik v omrežju. Na ta način lahko odkrijemo viruse na vseh možnih vhodih v omrežje. Vse prenosne medije (zgoščenke, USB ključi itd.) moramo pred njihovo uporabo vedno pregledati s protivirusnim programom. Pri namestitvi protivirusnih programov v prehode k Internetu na Internet, se zavarujemo pred virusi, ki bi v notranje omrežje prišli od zunaj.

Vedno spremenite privzeto konfiguracijo

Najpogostejša napaka, ki jo naredimo pri instalaciji novega sistema v omrežju, je, da ga uporabljamo kar s privzeto konfiguracijo, torej s tisto, ki jo je ustvaril proizvajalec. Te konfiguracije imajo pogosto izhodiščni skrbniški vpis in geslo, ki jih vsi hekerji po vsem svetu dobro poznajo. To velja tako za usmerjevalnike, stikala, zvezdišča, operacijske sisteme, kot za sisteme elektronske pošte in druge strežniške aplikacije, kot so podatkovne baze in spletni strežniki.

Poleg tega, da imajo privzete konfiguracije znana gesla, vsebujejo tudi več varnostnih lukenj. Tako moramo – za zagotavljanje boljše varnosti – pred uporabo naprave spremeniti gesla in zakrpati varnostne luknje s posodobitvijo varnostnih ukrepov. Nekoliko več dela pri instalaciji nam lahko kasneje prihrani veliko težav.

Uporabljajte požarno pregrado

Močno priporočamo uporabo katerekoli požarne pregrade. Zavedajmo se, da vsiljivci nenehno skenirajo tudi domača omrežja in iščejo njihove znane ranljivosti. Omrežne požarne pregrade (te so lahko narejene s programsko ali strojno opremo) lahko zagotovijo določeno mero zaščite pred temi napadi, vendar požarna pregrada ne zazna ali ustavi ne zazna in ne ustavi vseh napadov. Zato ni dovolj, da namestimo požarni zid, nato pa prezremo vse ostale varnostne ukrepe.

Ne odpirajte neznane priponke elektronski pošti

Pred odpiranjem priponke k elektronski pošti se moramo prepričati, ali poznamo njen vir. Pri tem ni dovolj, da poznamo naslov pošiljatelja. Na primer, virus Melissa se širi ravno zato, ker prihaja iz znanih naslovov. Zlonamerni kodi se lahko širijo z zabavnimi in mamljivimi programi.

Pri odpiranju priponke je pomembno, da se ravnamo po spodaj opisanem postopku.

Preveri, ali je baza virusov posodobljena.

Datoteko v priponki shrani na trdi disk.

Skeniraj datoteko z antivirusnim programom.

Odpri datoteko.

Preden odprete datoteko lahko, kot dodatni varnostni ukrep, odklopite računalnik iz omrežja.

Če se držimo zapisanih pravil, bomo zelo zmanjšali, vendar ne povsem odpravili, možnost, da se bomo zavarovali pred zlonamernim kodom v priponki. Če se držimo zapisanih pravil, bomo zmanjšali možnost, da bi se zlonamerni kod v priponki širil na ostale računalnike. Vseeno pa možnosti širjenja zlonamernega koda s temi ukrepi ne bomo uspeli popolnoma preprečiti.

Ne zaženite programa neznanega izvora

Nikoli ne zaženite programa, če ne poznate njegovega avtorja ali podjetja, ki mu zaupate. Prav tako ne pošiljajte programov neznanega izvora za razvedrilo svojim prijateljem ali sodelavcem, saj lahko vsebujejo trojanskega konja.

Posodabljajte vse aplikacije vključno z operacijskim sistemom

Prodajalci programske opreme običajno po odkritju ranljivosti njihove programske opreme objavijo njene popravke. Večina programske dokumentacije opisuje, kako pridemo do popravljenih verzij programa oziroma kako jih posodobimo.

Mnoge aplikacije (na primer Internetni brskalniki in drugi programi) samodejno preverjajo, ali so na voljo njihovi programski popravki. Če tega ne počnejo, je nujno, da sami to periodično preverjamo.

Izključite računalnik, če ga ne uporabljate

Pred napadi iz omrežja je vaš računalnik popolnoma varen le, ko je izklopljen ali izključen iz omrežja! Zato računalnik, ko ga ne uporabljate, izklopite ali vsaj prekinite njegovo povezavo z omrežjem.

Redno ustvarjanje varnostne kopije pomembnih podatkov in naredite si zagonsko zgoščenko svojega računalnika

Kopije pomembnih datotek redno shranjujte na zamenljiv medij. Če imate možnost, za to uporabljajte namenska programska orodja. Zamenljivih medijev ne hranite ob računalniku!

Varnostne kopije pridejo prav tudi pri okvari diska v računalniku. Pri tej nezgodi in pri okužbi računalnika je zelo priročno, če imate še zagonsko zgoščenko, s katero lahko obudite računalnik. Seveda si morate zagonsko zgoščenko pripraviti preden imate težave z zagonom računalnika.

2
Zlonamerni in antivirusni programi

2.1 Zlonamerna programska oprema

DEFINICIJA

Zlonamerna programska oprema je generično ime za katerekoli zlonamerne ter nadležne programe, ki so jih izdelali zato, da izkoristijo računalnike za neželene aktivnosti brez vednosti ali soglasja uporabnika. Izvajanje teh programov lahko povzroči prekinitev delovanja računalnika, lahko pa se uporabljajo tudi za zbiranje občutljiv informacij, ali za pridobitev neavtoriziranega dostopa do računalniškega sistema.

Zlonamerna programska oprema ni isto kot programska oprema s hrošči, ki jih pri razvoju niso opazili. Slednjo so izdelali za določeno koristno uporabo.

Računalniški virusi so podmnožica zlonamernih programov, enako kot so črvi, trojanski konji, programi za sprejem reklamnih sporočil (ang. adware), vohunski programi, korenski komplet itd.

ZANIMIVO

Danes se zlonamerni programi najpogosteje širijo preko Interneta. Najpogosteje po metodi "drive-by download" oziroma s snemanjem datotek ali podatkov. Te prenese kar uporabnik sam, na primer iz spleta ali iz zlonamerne priponke k elektronski pošti (na primer v pripeti pdf datoteki). V (pre)mnogih primerih uporabnika zavede vtis ali nepoznavanje, da so določeni programi ali podatki zanj koristni. Primer takega mamljivega programa so programi za prikaz videa. Drugi način širjenja »zlonamernežev« je uporabnikom skrit. Zgodi se recimo ob obisku zlonamerne spletne strani, ki za prenos in izvajanje zlonamernih programov izkoristi ranljivosti spletnega brskalnika. Zlonamerni programi se lahko širijo s pomočjo vseh internetnih protokolov, na primer protokola P2P ali protokola za takojšnje sporočanje. Spomnimo se še, da se zlonamerni programi lahko širijo tudi preko fizično zamenljivih pomnilniških naprav, najpogosteje preko USB ključev.

2.2 Protivirusno programje

POVZETEK

Protivirusno oziroma antivirusno programje uporabljamo pri preprečevanju, odkrivanju in odstranjevanju zlonamernih programov. Mednje spadajo računalniški virusi, računalniški črvi, trojanski konji, vohunsko programje in programi za sprejem reklamnih sporočil. Zavedati se moramo, da so protivirusni programi lahko učinkoviti le, če se redno posodabljajo. V nasprotnem primeru so za zaščito proti novim virusom neuporabni, saj teh ne prepoznajo.

Pojem izkoreninjenje virusov opisuje odstranjevanje virusov iz računalnikov. Viruse lahko izkoreninimo na več načinov:

z odstranjevanjem virusovega koda v okuženih datotekah,

z odstranjevanjem okuženih datotek,

s karanteno. Okužene datoteke damo v »karanteno«, to je, premaknemo jih tja, kjer se ne morejo zagnati in izvajati.

Protivirusni programi uporabljajo različne strategije.

Odkrivanje s pomočjo virusnih podpisov je strategija, v kateri protivirusni program išče »virusne podpise« v izvršljivih datotekah. Virusi »gostiteljske aplikacije« okužijo le enkrat. Da jih ne okužijo večkrat, le-te označijo – podpišejo – z bitnim vzorcem, po katerem jih prepoznajo. Vsak tak podpis je za vsak virus unikaten. Protivirusni programi, ki temeljijo na odkrivanju virusnih podpisov, se zanašajo prav na to označevanje okuženih programov oziroma datotek.

To je najstarejša metoda odkrivanja virusov. Z njo ne moremo odkriti virusov, katerih podpisov ne poznamo oziroma (še) niso vpisani v bazo virusnih podpisov. Žal obstajajo tudi prikriti virusi. Njihove podpise je zelo težko, če ne celo nemogoče, odkriti. Pred njihovimi grožnjami napadi se lahko varujemo s hevrističnimi metodami.

Hevristično odkrivanje generični podpisov je ena izmed vrst hevrističnih načinov odkrivanja virusov. S to metodo lahko v datotekah odkrivamo nove viruse z iskanjem znanih zlonamernih kod ali njihovih manjših variacij. Hevristična metoda tudi analizira obnašanje aplikacij, da bi v njih odkrila podobnosti z obnašanjem pri znanih virusih.

Prednost teh protivirusnih programov je sposobnost odkrivanja virusov tudi, ko baze virusnih podpisov niso posodobljene. Njihova slabost pa je nagnjenost k sprožitvi lažnih alarmov.

ZANIMIVO

Ne glede na to, kako uporabni so protivirusni programi, imajo tudi slabosti. Na primer, vplivajo lahko na učinkovitost računalnika. Neizkušeni uporabniki lahko imajo težave z razumevanjem pozivov in odločitev, ki jih generirajo protivirusni programi. Nepravilni odziv uporabnika na njih pa lahko povzroči razpoko v varnosti.

2.3 Vrste zlonamernega programja

Zlonamerno programje lahko razdelimo na različne načine, odvisno od izbranih kriterijev, na primer glede na načine širjenja, metode instalacije v sistem, načina daljinskega upravljanja itd. Ker ima zlonamerno programje danes več lastnosti, jih razvrščamo po njihovih glavnih značilnostih. Na primer, obstajajo trojanski konji s sposobnostjo prikritega dostopa do skrbniških pravic in skrivanja pred izkušenimi uporabniki in varnostnimi rešitvami. Pri tem je program mogoče daljinsko upravljati, sočasno pa je lahko del reklamnih programov in zmore slediti tipkanju uporabnika. Torej je, povedano v žargonu »horse-rootkit-bot-adware-keylogger«, vse v enem! V resnici so takšni zlonamerni programi vse pogostejši.

ZAPISEK

Pri prvi razvrstitvi zlonamernega programja upoštevamo, katere gostiteljske datoteke uporabljajo za svoje razširjanje. Med temi programi so:

slepa vrata,

logična vrata,

trojanski konji,

virusi.

Slepa vrata so nedokumentiran, skrivni vhod v program, ki osebi, ki ga pozna, dovoli dostop mimo običajnih kontrol dostopa. Slepa vrata običajno izdelajo za potrebe vzdrževalcev programov, na primer za razhroščevanje programov. Torej je to v osnovi dobronamerni vhod.

Zaradi svojih lastnosti so slepa vrata zelo izpostavljena zlonamernim programom. Če jih ti odkrijejo, imajo dostop do računalnika mimo varnostnih mehanizmov. Zato so slepa vrata zelo resna varnostna grožnja programski opremi računalniškega sistema.

Logične bombe so najstarejša vrsta zlonamernega programja. To je programje, ki je sestavni del legitimnega programa, ki se aktivira po izpolnitvi določenih pogojev. Primer teh pogojev je lahko prisotnost ali odsotnost določene datoteke na določen dan, teden ali datum. Logične bombe lahko povzročijo veliko škodo v informacijskem sistemu. Na primer, izbrišejo nekaj datotek, ustavijo izvajanje aplikacij itd.

Trojan horses Trojanski konji so programi ali ukazi, ki sicer vršijo uporabne procedure ali procese, vendar sočasno v ozadju izvajajo zlonamerne aktivnosti, kot je na primer brisanje podatkov. Posebni primer trojanskega konja je vohunska programska oprema, ki zbira gesla, ko jih tipkamo na tipkovnici, informacije o obiskovanih spletnih straneh, kateri programi se nahajajo na računalniku in katere informacije pošilja uporabnik po Internetu.

Virusi so programska koda, ki se je sposobna razmnoževati širiti in prenašati v računalniku brez vednosti in volje uporabnika. Ko se razmnoži razširi, lahko prične s škodljivim vedenjem (na primer brisanjem podatkov na trdem disku). Ime virus je dobila, ker je njeno vedenje zelo podobno biološkemu virusu. Gostitelj virusa je računalniški program oziroma izvršna datoteka. Med razmnoževanjem širjenjem in prenašanjem se začasno naseli tudi v ostale dele pomnilnika, kot so slikovne datoteke, sistemski del trdega diska itd.

Obstaja tudi zlonamerno programje, ki za širjenje ne potrebuje gostiteljske datoteke:

črvi,

zombiji.

Črvi Črv se od virusa razlikuje v tem, da se zmore razmnoževati sam, brez prenašanja delov gostitelja. Črvi za širjenje večinoma uporabljajo odjemalce elektronske pošte oziroma storitve, ki jih ti ponujajo. Naloga črva je predvsem ta, da se razmnoži razširi na čimveč računalnikov preko omrežja.

Zombiji so zlonamerno programje, ki se širi po omrežju. Ko okužijo računalnik, je tega mogoče daljinsko upravljati brez vedenja njegovega skrbnika. Ko je več računalnikov okuženih z istim zlonamernim programjem, nastane botnet, to je omrežje robotskih računalnikov, nad katerim napadalec, brez vedenja skrbnikov, pridobi nadzor z namenom izvajanja zlonamernih dejanj. Botnet je osnova napadov DDoS.

2.4 Življenjska doba virusov

ZAPISEK

Življenje virusov sestavljajo štiri obdobja:

faza mirovanja,

faza razširjanja,

faza aktiviranja,

faza izvajanja.

V fazi mirovanja virus ne izvaja nobene aktivnosti. Poudarimo, da nimajo vsi virusi te faze svojega obstoja.

V fazi širjenja se virus razmnožuje in tako širi po računalniku. Ves Vsak okužen program dobi klon virusa, ki se je sposoben sam širiti dalje.

V fazi aktiviranja virus začenja s svojim zlonamernim delovanjem. To fazo lahko povzročijo različni pogoji ali stanja okuženega programa.

V fazi izvajanja virus izvaja aktivnosti, za katere je programiran. Ponavadi so te aktivnosti destruktivne. V okuženem računalniku lahko povzročijo izgubo ali poškodovanje podatkov.

3
Varnostne storitve in mehanizmi

3.1 Varnostne storitve

DEFINICIJA

Varnostne storitve zagotavljajo določen nivo varnosti sistema ali prenosa podatkov. Varnostne storitve vršijo varnostni mehanizmi skladno z varnostnimi predpisi.

Več kot dvajset let je za informacijsko varnost zadolžena organizacija, znana kot triada CIA (confidentiality, integrity and availability), ki skrbi za zaupnost, celovitost in razpoložljivost informacij in je jedro informacijske varnosti.

Kasneje so bili informacijski varnosti, na osnovi atributov triade CIA, dodani še drugi varnostni elementi. To so nadzor dostopa, nezanikanje, razpoložljivost in zasebnost. Omenimo tudi, da je med varnostnimi strokovnjaki še vedno živa razprava o varnostnih elementih.

3.2 Zaupnost

DEFINICIJA

Zaupnost v smislu naše teme pomeni zaščito informacij pred razkritjem neavtoriziranim entitetam (organizacijam, ljudem, strojem in procesom). Zaupne informacije ne sme poznati nihče, razen za to pooblaščene entitete. Informacije vsebujejo podatke, velikost, obstoje, komunikacijske značilnosti itd.

Zaupnost zahtevamo:

Ko so podatki shranjeni na medij (kot je trdi disk v računalniku), ki ga lahko bere nepooblaščen posameznik.

Ko so podatki posneti (kot varnostna kopija) na posebno napravo (kot je magnetni trak) in lahko ta pride v roke nepooblaščenim posameznikom.

Ko se podatki prenašajo preko nezaščitenega omrežja.

Poleg zgornjih zahtev danes (ko so na razpolago sofisticirane tehnike kriptografije) zaupnost zagotavljamo predvsem z raznimi tehnikami šifriranja. Te zahtevajo, da si avtorizirane entitete delijo skupno skrivnost – šifrirne ključe. Obe strani morata biti zato sposobni izvajati ustrezne algoritme šifriranja in dešifriranja.

3.3 Preverjanje istovetnosti

DEFINICIJA

Storitve avtentikacije oziroma preverjanja istovetnosti preverjajo, ali so komunikacijske entitete (ljudje, stroji, procesi) res to, za kar se predstavljajo. Na primer, pri enem (samem) sporočilu, kot je opozorilo o kakšnem dogodku ali alarmnem signalu, storitev avtentikacije zagotovi prejemniku, da je sporočilo avtentično, torej da res prihaja od pošiljatelja kot trdi (recimo z naslovom pošiljatelja).

V primerih, ko so entitete v stalni interakciji (kot sta terminal in gostitelj), sta pri avtentikaciji vpletena dva vidika. Prvi je vzpostavitev povezave med entitetama. Pri njej avtentikacija zagotovi, da se povezava vzpostavi med entitetami, ki so res to, kar trdijo, da so. Drugi vidik je zagotavljanje, da se v prenos (zaupnih) informacij ne vmešava tretja entiteta, ki se maskira v eno od legitimnih komunikacijskih partnerjev s ciljem, da nepooblaščeno pridobiva informacije.

3.4 Neokrnjenost podatkov

DEFINICIJA

Neokrnjenost ali integriteto podatkov zagotovijo storitve, ki podatke varujejo pred nepooblaščenim ustvarjanjem, spreminjanjem, brisanjem, podvajanjem ali spreminjanjem njihove zaporednosti s strani raznih organizacij, oseb, strojev ali procesov. Poseg v neokrnjenost podatkov je vedno posledica aktivnega napada.

Integriteta oziroma neokrnjenost informacij ali podatkov se vedno nanaša na zanesljivost informacijskih virov. Njihova zanesljivost je jamstvo, da se podatki (shranjeni ali v prenosu) niso spremenili - ne nenamenoma kot tudi ne namenoma z nelegalno aktivnostjo, ne da bi to odkrili. Tako zagotovilo je danes temelj kakršnegakoli poslovanja in elektronske prodaje. Zaželeno je tudi v številnih drugih okoljih.

Informacijski sistem je neokrnjen, če nudi samo zaščito, brez okvare vnesenih ali poslanih podatkov, ne glede na to, ali so ti pravilni ali napačni. Nasprotniku, ki si skuša z raznimi preudarnimi poskusi spreminjanja podatkov priboriti vstop v informacijski sistem, lahko vstop preprečimo le z uporabo raznih kriptografskih tehnik. Za njihovo uporabo, kot smo zapisali pri zaupnosti, si morajo pooblaščene entitete deliti skupno skrivnost – ključ(e) šifriranja.

3.5 Nadzor dostopa

Nadzor dostopa je zaščita informacijskih virov in storitev pred nepooblaščenim dostopom ali uporabo. Z njim preprečimo nedovoljeno uporabo virov oziroma z njim določimo, kdo in kdaj ima dostop do virov in od kod lahko dostopa do njih. Zato mora lastnik informacijskega vira najprej določiti, kdo in pod kašnimi pogoji lahko pridobi te pravice. Te so prilagojene vsakemu posamezniku in jih določajo naslednji atributi:

Privilegiji – pravica dostopa ali uporabe virov ali storitev.

Predstojnik ali pincipal– entiteta z nadzornimi privilegiji.

Subjekti – entitete izvajajo privilegij nadzora dostopa.

Objekti/Tarče – viri ali storitve, do katerih subjekt dostopa ali jih uporablja.

Delegiranje – prenos privilegija nadzora dostopa med predstojniki principali.

Avtorizacija – prenos privilegija nadzora dostopa predstojnik dodeli subjektom

Pri ponujanju zaščitnih mehanizmov se najpogosteje uporablja seznam nadzora dostopa. ACLs (Access control lists)

Nezanikanje ali preprečevanje zanikanja je zaščita pred naknadnim zanikanjem oddaje ali prejema elektronskega sporočila. Tipični mehanizmi te zaščite so: overitev, časovni žig in digitalni podpis.

3.6 Razpoložljivost

Razpoložljivost informacij pomeni, da je mogoč pravočasen dostop do njih. Na primer, pri poškodbi diska ali pri napadih DoS ali DDoS, shranjeni podatki – dokler ne odpravimo težav – niso dostopni. Zakasnitev v dostopu do vira, ki je daljša od pričakovane storitve, je nastala zaradi nerazpoložljivosti. Nedostop do informacijskega sistema nas ogroža vsaj toliko kot njegov neobstoj (ker računamo nanj, pa ga ne moremo doseči). Problematičnost take situacije temelji na tem, kako močno je določena organizacija odvisna od delovanja računalniške in komunikacijske infrastrukture.

Nerazpoložljivost lahko povzročijo, podobno kot pri ostalih vidikih varnostni, zgolj tehnične težave, kot so motnje v delovanju računalnika ali komunikacijskih naprav, ali naravni pojavi kot so viharji, poplave itd., ali človeški vzroki (nenamerni ali namerni).

Relativno tveganje, ki je povezano z naštetimi vzroki, je odvisno od situacije. V splošnem velja, da je med naštetimi vzroki človek najšibkejši člen v zagotavljanju varnosti. Zato je kritičen vsak uporabnik, ki želi varno uporabljati informacijski podatkovni sistem.

3.7 Zasebnost podatkov

Prednost odprtih omrežij, kot je Internet, je poenostavljeno izmenjavanje informacij med uporabniki; slabost teh omrežij pa so razpoke v varnosti. Z novimi tehnologijami nastajajo tudi nove možnosti za zbiranje informacij, ki lahko imajo negativne implikacije na ohranjanje zasebnosti. Z rudarjenjem v podatkih in z raznimi novimi iskalnimi stroji je nastala možnost, da se za izbranega posameznika zlahka zberejo in kombinirajo podatki iz široke množice virov.

ZANIMIVO

V podatkovnih bazah po vsem svetu je o vsakem človeku shranjenih toliko informacij, da jih praktično nihče od nas več ne more nadzirati. Te informacije se danes lahko prodajajo nekomu, ki iz njih zna izvleči korist, lahko se tudi uporabljajo v namene, ki jih prizadeti posameznik ne pozna ali jih ne odobrava. Zato informacijska zasebnost postaja vse pomembnejša - posebej, ker nastaja vedno več novih informacijskih sistemov.

Glavna skrb uporabnikov interneta je njihova zasebnost. Skrb za ohranjanje zasebnosti razdelimo glede na to:

katere osebne podatke lahko s kom delimo,

ali lahko izmenjujemo sporočila tako, da jih nihče drug ne bo videl,

ali in kako je mogoče poslati anonimno sporočilo.

Pri mobilnih omrežjih lokacija in preference priljubljene izbire uporabnika dajejo dodatne informacije o uporabniku. Zato njuno poznavanje in sledenje uporabniku (oboje z razvojem mobilnih omrežij in njihovih storitev narašča) predstavlja vdor v njegovo zasebnost.

Obstaja več načinov varovanja zasebnosti na Internetu. Na primer, z uporabo anonimnega namestniškega strežnika pri brskanju po Internetu ali drugih aktivnostih, lahko zakrijemo svojo identiteto, katere spletne strani smo obiskali, uporabo kreditne kartice, vsebino izmenjave itd. S tem se lahko varujemo pred vsiljevanjem neželenih storitev Internetnih ponudnikov.

3.8 Varnostni mehanizmi

DEFINICIJA

Varnostni mehanizmi so procesi, ki izvajajo varnostne storitve. Te uporabljajo strojno in programsko opremo (tehnično in logično varovanje), fizično varovanje ali upravne ukrepe. Z njimi se varujemo pred napadi in pred posledicami napadov.

Delimo jih v dve družini: v mehanizme, ki so izvedeni v posebni podplasti protokolarne arhitekture in na mehanizme, ki niso specifični za noben protokol, plast protokolarnega sklada ali varnostno storitev.

Med osnovne mehanizme šifriranja spadajo:

šifriranje,

digitalni podpis,

nadzor dostopa,

neokrnjenost podatkov,

izmenjavna avtentikacija,

prometno zapolnjevanje,

nadzor usmerjanja,

overjanje.

Šifriranje je preslikava vsebine sporočil s pomočjo matematičnih algoritmov v obliko, ki je za nepooblaščene ljudi nečitljiva.

Digitalni podpis je mehanizem za ugotavljanje verodostojnosti sporočila in hkrati tudi istovetnosti njegovega avtorja. Z njim varujemo neokrnjenost podatkov in podatke zavarujemo pred ponarejanjem. Digitalni podpis se sporočilu lahko le doda ali pa se vgradi v samo sporočilo.

Nadzor dostopa je skupek raznolikih mehanizmov, ki uveljavljajo pravice dostopa do informacij. Mehanizem vključuje tudi avtorizacijo za dostop do nekaterih virov.

Neokrnjenost podatkov zagotavlja skupek mehanizmov, ki preprečijo, da bi bili podatki ustvarjeni, spremenjeni ali uničeni brez pooblastila.

Izmenjavna avtentikacija je mehanizem, ki ugotavlja pristnost entiteti z izmenjavo informacij.

Prometno zapolnjevanje je mehanizem, ki vstavlja bite v reže med podatkovnim tokom. S tem poskuša onemogočiti analizo prometa v omrežju.

Nadzor usmerjanja omogoča pri določenih podatkih izbiro posebnih fizično varnih usmerjevalnikov. Dovoljuje tudi spremembe usmerjanja, posebej, ko domnevajo, da gre za kršitev varnosti.

Overjanje je mehanizem, ki pri zagotavljanju določene lastnosti izmenjave podatkov uporablja verodostojno tretjo stran.

Perimetrična varnost je mehanizem, ki omogoča dovoljenje ali zavrnitev podatkov iz določenega naslova ali na določen naslov. Omogoča tudi uporabo ali zavračanje storitev, ki se nahajajo izven lokalnega omrežja.

3.9 Varnostne storitve – mehanizmi preslikav

Varnostne storitve lahko zahtevajo izvajanje več in različnih varnostnih mehanizmov. Naslednja slika prikazuje povezavo med varnostnimi storitvami in varnostnimi mehanizmi.

Povečava

Varnostne storitve in mehanizmi.

4
Osnove kriptografije

4.1 Uvod

DEFINICIJA

Kriptografija je močno matematično orodje za boj proti mnogim varnostnim grožnjam. Številne varnostne aplikacije temeljijo prav na uporabi kriptografije pri šifriranju in dešifriranju podatkov. Šifriranje je znanost o spreminjanju podatkov tako, da so ti nepooblaščeni osebi neprepoznavni in zato zanjo neuporabni. Dešifriranje pretvori šifrirane podatke nazaj v prvotno obliko.

Kriptografija se pogosto uporablja v vsakdanjem življenju, na primer pri odhodnih ali dohodnih klicih iz mobilnega telefona, pri plačevanju s kreditno ali debetno kartico, pri dvigu denarja na bankomatu ali pri prijavi v računalnik z geslom.

Kriptografijo uporabljamo tudi pri shranjevanju občutljivih podatkov ali pri njihovem pošiljanju preko nezavarovanih omrežij (kot je internet). S tem dosežemo, da so podatki čitljivi samo uporabniku, kateremu so namenjeni. Danes je kriptografija industrijski standard za zagotavljanje informacijske varnosti, zaupanja, nadzora dostopa do virov ter elektronskih transakcij.

Kriptografski algoritem, ali šifra, je matematična funkcija, ki jo uporabljamo pri šifriranju in dešifriranju. Z njim preslikamo čistopis v tajnopis. Rezultat šifriranja je odvisen od šifrirnega ključa. Pri različnih šifrirnih ključih se isti čistopis preslika v različne tajnopise.

Varnost šifriranih podatkov je povsem odvisna od (i) moči kriptografskega algoritma in (ii) tajnosti ključa. Močni kriptografski algoritem mora izpolnjevati spodaj opisane pogoje.

Če ne poznamo šifrirnega ključa, ne sme obstajati način (razen grobe sile, kjer preizkusimo vse možne kombinacije), da iz tajnopisa povrnemo čistopis. Pod nobenim pogojem ne sme nikomur uspeti, da bi (razen z grobo silo, ko preizkusi vse možne kombinacije) iz tajnopisa povrnil čistopis, če ne pozna šifrirnega ključa.

Število možnih šifrirnih ključev mora biti tako veliko, da računsko ni sprejemljivo izvesti zadostnega števila napadov z grobo silo v razumnem času.

Šifrirni ključ, s katerim kriptografski algoritem preslika čistopis v tajnopis, mora preslikati tudi tajnopis nazaj v čistopis. V nadaljevanju bomo pregledali šifriranje. Predstavili bomo osnovne koncepte in proučili šifrirne modele. Ne bomo pa se ukvarjali z naslednjim:

kako deluje šifriranje; opisujemo le načela snovanja šifrirnih algoritmov.

kako lahko zlomimo šifriranje; opisujemo le osnove kriptoanalize, ki se uporablja pri lomljenju šifer.

4.2 Vrste šifrirnih algoritmov

Šifrirne algoritme lahko razdelimo na dve spodaj opisani možnosti.

Simetrični algoritmi ali algoritmi s tajnimi ključi. Ti algoritmi uporabljajo isti šifrirni ključ pri šifriranju in dešifriranju. Varnost zagotavlja tajnost šifrirnega ključa. Zato ga imenujemo tudi zasebni ključ. Primer takega algoritma je AES (Advanced Encryption Standard), ki ga pogosto uporabljajo v klasični kriptografiji.

Asimetrično šifriranje ali algoritem z javnim ključem. Za ta algoritem se uporablja par ključev: javni ključ, s katerim šifriramo podatke in pripadajoči zasebni ključ, s katerim jih dešifriramo. Čeprav sta šifrirna ključa iz istega para matematično povezana, je to povezavo računsko izredno težko odkriti.

Pri uporabi tega šifriranja uporabnik javno objavi javni ključ, zasebnega pa pozna le on. Vsakdo, ki ima javni ključ, lahko šifrira čistopis. Brez zasebnega ključa pa tajnopisa ne more dešifrirati. Informacijo lahko dešifrira le tisti, ki pozna odgovarjajoči zasebni ključ.

ZANIMIVO

Glavna prednost asimetričnega šifriranja je, da omogoča varno izmenjavo sporočil za vse, ki nimajo predhodnega dogovora o simetričnem šifriranju. Pri asimetričnem šifriranju si pošiljatelji in prejemniki ne delijo (preko varnih kanalov) zasebnih ključev. Pri komunikaciji uporabljajo le javne ključe.

4.3 Izrazoslovje

Čistopis (plaintext) je sporočilo, ki ga želimo poslati prejemniku. Imenujemo ga tudi originalni tekst.

Tajnopis (chiphertext) je šifrirani čistopis.

Šifriranje (encryption) je proces spreminjanja vsebine čistopisa tako, da dobljeni tajnopis skrije vsebino čistopisa.

Dešifriranje (decryption) je obratni proces šifriranja. Z njim iz tajnopisa dobimo nazaj čistopis.

Ključ (šifrirni ključ) (key) je beseda, število ali niz, ki ga uporabljamo pri šifriranju čistopisa ali dešifriranju tajnopisa.

Kriptoanaliza (cryptoanalysis) je veda o tem, kako zlomiti kode in šifre.

Zgoščevalni algoritem (hash algorithm) je algoritem, ki pretvori tekst poljubne dolžine v niz s fiksno dolžino.

Šifra (cipher) je kriptografska matematična funkcija, ki jo uporabljamo pri šifriranju ali dešifriranju.

Dešifrirnik (decipher) je šifrirni sistem, ki pretvori tajnopis v čistopis.

Upravljanje ključev (key management) je postopek, s katerim določimo, kako se generira, shrani, zaščiti, prenaša, nalaga, uporablja ali uniči šifrirni ključ.

4.4 Simetrično šifriranje

Šifriranje in dešifriranje podatkov z enim samim ključem (ki ga imenujemo tajni, skriti ali zasebni šifrirni ključ) imenujemo simetrično šifriranje oziroma simetrična kriptografija. Šifrirni ključ pri simetrični kriptografiji je običajno samo eden. Lahko pa pri tej kriptografiji uporabljamo tudi ločena šifrirna ključa - enega za šifriranje, drugega za dešifriranje. Oba ključa morata biti med seboj enostavno povezana in seveda tajna.

Glavni problem simetričnih algoritmov je varni dogovor med komunicirajočima partnerjema o skupnem šifrirnem ključu. Za izmenjavo tajnega ključa moramo morata prav tako zagotoviti varen prenosni kanal. Za izmenjavo tajnega ključa pa mora obstajati (biti zagotovljen) varen prenosni kanal.

Simetrično kriptografijo uporabljamo na naslednji način: uporabnik A želi poslati sporočilo uporabniku B tako, da ga je sposoben prebrati le on. Da A zagotovi varni prenos do B, ustvari šifrirni ključ, z njim šifrira svoj čistopis in ga kot tajnopis pošlje uporabniku B. Da B lahko prebere tajnopis, potrebuje šifrirni ključ. Tega mu lahko A dostavi na katerikoli varen način, ki mu je na voljo (recimo s kurirjem). Ko uporabnik B prejme šifrirni ključ, lahko dešifrira sprejete tajnopise oziroma pošlje uporabniku A tajnopis svojih čistopisov.

Model simetričnega šifriranja.

Od dobrega simetričnega šifriranja pričakujemo naslednje lastnosti:

Difuzija: vsak bit čistopisa mora vplivati na velikost bitov tajnopisa in obratno.

Zmešnjava: pri šifriranju se moramo izogibati strukturalnim odnosom, posebej linearnosti.

Tajnopis mora izgledati kot slučajni tekst in imeti mora dobre statistične lastnosti.

Enostavnost.

Učinkovitost: od algoritma pričakujemo, da je zelo hiter na različni strojni in programski opremi.

Najpogosteje se uporabljata naslednja simetrična šifrirna algoritma:

Data Encryption Standard (DES),

Advanced Encryption Standard (AES).

ZANIMIVO

Največje tveganje pri simetrični kriptografiji je varnost šifrirnih ključev. Prenos šifrirnega ključa z elektronsko pošto ni varen. Prav tako – zaradi možnega prisluškovanja – ni varen pogovor po telefonu. Podobno varnostno tveganje –zaradi možnega prestrezanja – imamo pri klasični pošti.

ZAPISEK

Naštete varnostne težave pri izmenjavi ključev v veliki meri odpravlja asimetrično šifriranje. Je pa simetrično šifriranje zelo uporabno tudi pri šifriranju vsebine trdih diskov v računalniku. V tem primeru pozna šifrirni ključ le uporabnik in zato zanj ne more izvedeti nihče drug.

4.5 Asimetrično šifriranje

Asimetrično šifriranje oziroma kriptografija z javnim ključem v veliki meri odpravlja težave simetričnega šifriranja. Problem tajnega šifrirnega ključa rešuje z uporabo dveh ključev, saj sta oba potrebna za uspešno izveden postopek. Javnega uporabljamo pri šifriranju, zasebnega pa pri dešifriranju. Od tod tudi izhaja ime kriptografija z javnim ključem.

Skupno ime za javni in zasebni ključ je par ključev ali tudi par asimetričnih ključev. Pri asimetrični kriptografiji je javni ključ – kot pove ime – javno dostopen, zasebni ključ pa je – pričakovano - namenjen zasebni rabi. Od njegove tajnosti je odvisna varnost tajnopisa.

Najbolj znani algoritem asimetričnega šifriranja je algoritem RSA. Ime določa kratica, ki izhaja iz prvih črk priimkov avtorjev tega algoritma (Ron Rivest, Adi Shamir in Leonard Adelman).

4.6 Kako deluje asimetrično šifriranje?

Zagotavljanje zaupnosti z asimetričnim šifriranjem

Zamislimo si primer, ko uporabnik B želi poslati sporočilo uporabniku A. Uporabnik B sporočilo šifrira z javnim ključem uporabnika A. Ker sta javni in zasebni šifrirni ključ par, ki se medsebojno dopolnjuje, lahko uporabnik A s svojim zasebnim, tajnim šifrirnim ključem, dešifrira sprejeto sporočilo. Če tajnopis prestreže nekdo drug, ga ne more dešifrirati, ker ne pozna zasebnega ključa uporabnika A.

Asimetrično šifriranje ne zagotavlja pristnosti pošiljatelja, saj je ključ za šifriranje javni in ga lahko uporablja vsak. Zagotavlja pa zaupnost sporočila, saj sporočilo lahko dešifrira le uporabnik A, oziroma v splošnem: dešifrira ga lahko le tisti uporabnik, katerega javni ključ je bil uporabljen pri šifriranju.

Model asimetričnega šifriranja (za zagotovitev zaupnosti).

Avtentikacija z asimetričnim šifriranjem

Z asimetričnim šifriranjem lahko preverimo tudi istovetnost pošiljanja. Istovetnost uporabnika A lahko uporabnik B preveri tako, da mu A pošlje sporočilo, ki ga šifrira z javnim ključem uporabnika A. Tako ugotovi, da je bilo sporočilo šifrirano z zasebnim ključem uporabnika A, s katerim pa razpolaga samo on, torej uporabnik A.

Ta postopek preveri samo istovetnost uporabnika A, ne zaščiti pa vsebine sporočila, saj ga lahko prebere vsakdo, ki pozna javni ključ uporabnika A. Ta je namreč javen in zato tudi vsem dostopen.

Model asimetričnega šifriranja (za preverjanje istovetnosti).

Avtentikacija in zagotavljanje zaupnosti z asimetričnim šifriranjem

Avtentičnost pošiljatelja in zaupnost sporočila, ki ga ta pošlje, lahko zagotovimo z uporabo obeh prej opisanih možnosti asimetričnega šifriranja. Torej, uporabnik B mora sporočilo najprej šifrirati s svojim zasebnim ključem, s katerim zagotovi svojo avtentičnost, nakar sporočilo šifrira še z javnim ključem uporabnika A in tako zagotovi še zaupnost poslanega sporočila.

Slabost tega postopka je, da za šifriranje in dešifriranje porabimo precej časa, saj sta pri pošiljanju sporočila potrebni dve šifriranji in dve dešifriranji. Javni ključi pa so zelo dolgi (med 1024 biti in 4096 biti).

4.7 Hibridni sistem: kombinacija simetričnega in asimetričnega šifriranja

Kot smo že omenili, je slabost asimetričnega šifriranja počasnost procesa, zaradi dolžine ključev (1024 bitov do 4096 bitov). Pri simetričnem šifriranju imamo opravka z mnogo krajšimi ključi (40 bitov do 256 bitov), zato je ta proces hitrejši. Po drugi stani pa imamo pri njem težave z dostavo s prenosom tajnih ključev, ki jih rabimo pri simetričnem šifriranju. Če obe metodi uporabljamo skupaj, lahko dobimo boljšo metodo šifriranja. Skupna uporaba obeh šifriranj lahko izkoristi prednosti ene in odstrani slabosti druge metode.

Kombinacijo obeh sistemov šifriranja imenujemo hibridni sistem. V njem uporabimo asimetrično šifriranje pri skupni rabi tajnih ključev za simetrično šifriranje, prava sporočila pa si potem komunicirajoči uporabniki varno izmenjujejo z uporabo simetričnega šifriranja. To izmenjavo sporočila imenujemo tudi seja, šifrirne ključe, ki se v njej uporabljajo, pa imenujemo ključi seje. Ker je metoda delitve šifrirnih ključev varna, lahko ključe izmenjamo pred vsakim pošiljanjem sporočila. To pomeni, da tudi v primeru, ko napadalec uspe pridobiti tajne ključe ene seje, mu ti ne koristijo pri naslednji seji. tajni ključ ene seje, mu ta ne bo koristil pri naslednji seji.

Izmenjava ključa seje, ki ga zaščitimo z asimetričnim šifriranjem in pošiljanje sporočila, ki ga zaščitimo s simetričnim šifriranjem, sta integrirana v enem paketu. Prejemnik uporablja svoj zasebni ključ za dešifriranje ključa seje in potem uporabi ključ seje za dešifriranje sporočila. Veliko aplikacij uporablja ta, hibridni, sistem zaščite.

Koraki v varni izmenjavi podatkov s hibridno metodo šifriranja so naslednji:

S simetričnim šifriranjem čistopis preslikaj v tajnopis. Pri šifriranju uporabi naključno izbran ključ seje.

Z asimetričnim šifriranjem z javnim ključem prejemnika tajnopisa zaščiti ključ seje in ga pošlji prejemniku. Prejemnik sedaj s svojim zasebnim ključem pri asimetričnem šifriranju dešifrira naključno izbrani ključ seje.

Pošlji tajnopis (šifriran v prvem koraku). Prejemnik lahko sprejeti tajnopis dešifrira s ključem seje, ki ga je prej dešifriral v drugem koraku postopka.

Opisani postopek hibridnega šifriranja prikazuje naslednja slika.

Model hibridnega šifriranja (za zagotovitev zaupnosti).

ZANIMIVO

Opisana tehnika hibridnega šifriranje se zelo veliko uporablja. Na primer, hibridno šifrirno tehniko se uporablja v varnostnem ogrodju SSH (Security Shell) za varovanje komunikacije med odjemalcem in strežnikom in pri protokolu precejšnje zasebnosti PGP (Pretty Good Privacy) pri pošiljanju sporočil. Predvsem pa je osnova varnosti transportne plasti TLS (Transport Layer Security), ki jo pogosto uporabljajo spletni brskalniki in strežniki pri vzdrževanju varnega komunikacijskega kanala, ki ju povezuje.

4.8 Zgoščevalne funkcije

Zgoščevalna funkcija je preslikava, ki preslika vhodne podatke m poljubne dolžine (ki se spreminja od enega do drugega sporočila) v niz h = H(m) s fiksno dolžino, ki ga imenujemo digitalni prstni odtis ali tudi povzetek. (Glede na postopek določanja povzetka, bi lahko povzetek imenovali haše, funkcijo pa haše funkcija, saj je njen postopek analogen kuhanju hašeja: sporočilo razseka na »sekljance« in jih »kuha«, dokler se ne zgostijo v »povzetek«.)

Za zgoščevalno funkcijo je značilno, da vsaka sprememba v vhodnih podatkih spremeni (z visoko verjetnostjo) tudi povzetek. Zaradi te lastnosti imajo zgoščevalne funkcije raznoliko splošno računalniško uporabo; pri njihovi uporabi v kriptografiji pa ponavadi izbiramo take zgoščevalne funkcije, ki imajo še dodatne lastnosti.

Osnovne zahteve za kriptografske zgoščevalne funkcije so navedene spodaj.

Izhodni podatki so lahko poljubno dolgi.

Izhod – povzetek – ima fiksno dolžino.

Enostavno računanje povzetka pri katerikoli dolžini sporočila.

Zgoščevalne funkcije so enosmerne, to pomeni, da iz povzetka sporočila ne moremo ugotoviti vsebine sporočila.

Sporočila ne moremo spremeniti, ne da bi se pri tem spremenil povzetek.

So brez kolizij, to pomeni, da je računsko neizvedljivo najti dve različni sporočili, na primer (x, y), ki bi imeli isti povzet: H(x) = H(y)

Povzetek kratko in jedrnato »povzame« daljše sporočilo ali dokument, za katerega se računa. Na povzetek sporočila lahko gledamo kot na digitalni prstni odtis večjega dokumenta.

ZANIMIVO

Kriptografsko zgoščevalno funkcijo uporabljamo predvsem pri digitalnih podpisih. Povzetek lahko tudi javno objavimo, ne da bi s tem ogrozili zaupnost vsebine dokumenta.

Zgoščevalna funkcija.

4.9 Digitalni podpis Digital signature

DEFINICIJA

Digitalni podpis je nadomestek lastnoročnega podpisa pri elektronski izmenjavi in digitalnem hranjenju dokumentov. Razvili so ga iz rezultatov razvoja kriptografije z javnim ključem. Ima niz varnostnih lastnosti, ki jih drugače ni mogoče izvesti. Z digitalnimi podpisi predvsem preverjamo istovetnost pošiljatelja sporočila in istovetnost podpisnika dokumenta. Z njimi lahko ugotavljamo tudi neokrnjenost dokumenta.

Digitalne podpise lahko enostavno prenašamo. Ker je odvisen od vsebine dokumenta, ga je skoraj nemogoče posnemati. Zato si s prestreženim digitalnim podpisom nekega dobljenega sporočila kasneje ne moremo enostavno ponarediti identitete pošiljatelja.

Kot smo prej omenili, digitalni podpis nadomešča lastnoročni podpis v digitalnih dokumentih. Z njim želimo doseči vse lastnosti, ki se pričakujejo od lastnoročnega podpisa. Te so:

Podpis je varen – ni ga mogoče ponarediti in vsak poskus ponarejanja lahko enostavno odkrijemo.

Podpis omogoča preverjanje istovetnosti – s podpisom lahko enolično določimo lastnika podpisa.

Podpis je neprenosljiv – podpis je del dokumenta. Nepooblaščeni subjekti ga iz podpisanega dokumenta ne morejo prenesti na drugi dokument.

Podpisani dokument se ne da spreminjati – dokumenta, ko je enkrat podpisan, ne moremo več spreminjati.

Podpisa ne moremo zanikati – podpisnik ne more zatajiti svojega podpisa na podpisanem dokumentu.

V praksi nobena od naštetih lastnosti lastnoročnih podpisov ni dosledno v celoti izpolnjena; na primer, razmeroma enostavno jih je diskreditirati ali celo ponarediti. Vse te lastnosti bi naj imeli tudi digitalni podpisi.

ZANIMIVO

Vendar obstaja nekaj problemov z digitalnim podpisom. Digitalne dokumente lahko enostavno kopiramo in prilepimo (v celoti ali v delih) k drugim dokumentom, podpisani dokument lahko enostavno spreminjamo. Zato morajo digitalni podpisi izpolnjevati naslednje zahteve:

Podpis mora biti bitni vzorec, ki je odvisen od vsebine podpisanega sporočila.

Podpis mora vsebovati informacijo, ki je edinstvena za podpisnika (pošiljatelja sporočila). Le tako lahko zaščitimo podpis pred ponarejanjem in zanikanjem.

Realizacija in izvedba podpisa morata biti relativno enostavni.

Ponarejanje digitalnega podpisa mora biti računsko neizvedljivo, tako pri konstrukciji novega sporočila za obstoječi podpis ali ponarejanje podpisa za nov dokument.

Enostavno hranjenje kopije podpisa v pomnilniku.

Digitalni podpis lahko uporabljamo pri kateremkoli sporočilu, bodisi je šifrirano ali ne, tako, da se prejemnik sporočila lahko zanese na identiteto pošiljatelja in zanese se lahko, da prispeli dokument ni okrnjen.

Obstaja več načinov digitalnega podpisovanja. Med njimi je najbolj razširjen podpis, ki temelji na zgoščevalni funkciji. Pri tem podpisu uporabnik pri podpisovanju sledi naslednjim korakom:

Oceni povzetek dokumenta, ki ga podpisuje.

Povzetek, skupaj s svojim javnim ključem, šifrira s simetričnim šifrirnim algoritmom.

K dokumentu pripne digitalni podpis.

Digitalni podpis na osnovi zgoščevalne funkcije.

Prejemnik digitalno podpisanega sporočila lahko preveri istovetnost digitalnega podpisa z naslednjimi postopki:

Oceni priponko k dokumentu (brez digitalnega podpisa).

Z asimetričnim šifrirnim algoritmom dešifrira digitalni podpis in priložen javni ključ, ki se nahajata v povzetku dokumenta.

Primerja dobljeni rezultat s prejšnjima dvema korakoma.

Verifikacijski proces digitalnega podpisa na temelju povzetka dokumenta.

Če je povzetek sporočila, ki ga dobimo v dveh korakih, enak, potem prejemnik sporočila ve, da so sprejeti podatki nespremenjeni.

5
Upravljanje z digitalnimi certifikati in šifrirnimi ključi

5.1 Distribucija javnih ključev

Kriptografijo z javnim ključem najpogosteje uporabljamo pri digitalnih podpisih. S pravilno izvedbo digitalnega podpisa sporočila lahko njen prejemnik preveri, ali je sporočilo, ki ga je sprejel preko nezavarovanega prenosnega kanala, pristno in poslano iz naslova avtentičnega pošiljatelja.

V mnogih pogledih so digitalni podpisi enakovredni tradicionalnim lastnoročnim podpisom, vendar je digitalne podpise pri njihovi pravilni izvedbi mnogo težje ponarediti kot lastnoročne podpise. Pri ugotavljanju pristnosti digitalnega podpisa pa je ključno poznavanje javnega šifrirnega ključa pošiljatelja. Tega je možno dobiti le z varnim mehanizmom distribucije ključev, kar omogočajo digitalni certifikati.

5.2 Koncept digitalnega certifikata

DEFINICIJA

Digitalni certifikat je elektronski dokument, v katerem so povezani digitalni podpis, javni šifrirni ključ in identiteta lastnika. Identiteta lastnika zajema informacije o imenu osebe ali organizacije, njegov naslov itd. S pomočjo digitalnega certifikata lahko izvemo za javni ključ posameznika.

Digitalni certifikat je podatkovna struktura, v kateri je zapisan javni ključ imetnika certifikata, njegovi identifikacijski podatki, doba veljavnosti certifikata in drugi podatki, ki jih vpiše izdajatelj digitalnega certifikata. Ta struktura je podpisana z zasebnim ključem izdajatelja certifikata – zanj se običajno uporablja kratica CA (certification authority) – ki posamezniku omogoča, da z javnim ključem CA preveri avtentičnost vsebine certifikata.

Naslednja slika prikazuje strukturo digitalnega certifikata.

Struktura digitalnega certifikata.

5.3 Mehanizem preklica certifikata

Zaradi svoje pomembnosti so digitalni certifikati zelo izpostavljeni neposrednim ali posrednim napadom. Na primer, zasebni ključ lahko ukradejo ali ga lastnik izgubi, kar ogrozi tudi verodostojnost digitalnega certifikata; ali pa CA pri izdaji certifikata ne upošteva vseh varnostnih smernic. Zaradi takšnih primerov mora obstajati možnost, da v dvomu o zanesljivoti certifikata lahko le-tega prekličemo oziroma moramo vzpostaviti mehanizem, ki preverja, ali so certifikati veljavni.

V certifikatu, ki ga CA izda varni spletni strani, CA zapiše podatke, ki internetnemu brskalniku odjemalca (v tej vlogi je uporabnik, ko brska po spletnih straneh) omogočijo ugotavljanje ali so bili certifikati napačno izdani ali kompromitirani in jih je zato CA preklicala.

Za preverjanje veljavnosti certifikatov sta uporabnikom na voljo dva mehanizma:

Seznam preklicanih ceritfikatov CRL (certificate revocation list).

Pri tej metodi brskalnik sname iz spletne strani (njen URL je zapisan v certifikatu uporabnika), na kateri se nahaja seznam preklicanih certifikatov, datoteko s seznamom preklicanih certifikatov (CRL) in jo shrani v vmesni pomnilnik uporabnikovega računalnika. V CRL so zabeleženi vsi certifikati, katerih življenjska doba še ni potekla, vendar je CA preklicala njihovo veljavnost. Ker je tipična datoteka s CRL lahko velika nekaj sto kilo oktetov, se ponavadi posodablja periodično, vsakih nekaj dni (običajno vsaki drugi dan). Datoteko CRL digitalno podpiše CA ter tako omogoči, da uporabnik lahko preveri njeno istovetnost.

Protokol za sprotno preverjanje statusa certifikatov OCSP (online certificate status protocol). Ta metoda ima dve izvedbi:

OCSP, pri kateri brskalnik povpraša storitev spletne strani na stežniku ali je bil certifikat <XXXX> preklican. Odziv vsebuje status certifikata <XXXX> (preklican, veljaven, neznan) in tudi digitalni podpis (da se preprečijo nedovoljene spremembe v odzivu). Ker odziv vsebuje samo informacijo o certifikatu, po katerem odjemalec povprašuje, je precej krajši od najkrajše datoteke CRL. Če se poizvedovanje OCSP ne zaključi v manj kot 15 sekundah, poteče čas storitve.

OCSP s spenjanjem je varianta OCSP, ki omogoči varnostnemu strežniku, da kriptografsko preveri, ali ima zadnjo „vstopnico“, ki jo je podpisala CA, na primer z informacijo: "da, to je še vedno veljaven certifikat". Vstopnica ima kratko življenjsko dobo, ki jo mora strežnik OSCP podaljšati med izmenjavo protokolarnih sporočil s TLS. OSCP s spenjanjem je najhitrejša metoda za preverjanja preklica. Zagotavlja tudi največjo zasebnost. Žal te metode še ne podpirajo vsi odjemalci (trenutno OCSP s spenjanem podpirajo brskalniki IE7 in novejši, pri Mozilli pa od leta 2007 poteka projekt OpenSSL, ki bi naj dodal OCSP s spenjanjem).

Datoteka CRL vsebuje serijske številke preklicanih certifikatov z datumom in časom njihovega preklica, oznako vzroka preklica in druge podatke kot je URL, ki pove, kje se seznam nahaja. Za sezname skrbijo CA, ki so izdale certifikate, ki so vpisani v CRL. Njihovo vsebino posodablja CA periodično v intervalih, ki so krajši od 24 ur, ponavadi so dolgi eno uro, ali takoj po preklicu vsebinsko posodobi katerega od digitalnih certifikatov. Seznami CRL se ponavadi nahajajo na več strežnikih, ki so po omrežju razporejeni tako, da se maksimira dostopnost do njih.

Seveda mora nekdo (ali neka organizacija) skrbeti za CRL in za uveljavljanje smernic preklicov certifikatov. Pri preklicih nastanejo velike težave, če smo certifikat preklicali pomotoma. Za uveljavljanje delovnih smernic certifikatov je odgovoren CA, zato se pičakuje, da je zadolžen tudi za ugotavljanje, da je zahteva za preklic certifikata skladna s smernicami delovanja CA.

Struktura seznama preklica certifikata.

S protokolom OCSP poskušajo odpraviti nekatere slabosti CRL. Protokol ponuja mehanizem preverjanja statusa certifikata v sprotnem času. S tem protokolom lahko končni gostitelj poizve na OCSP strežniku, če je bil določeni certifikat preklican. Poleg prednosti OCSP, kot so manjša potrebna pasovna širina, delovanje v sprotnem času in preverjenje velikega obsega poslovanja v skoraj sprotnem času, se lahko pri njegovi uporabi pojavijo tudi problemi. To je verjetno tudi razlog relativno počasnega širjenja njegove uporabe.

Nekatere izvedbe protokola OCSP še vedno uporabljajo CRL, drugi pa so dovolj tesno povezani – integrirani – z IPK, da lahko poizvedujejo neposredno v bazi certifikatov. Ko protokol OCSP uporablja CRL, zadostuje, da CA posodablja CRL le v strežnikih OCSP. To zahteva dosti manj pasovne širine omrežja kot pri mehanizmu CRL. Zato so lahko posodabljanja dosti bolj pogosta in zato so stanja preklicov v CRL bližje „realnemu času“.

Ko je strežnik OCSP integriran s PKI, lahko s kriptografsko zaščiteno poizvedbo, ki vsebuje serijsko številko certifikata, v stežniku OCSP zahtevamo informacijo o statusu certifikata. Strežnik OCSP preveri stanje certifikata v kopiji oziroma kopijah CRL, ki jih vsebuje (od raznih CA). Svojo ugotovitev o statusu certifikata – ta je lahko "preklican", "veljaven" ali "neznan" – pošlje v svojem odzivu na poizvedovanje. Ta dialog med odjemalcem in strežnikom porabi zelo malo pasovne širine omrežja in ne potrebuje vmesnega pomnilnika za CRL. V primeru, da je strežnik OCSP integriran s PKI, lahko neposredno dostopa do informacij o preklicih certifikatih in poizvedovalec bo vedno dobil takojšen odziv na svojo poizvedbo o statusu preklicov certifikatov.

6
Varnost omrežnih storitev

6.1 TLS

Protokol TLS (Transport Layer Security) je Internetni protokol, ki zagotavlja varno komunikacijo preko Interneta. Njegov primarni cilj je zagotoviti zaupnost in neokrnjenost podatkov pri komunikaciji med dvema aplikacijama. Njegova pomembna uporaba je varovanje prometa s spletnimi stranmi, to je prehod iz HTTP v HTTPS. Ta prehod je omogočil elektronske poslovne transakcije. Vedno več se uporablja TLS tudi za zaščito v protokolu SMTP (Simple Mail Transfer Protocol).

ZANIMIVO

Ta protokol se pogosto uporablja v aplikacijah, kot so brskanje po spletnih straneh, elektronski pošti, internetnem faksimilu, neposrednem sporočanju in pro-internetni telefoniji VoIP( voice-over-IP).

Protokol temelji na prejšnjih specifikacijah SSL (Secure Sockets Layer), ki jih je razvil Netscape Communications (do nedavnega največji proizvajalec brskalnikov).

Protokol TTL in njegov predhodnik SSL uporabljata kriptografske algoritme. Oba uporabljata certifikate javnih ključev za preverjanje identitete končnih točk in za izmenjavo ključev. Prav tako za zagotovitev zaupnosti oba uporabljata simetrično šifriranje, za ugotavljanje neokrnjenosti pa avtentikacijski kod.

Pri šifriranju podatkov se uporablja simetrično šifriranje. Ključ za simetrično šifriranje je edinstven za vsako zvezo. Temelji na tajnem pogajanju z drugim protokolom (kot je TLS protokol rokovanja). Protokol zapisa se lahko uporablja tudi brez šifriranja.

Zveza je zanesljiva. Prenos sporočila vključuje preverjanje neokrnjenosti sporočila s šifriranjem MAC. Za računanje MAC uporabimo varnostno zgoščevalno funkcijo (na primer SHA-1 itd). Zapisovalni protokol lahko deluje tudi brez MAC, vendar ga v splošnem uporabljamo le na ta način, medtem ko druge protokole uporablja protokol zapisa za prenos pri pogajanju o varnostnih parametrih.

Identitete entitet, ki sodelujejo v komunikaciji, lahko ugotovimo s pomočjo simetričnega ali asimetričnega šifriranja. Možna izbira bi bila tudi avtentikacija, vendar se v splošnem zahteva za najmanj dve komunikacijski entiteti.

Pogajanja za souporabniški ključ so varna in zanesljiva: izpogajani ključ je za prisluškovalce nedosegljiv, prav tako je nedosegljiv v vseh preverjenih zvezah, četudi je napadalec povezan (napad »vrinjeni napadalec«). Napadalec tudi ne more spremeniti pogajalske komunikacije tako, da ga komunicirajoči partnerji pri tem ne bi odkrili.

6.2 Varnost elektronske pošte

Ponavadi je poslana vsebina elektronske pošte čitljiva naslovniku. V tem pogledu je (navadna) elektronska pošta enaka razglednici, saj jo lahko vsak, ki jo prestreže, tudi prebere. Vsebino elektronske pošte moramo šifrirati, da ostane zaupna oziroma, da ji zajamčimo avtentičnost. V primeru zaupnosti lahko vsebino pošte dešifrira le prejemnik, za ostale pa je vsebina neberljiva.

Za zagotavljanje zaupnosti v elektronski pošti se najpogosteje uporabljata standard oziroma protokol S/MIME in PGP.

Standard S/MIME določa za elektronsko sporočanje naslednje kriptografske varnostne storitve: avtentikacijo, neokrnjenost sporočila, preprečevanje zanikanja izvora (z uporabo elektronskega podpisa) in zaupnost podatkov (z uporabo šifriranja).

7
Perimetrična varnost

7.1 Uvod k požarnim pregradam

Med najbolj razširjenimi varnostnimi ukrepi na Internetu je "požarna pregrada ". Požarne pregrade so dobile sloves kot panacea za mnogo, če že ne za vse, varnostne probleme Interneta. Seveda pa to niso. Požarne pregrade so samo še eno orodje v nizu prizadevanj za varnost sistema. Nudijo določeno raven zaščite in so, na splošno, način izvajanja varnostnih smernic na ravni omrežja. Raven varnosti, ki jo zagotovi požarna pregrada, variira enako kot raven varnosti na določenem računalniku. Pri uporabi požarnih pregrad smo soočeni z običajnim tehtanjem med varnostjo, enostavno uporabo, ceno, kompleksnostjo itd.

DEFINICIJA

Požarna pregrada je naprava, ki jo uporabljamo za zaščito notranjega omrežja neke organizacije. Varovanje vrši z ločitvijo notranjega omrežja (organizacije) od zunanjega sveta (Interneta).

Pred instalacijo požarne pregrade mora organizacija, katere omrežje varujemo s pregrado, določiti pravila o zaščiti premoženja organizacije, njenega računalniškega sistema, podatkov o osebju in drugih občutljivih podatkov. Ta pravila tvorijo varnostne smernice. Brez njih, oziroma dokumenta o teh smernicah, s požarno pregrado omrežja ne moremo zaščiti.

S požarno pregrado lahko dosežemo dvoje. Z njo lahko blokiramo ali dovolimo komunikacijo (skozi pregrado). Vsa komunikacija iz notranjega omrežja v zunanje (Internet) je ponavadi dovoljena, če pa ga varnostne smernice prepovedujejo, lahko blokira promet k lokacijam, ki jim ni za zaupati ali k drugim lokacijam, ki predstavljajo nevarnost za organizacijo ali so zanjo neprimerne. Promet iz Interneta v interno omrežje pa je običajno prepovedan. V naslednjih učnih modulih bomo opisali, kako lahko požarna pregrada uresniči to nalogo in kako učinkovita je pri tem. Prav tako bomo pregledali prednosti in slabosti požarnih pregrad.

7.2 Sistem za zaznavo vdorov

Ščitenje varnosti postaja vse težja naloga, ker možne tehnologije za napad postajajo vse bolj sofisticirane, število novih napadalcev pa narašča, saj ti ne potrebujejo več visoke tehnične usposobljenosti. Svojo pomanjkljivo znanje kompenzirajo z uporabo preizkušenih preteklih napadov, katerih opisi so enostavno dosegljivi na spletnih straneh. Kot odgovor na naraščajoče število napadov so razvili sistem za odkrivanje vdorov, ki ga običajno označimo z angleško kratico IDS (Intrusion detection systems).

DEFINICIJA

IDS je zvrst sistema za upravljanje varnosti v računalnikih in omrežjih. Ta sistem zbira in analizira informacije iz različnih področij v računalniku ali omrežju, da bi odkril možne razpoke v varnosti. Te lahko vključujejo zlorabo (napadi znotraj organizacije) in vdore (napadi izven organizacije). Sistem za odkrivanje vdora uporablja oceno ranljivosti oziroma skeniranje, s katero ocenjuje varnost računalniškega sistema ali omrežja.

Funkcije odkrivanja vdora vključujejo:

spremljanje in analizo uporabnika in aktivnosti sistema,

analiziranje konfiguracije sistema in ranljivosti,

ocenjevanje neokrnjenosti sistema in datotek,

sposobnost prepoznavanja vzorcev tipičnih napadov,

analize nenormalnih vzorcev aktivnosti,

sledenje kršitvam uporabniških smernic.

ZANIMIVO

Sistem za odkrivanje vdorov preiskuje vse notranje in zunanje aktivnosti omrežja in prepoznava sumljive vzorce, ki lahko nakazujejo napad na omrežje ali na sistem sistemski napad nekoga, ki skuša vlomiti v omrežje ali ga vsaj kompromitirati.

Sisteme za odkrivanje vdorov lahko razvrstimo na več načinov.

Odkrivanje zlorab proti odkrivanju anomalij

Odkrivanje zlorab: sistem za odkrivanje vdorov analizira informacije in jih primerja s podatki v veliki podatkovni bazi »podpisov« napadov. V bistvu IDS v vseh sporočilih v omrežju išče vzorce specifičnih napadov, ki so že dokumentirani. IDS lahko odkrije napade tudi na nivoju aplikacije, čeprav so njene interakcije s protokoli skladne s standardno interakcijo. To dopolnjuje s svojim dekodiranjem sodelovanje med aplikacijskimi protokoli. Podobno kot pri odkrivanju virusov, odvisno od baze podpisov virusov, je programje IDS uspešno od toliko uspešno kot so baze podpisov napadov. Zato jo jih morajo redno vzdrževati in posodabljati. Pogostost posodabljanja je ključnega pomena za uspešnost.

Odkrivanje anomalij: Skrbnik sistema opredeli, kakšna je normalna obremenitev omrežja, kako izgleda prekinitev omrežja, kako izgledajo uporabljani protokoli in tipične velikosti paketov. Detektor anomalij spremlja dogajanje na omrežju in opazuje odstopanja od normalnega stanja na omrežju. Če odstopanja presežejo določen prag, jih prepozna kot anomalije na omrežju.

Omrežni in gostiteljski sistemi

Omrežni sistemi ali NIDS (Network-based system). Analizirajo vse pakete, ki potujejo skozi omrežje. NIDS lahko odkrije vsiljive pakete, ki so sestavljeni tako, da jih preprosta pravila filtrov v požarnih pregradah spregledajo.

Gostiteljski sistemi ali HIDS (Host-based system). IDS pregledujejo celotno aktivnost v vsakem računalniku – svojem gostitelju.

Pasivni in reaktivni sistem

Pasivni sistem: IDS odkriva potencialne varnostne kršitve, jih vpiše v zapise in sproži alarm.

Reaktivni sistem: IDS ob odkritju sumljive dejavnosti izklopi uporabnika ali reprogramira požarno pregrado, da blokira promet iz osumljenega zlonamernega vira.

ZANIMIVO

Požarna pregrada se od IDS razlikuje v tem, da skuša preprečiti vdore preden se zgodijo. Vdor skuša preprečiti z omejevanjem dostopa med omrežji in ne reagira na napade znotraj omrežja. Nasprotno pa IDS ocenjuje domnevne vdore, ko se že zgodijo in, glede na oceno, na njih tudi opozarja. IDS prav tako zaznava napade znotraj varovanega sistema.

8
Varnost v brezžičnih omrežjih

8.1 Brezžična omrežja

Brezžična omrežja, pogosto jih označujemo z angleško kratico WLAN (Wireless networks), so danes zelo popularna omrežja, saj omogočajo mobilnost uporabnikov (znotraj dosega omrežja) in brezžično zvezo s končnimi napravami. Skoraj povsod ponujajo tudi možnost uporabe omrežnih storitev in Interneta.

Brezžične komunikacije imajo številne prednosti, predstavljajo pa tudi velika varnostna tveganja. Radijski signal znotraj dosega omrežja lahko sprejema vsaka ustrezno opremljena naprava. Zaradi tega je varnost brezžičnih omrežij (še vedno, oziroma vse bolj) aktualna tema.

Varnost WLAN vključuje naslednji pomembni opravili:

zagotavljanje zaupnosti – šifriranje vsebine sporočil,

avtentikacija uporabnika – ali kontrola dostopa do omrežja.

8.2 Varnost v brezžičnih omrežjih

Varnost brezžičnih omrežij vključuje tri glavna polja:

avtentikacijo,

zaupnost,

upravljanje s ključi.

Avtentikacija je proces, v katerem so uporabniki povezani v brezžično omrežje.

Zaupnost se v brezžičnih omrežjih doseže s šifriranjem. Pri tem se največ uporabljata algoritma RC4 (WEP) in AES (WPA2).

Upravljanje s ključi zajema distribucijo in generiranje ključev.

8.3 Protokol WEP

Protokol WEP (Wired Equivalent Privacy) se uporablja kot dopolnilo standarda IEEE 802.11a/g/b. Načrtovan je za kontrolo dostopa v brezžičnih lokalnih omrežjih, in sicer za zagotavljanja zaupnosti prenesenih podatkov.

Protokol vključuje naslednje varnostne mehanizme:

avtentikacijo,

šifriranje,

WEP avtentikacijo. Ta je lahko narejena na dva načina:

kot odprta avtentikacija ter

kot souporabniški ključ.

Pri odprti avtentikaciji sistem uporablja samo SSID identifikator. SSID ni geslo, to je samo identifikator brezžičnega omrežja. Dostopna točka do brezžičnega omrežja WAP (Wireless access point) oddaja ta identifikator v nekaj sekund dolgem intervalu.

V načinu odprte avtentikacije uporabnik pošlje avtentikacijski okvir 802.11, ki vsebuje uporabnikove identifikacijske podatke. WAP preveri uporabnikov ID in se odzove z okvirom, s katerim pošiljatelju potrdi ali zavrne dostop do brezžičnega omrežja.

Avtentikacija s souporabniškim WEP ključem, ki je dolg 40 bitov in enak za vse uporabnike brezžičnega omrežja. Uporabnikom se razdeli na tajni način. Avtentikacija preveri identiteto omrežnih kartic končnih naprav. Ta avtentikacija je šibka točka WEP protokola, ker se identiteta uporabnika ne preverja.

WEP šifriranje

Protokol WEP uporablja simetrično šifriranje RC4, ki uporablja 64- ali 128-bitni šifrirni ključ. Ključ sestavljata skrivni 40-bitni ali 104-bitni ključ in 24-bitni inicializacijski vektor IV (initialization vector).

ZANIMIVO

Protokol WEP je ranljiv na znane napade (spremljanje aktivnosti, napad z grobo silo, napad s ponavljanjem itd). Šifriranje RC4 so zlomili že leta 1996.

8.4 Protokol WPA

Protokol WPA (Wi-Fi Protected Access) je bil sprejet leta 2002 zato, da z njim odpravijo ranljivosti protokola WEP. Sprejet je bil kot začasna rešitev, saj so takrat že sestavljali standard 802.11i, ki je bil sprejet leta 2004. Danes je protokol WPA podmnožica standarda 802.11i, zato uvedba standarda 802.11i ne zahteva sprememb programske in strojne programske opreme. Spremembe so potrebe samo za programsko opremo (software) ali firmware (strojno programsko opremo).

Podobno kot protokol WEP, tudi protokol WPA uporablja šifriranje RC4, vendar vključuje nove varnostne mehanizme. Glavne sestavine protokola WPA so:

Temporary Key Integrity Protocol (TKIP),

Message Integrity Check (MIC),

kontrola dostopa, ki temelji na standardu 802.1x s protokolom EAP (Extensible Authentication Protocol).

8.5 Protokol 802.11i (WPA2)

Standard 802.11i, imenujemo ga tudi WPA2, kombinira mehanizme iz standarda 802.1x in TKIP. Predvideva uporabo 128-bitnega blokovnega šifratorja AES.

Standard 802.11i ima podobno zgradbo kot WPA, vendar ima dodanih nekaj novih značilnosti, kot je protokol CCMP in izbirna lastnost predavtentikacije, ki zagotovi hitro in varno prehajanje med dvema dostopnima točkama.

Glavni mehanizmi varnostnih storitev v standardu 802.11i so:

avtentikacija,

šifriranje,

neokrnjenost.

Nazaj