<<

Gorazd Praprotnik Računalniške komunikacije in omrežja II

Računalniške komunikacije in omrežja II

Avtor: mag.Gorazd Praprotnik

Študijsko gradivo Prepovedano razmnoževanje in javna uporaba

Ljubljana, oktober 2018 Gorazd Praprotnik Računalniške komunikacije in omrežja II

Kazalo vsebine 1.Varnost v informacijski tehnologiji (IT)...... 5 1.1 Uvod...... 5 1.2 Varnostna politika (Security Policy)...... 5 1.3 Zaščita informacijske tehnologije (IT Security)...... 6 1.3.1 Zaščita podatkov...... 6 1.3.2 Zaščita podatkov s pomočjo šifriranja (enkripcija)...... 7 1.4 Zlonamerni programi (MALicious softWARE – )...... 8 1.4.1 Računalniški virusi ...... 9 1.4.2 Računalniški črvi...... 9 1.4.3 Računalniški trojanski konji...... 10 1.4.4 Korenski virusi (rootkit)...... 10 1.4.5 Neopazni programi (backdoor) ...... 10 1.4.6 Vohunska programska koda (spyware)...... 10 1.4.7 Nepošten reklamni programi (dishonest adware)...... 10 1.4.8 Strašilna programska koda (scareware)...... 10 1.4.9 Kriminalni programi (crimeware)...... 11 1.4.10 Socialni inženiring...... 11 1.4.11 Ostali zlonamerni in nezaželeni programi...... 11 1.5 omrežja...... 12 1.5.1 Botnet omrežje Mariposa...... 12 1.5.2 Botnet omrežje TDL4...... 13 1.5.3 GhostNet - uporaba botnet omrežij kot orodje za vohunjenje...... 14 1.5.4 Mobilni botnet...... 15 1.5.5 Botnet omrežja kot orožje...... 16 2. Požarni zid...... 18 2.1 Vrste požarnih zidov...... 18 2.1.1 Paketni filter (Packet Filtering Firewall)...... 18 2.1.2 Aplikacijski požarni zid (Application gateway)...... 19 2.1.3 Požarni zid na nivoju voda (Circuit-Level Firewalls)...... 19 2.2 Konfiguracija požarnih zidov...... 19 2.2.1 Zaščita omrežja z enim požarnim zidom...... 19 2.2.2 Zaščita omrežja z dvema (ali več) požarnima zidovoma...... 20 3. Navidezno zasebno omrežje (Virtual Private Network)...... 21 3.1 Tuneliranje...... 21 3.2 IPSec VPN (IP Security)...... 22 3.3 PPTP VPN (Point-to-Point Tunneling Protocol)...... 22 3.4 L2TP VPN (Layer 2 Tunneling Protocol)...... 23 3.5 SSL VPN (Secure Socket Layer)...... 23 4. Protokol omrežnega časa NTP (Network Time Protocol)...... 24 4.1 Usklajevanje ure...... 24 4.2 NTP protokol...... 24 4.3 Povezovanje NTP strežnikov in odjemalcev...... 25 4.3.1 Hierarhija NTP strežnikov in odjemalcev...... 25 4.3.1.1 Stratum 0...... 26 4.3.1.2 Stratum 1...... 26 4.3.1.3 Stratum 2...... 26 4.3.1.4 Stratum 3...... 26 4.4 Načini delovanja NTP protokola...... 26 Gorazd Praprotnik Računalniške komunikacije in omrežja II

4.5 Delovanje NTP strežnika...... 26 4.6 SNTP - Simple Network Time Protocol...... 27 5. Strežniška programska oprema...... 28 5.1 Arhitektura odjemalec/strežnik (Client/Server)...... 28 5.1.1 Strežniki...... 28 5.1.1.1 Programska oprema strežnikov...... 28 5.1.1.2 Strojna oprema strežnikov...... 29 5.1.2 Odjemalci...... 29 5.1.3 Klasična dvoslojna arhitektura odjemalec/strežnik (2-Tier)...... 29 5.1.4 Troslojna arhitektura odjemalec/strežnik (3-Tier)...... 30 5.1.5 Štiri in večslojna arhitektura odjemalec/strežnik...... 31 5.1.6 Prednosti in slabosti arhitekture odjemalec/strežnik...... 31 5.2 Varnost strežniških sistemov...... 31 5.2.1 Varnost omrežja...... 31 5.2.1.1 Zaščita proti DDoS (Distributed Denial-of-Service) napadom...... 31 5.2.1.2 Zaščita s požarnim zidom - Firewall ...... 32 5.2.1.3 Sistem za odkrivanje omrežnih vdorov...... 32 5.2.2 Varnost strežnikov...... 32 5.2.2.1 Standardizacija strojne opreme...... 32 5.2.2.2 Sistemi za odkrivanje vdorov ...... 32 5.2.3 Varnost programske opreme...... 32 5.2.3.1 Posodabljanje, popravljanje hroščev in varnostni popravki...... 32 5.2.3.2 Periodični varnostni pregledi...... 32 5.2.3.3 Testni postopki pred nadgradnjo...... 32 5.2.4 Varnost aplikacij...... 32 5.2.5 Varnost osebja...... 33 5.3 Osnovni strežniški programi...... 33 6. Industrijske mreže...... 34 6.1 Specifične zahteve industrijskih mrež...... 34 6.2 Hierarhična organizacija industrijskih sistemov...... 35 6.3 Omrežje na nivoju naprav (Field level)...... 36 6.3.1 Podnivo elementov (Podnivo senzorjev in aktuatorjev)...... 36 6.3.1.1 Senzorji...... 36 6.3.1.2 Aktuatorji...... 36 6.3.2 Podnivo strojev...... 37 6.3.3 Povezovanje elementov s kontrolnimi enotami...... 38 6.3.4 Prednosti industrijskih mrež z digitalnimi vodili...... 38 6.3.5 Vrste digitalnih vodil...... 38 6.3.6 AS-I (Actuator Senzor Interface)...... 39 6.3.7 Profibus...... 40 6.3.7.1 Profibus DP (DistributedProcessing)...... 40 6.3.7.2 Profibus FMS (Field Message System)...... 41 6.3.7.3 Profibus PA (Proces Avtomation)...... 42 6.4 Omrežje na kontrolnem nivoju...... 43 6.4.1 Podnivo proizvodnih celic (Cell level)...... 43 6.4.2 Podnivo proizvodnih pogonov (Area level)...... 44 6.5 Omrežje na informacijskem nivoju (Information level)...... 44 6.6 Industrijski Ethernet...... 44 6.6.1 EtherNet/IP (Industrial Protocol)...... 46 6.6.2 Prednosti Etherneta pred ostalimi industrijskimi mrežami...... 46 Gorazd Praprotnik Računalniške komunikacije in omrežja II

7. Faze načrtovanja in izvedbe pri vzpostavitvi omrežja...... 48 7.1 Planiranje...... 48 7.2 Analiza zahtev...... 48 7.3 Načrtovanje omrežja...... 49 7.4 Izvedba...... 49 7.5 Testiranje in vrednotenje...... 49 7.6 Upravljanje in vzdrževanje...... 49 Literatura:...... 50 Gorazd Praprotnik Računalniške komunikacije in omrežja II

1.Varnost v informacijski tehnologiji (IT)

1.1 Uvod Hiter razvoj računalniških tehnologij in elektronskih komunikacij (predvsem interneta) je povzročil pravo revolucijo v načinu našega življenja. Uporaba računalnikov se je umestila skoraj v vse pore sodobnega življenja, saj so dandanes računalniki prisotni na vsakem koraku, velika večina le-teh pa je povezana v računalniške mreže in naprej v internet. Vse bolj postajajo odvisne od zanesljivega in varnega delovanja računalnikov tudi najbolj vitalne življenjske funkcije človeštva kot so oskrba z energijo in vodo ter zelo pomembne dejavnosti kot nadziranje prometa, izvajanje finančnih transakcij, nadzor nad zdravstveno oskrbo, nadzor proizvodnje dobrin, itd. Zelo pomemben delež zagotavljanja zanesljivosti nekega sistema je njegova varnostna politika, s katero dosegamo potrebno varnost in zaščito sistema.

1.2 Varnostna politika (Security Policy) Varnostna politika neke organizacije je množica odločitev (postopkov in pravil), ki določajo odnos organizacije do varnosti. Torej s pomočjo varnostne politike se postavijo meje sprejemljivega obnašanja in reakcije na kršenje le-teh. Varnostna politika zajema vse dejavnike, organizacijska pravila in postopke, ki vplivajo na varno delovanje organizacije. Pomemben del splošne varnostne politike posamezne organizacije, ki je vpeta v sodobne informacijske tokove je informacijska varnostna politika, katere glavni cilj je določitev pravil, vlog in odgovornosti na področju informacijske varnosti. Namen informacijske varnosti je preprečevanje in zmanjševanje učinkov varnostnih dogodkov in s tem stalno zagotavljanje neprekinjenega poslovanja in obvarovanja dobrega imena oziroma ugleda na trgu. Cilj vseh teh dejavnosti pa je zmanjševanje ekonomske škode na minimum. Zavedati se moramo, da ima tudi informacijska varnost svojo ceno, zato lahko sklepamo, da informativna varnostna politika poskuša določiti optimalno razmerje med med ceno informacijske varnosti in ceno možne povzročene ekonomske škode. Gorazd Praprotnik Računalniške komunikacije in omrežja II

1.3 Zaščita informacijske tehnologije (IT Security) Zaščito informacijske tehnologije lahko opredelimo kot takšno varovanje informacij, sistemov in opravil (IT premoženje), da v primeru katastrofe, napake ali manipulacije minimiziramo povzročeno škodo. IT zaščita je sklop dejavnosti, ki temeljijo na principih: • zaupnosti (confidentiality) – omejevanje dostopnosti do podatkov in storitev samo pooblaščenim osebam • neokrnjenosti (integrity) – skrb za celovitost podatkov in storitev • overjanja (authenthication) • preprečevanje tajenja (nonrepudiation) • dostopnosti (availibity) – podatki in storitve morajo biti na voljo, ko jih potrebujemo. Kot IT grožnjo (threat) smatramo vsako nevarnost, ki lahko ogrozi zaščito našega IT premoženja v smislu zaupnosti, celovitosti ali dostopnosti. Postopki varovanja informacijske tehnologije se morajo izvajati na osnovi varnostnih ocen in natančne analize tveganj ter ugotavljanja sprejemljive cene vseh varnostnih postopkov, s katerimi se poskuša doseči zadovoljiv varnostni nivo. Zaščita informacijske tehnologije vsebuje različne elemente varovanja od navadnega fizičnega varovanja elektronskih naprav, arhiviranja podatkov do zaščite pred električnimi udari (strele), vendar je najkompleksnejši in najpomembnejši element zadostna zaščita podatkov v smislu njihove zaupnosti in neokrnjenosti ter zaščita IT sistemov pred zlonamernimi programi in s tem povezanimi nepooblaščenimi vdori v informacijske sisteme.

1.3.1 Zaščita podatkov Eden izmed najpomembnejših postopkov pri zaščiti informacijske tehnologije je zaščita podatkov pri prenosih. Ker pri prenosih podatki največkrat fizično zapustijo organizacijo, postanejo izjemno ranljivi in lahek plen različnim grožnjam. Poleg tega pa moramo pri prenosih „odpreti“ komunikacijske poti, kar zopet povzroči potencialno nevarnost nepooblaščenih vdorov v IT infrastrukturo. Za učinkovito zaščito se mora vsak posameznik, predvsem pa organizacije zavedati pomembnost zaščite pred vsemi možnimi potencialnimi grožnjami, ki se jih lahko sreča pri komuniciranju preko omrežij. Zato je potrebno vse možne grožnje v naprej predvideti in se nanje tudi skrbno pripraviti. Obstaja ogromno potencialnih nevarnosti, od katerih so najosnovnejše:

• prisluškovanje (prestrezanje) • ponarejanje (spreminjanje, brisanje ali vrivanje) • pretvarjanje (spreminjanje identitete oddajnika) • nepooblaščena uporaba virov • nepooblaščeno razkritje informacij • zanikanje sodelovanja (zakrivanje identitete oddajnika) • DoS (Denial of Service) – preprečevanje dostopa do virov ali storitev • analiza podatkov Gorazd Praprotnik Računalniške komunikacije in omrežja II

1.3.2 Zaščita podatkov s pomočjo šifriranja (enkripcija) Nevarnost prisluškovanja, ponarejanja in pretvarjanja lahko z veliko zanesljivostjo odpravimo z učinkovitim šifriranjem podatkov, kjer s pomočjo raznih šifrirnih metod spremenimo podatke v obliko, ki jo lahko dešifrirajo le pooblaščene osebe. Torej je skrivanje vsebine sporočila pred vdiralci osnovni namen šifriranja. Potencialni vdiralci so lahko: • hekerji • upravljalci, nadzorniki • sodelavci • državne službe • neznani vdiralci Vdiralce delimo na: • pasivne ali prisluškovalce (posluša vsebino) • aktivne ali ponarejevalce (spreminja ali generira vsebino) Gorazd Praprotnik Računalniške komunikacije in omrežja II

1.4 Zlonamerni programi (MALicious softWARE – malware) Malware1 imenujemo programsko kodo, katere cilj je infiltracija v računalniški sistem brez uporabnikovega dovoljenja, ki bi temeljil na podlagi zadostnega informiranja2 (Norton Antivirus Center, 2007-2011). Privolitev po pojasnilu je pravni termin, ki opredeljuje uporabnikovo odločitev, ki temelji na potrebnem znanju, da uporabnik pozna vse posledice svoje odločitve. Torej zlonamerni programi niso samo programi, ki se namestijo brez uporabnikovega dovoljenja, ampak tudi programi, ki na različne načine preslepijo uporabnika tako, da le-ta privoli v namestitev. Glede zlonamernih kod je zakonodaja celo v najrazvitejših državah nepopolna in dopušča velika področja sivih con, kar s pridom izkoriščajo tudi velika in znana podjetja3. Zato mora vsak uporabnik poznati osnovne grožnje, ki so lahko prisotne pri delu z računalnikom in internetom ter jih vsaj poskušati preprečiti.

Že leta 2008 so podjetja, ki se ukvarjajo z protivirusno zaščito, poročala, da je število znanih računalniških virusov in ostalih zlonamernih programov doseglo številko milijon in da se je število na novo odkritih zlonamernih programov v enem letu povečalo skoraj za skoraj 500% (Symantec, 2008). Zaradi uveljavljanja novih in novih tehnologij na področju računalništva in komunikacij, se tudi na področju zlonamerne kode uporabljajo nove metode in tehnike infiltriranja, maskiranja in skrivanja. Da bi lažje prepoznali potencialne grožnje, lahko različne vrste zlonamerne računalniške kode razvrstimo v nekaj najznačilnejših skupin, ki pa se velikokrat prepletajo med seboj:

• računalniški virusi • računalniški črvi • računalniški trojanski konji • korenski virusi (rootkit) • neopazni programi (backdoor) • vohunska koda (spyware) • nepošten reklamni programi (dishonest adware) • strašilna programska koda (scareware) • kriminalni programi (crimeware) • socialni inženiring • ostali škodljivi in nezaželeni programi Zaradi vse številčnejše uporabe antivirusnih programov in učinkovitih izboljšav operacijskih sistemov (Windows 7) postaja izdelovanje zlonamerne programske kode vse bolj zahtevno opravilo, programska koda pa kompleksna, saj mora za svoje uspešno širjenje uporabljati kombinacije različnih tehnik. Tudi s stalnim uvajanjem novih informacijskih in komunikacijskih tehnologij ter z razcvetom socialnih omrežij se pojavljajo nove in nove oblike zlonamerne programske kode, nekatere pa zaradi odsluženih tehnologij izginjajo. Zanimiv je primer računalniških virusov, ki so se prenašali preko okuženih disketnih pogonov. Ker so se disketni pogoni prenehali uporabljati, so računalniški virusi tega tipa skoraj povsem zamrli v primerjavi z virusi, ki so se širili preko Interneta. S pojavom cenenih USB ključev in njihovo množično uporabo, pa je število virusov tega tipa zopet naraslo.

1 Malicious – zloben 2 Da je uporabnik zadostno informiran, se uporablja pravni izraz - privolitev po pojasnilu (informed consent) 3 Podjetje Sony je izdelalo korenski virus za preprečevanje kopiranja, podjetje Microsoft je izdelalo vohunski program Windows Genuine Advantage za testiranje avtentičnosti, itd. Gorazd Praprotnik Računalniške komunikacije in omrežja II

V juliju 2010 se je pojavila škodljiva programska koda poimenovana . Črv4 Stuxnet, ki je sicer okužil „samo“ nekaj 10.000 računalnikov in ni predstavljal velike nevarnosti navadnim uporabnikom. Kljub temu je povsem presenetil veliko število strokovnjakov in poznavalcev s tega področja in so ga zaradi velike zapletenosti ter vloženega znanja označili kot najkompleksnejša odkrito škodljivo programsko kodo (Falliere N., O Murchu L. in Chien E, 2011). Po do sedaj znanih ugotovitvah, se črv Stuxnet močno razlikuje od klasične škodljive kode, ki že desetletja napada računalniške sisteme po vsem svetu, saj je prva odkrita škodljiva programska koda, za katero je mogoče skoraj z gotovostjo trditi, da je digitalno orožje, ki povzroča kinetične posledice – uničenje centrifug za pridobivanje obogatenega urana. Za črv Stuxnet je značilna kompleksnost izdelane programske kode v katero je bilo vloženo ogromno dela in znanja, saj se ocenjuje, da so stroški razvoja Stuxnet-a stali okoli deset milijonov dolarjev (Langner R. 2010).

1.4.1 Računalniški virusi Računalniški virusi imenujemo programsko kodo, ki je sposobna okužiti računalniške sisteme in se razmnoževati brez vednosti uporabnika. V osnovi se računalniški virusi delijo na dve vrsti:

• nerezidentni računalniški virusi vsebujejo iskalnik (finder module) in replikator (replication module). Računalniški virus s pomočjo iskalnika išče potencialne datoteke. Ko iskalnik najde neokuženo datoteko, zažene replikator, ki podvoji lastno kodo in jo prilepi izbrani datoteki. V praksi je večina takšnih vrst računalniških virusov izvedena v obliki okuženja izvršnih datotek, kot so npr. programi, makroji, skriptne datoteke, itd. Za svoje širjenje uporabljajo različne medije, ki služijo prenosu ali shranjevanju datotek (diskete, CD, ključki, internet). Okužba računalnika nastane po zagonu okužene datoteke, kjer se virus prenese v spomin računalnika.

• rezidentni računalniški virusi vsebujejo samo modul za podvajanje, saj namesto modula za iskanje uporabljajo različne strategije, ki jim omogočajo, da se naselijo v sam operacijski sistem. Tako se naselijo v spomin računalnika že ob samem zagonu operacijskega sistema in so tako vedno prisotni pri vseh operacijah računalnika. Ker je dandanes protivirusna zaščita relativno močna, uporabljajo sodobni virusi dve različni strategiji razmnoževanja. Prvi način širjenja virusa temelji na strategiji hitre okužitve, kjer se virus poskušajo razmnožiti v čim večjem številu v čim krajšem času. Ker je za detekcijo in pripravo protivirusne zaščite potreben določen čas, lahko uspešen virus v nekaj minutah okuži na tisoče računalnikov (SQL Slammer). Druga strategija temelji na principu počasnega širjenja z namenom, da bi se takšen virus težje zaznal. Takšen pristop je bil do sedaj manj uspešen od prvega.

Računalniških virusov je veliko vrst, ki se širijo jo s pomočjo različnih tehnik razmnoževanja. Zato lahko naštejemo samo najznačilnejše:

• programski virusi, ki okužijo računalnik ob zagonu programske datoteke • virusi zagonskega sektorja, ki se naselijo v zagonskih sektorjih (VBR in MBR) • skriptni virusi • makro virusi, ki so skriti posameznih dokumentih (word, excel, access, itd.) • virusi, ki izkoriščajo napake v sistemih (npr. buffer overflow)

1.4.2 Računalniški črvi Računalniški črvi so programska koda, ki se širi preko mreže s pomočjo izkoriščanja napak v

4 Škodljiva programska kodo Stuxnet je v literaturi največkrat označena kot črv, ker za svoje širjenje uporablja sistemske ranljivosti, vendar v resnici vsebuje tudi programsko kodo, ki je značilna za viruse, korensko škodljivo kodo in botnet-e. Gorazd Praprotnik Računalniške komunikacije in omrežja II operacijskih sistemih računalnikov in ostalih naprav, ki so priključeni na to mrežo. Za preprečitev večine teh napadov je potrebno skrbno nalaganje popravkov naprav, ki so priključene v omrežje.

1.4.3 Računalniški trojanski konji Trojanske konje imenujemo programsko kodo, ki se zažene s pomočjo prevare uporabnika. Pri tem je lahko zlonamerna programska koda:

• skrita v programih, ki jih uporabnik naloži iz interneta • skrita na spletnih straneh, ki jih uporabnik obišče (ActiveX kontrole) • je lahko pripeta v elektronski pošti • izkorišča določene ranljivosti programske opreme, s katero dostopamo do spleta (brskalnik, razni predvajalniki, itd.)

1.4.4 Korenski virusi (rootkit) Korenski virus je programska koda, ki se vtihotapi v sam operacijski sistem. Pri tem poskuša zabrisati sledi svoje prisotnosti in hkrati prevzeti nadzor nad želenimi funkcijami sistema tako, da spremeni nekatere osnovne funkcije operacijskega sistema. Zato je prepoznavanje takšnih zlonamernih programskih kod zelo oteženo, saj lahko postanejo okužene datoteke nevidne za protivirusne in protivohunske programe, v nekaterih primerih takšni programi poskušajo celo blokirati ali onemogočiti protivirusne programe. Za vdor v računalnik korenski virusi lahko uporabijo podobne tehnike napadov kot ostala zlonamerna programska koda (virusi, črvi, trojanski konji).

1.4.5 Neopazni programi (backdoor) Neopazni programi vsebujejo programsko kodo, ki omogoča nepooblaščen dostop (skozi stranska vrata) do okuženega računalnika. Največkrat so to posebna vrsta korenskih virusov, v nekaterih operacijskih sistem pa je lahko takšna koda že vgrajena s strani proizvajalca.

1.4.6 Vohunska programska koda (spyware) Vohunska programska koda je namenjena prikritemu zbiranju podatkov o uporabniku. Teh metod se ne poslužujejo samo kriminalne združbe, ampak tudi večja podjetja (proti podjetju Microsoft je odprtih kar nekaj tožb), ki na bolj ali manj legalen način zbirajo različne podatke o uporabnikih.

1.4.7 Nepošten reklamni programi (dishonest adware) Veliko brezplačnih programov se financira tako, da poleg svoje osnovne naloge še reklamirajo določeno podjetje ali izdelek (reklamni programi). Vendar obstajajo tudi brezplačni programi, ki poleg osnovne funkcije vsebujejo še zlonamerno kodo. Takšne programe bi lahko uvrstili tudi med posebno vrsto trojanskih konjev, saj se zlonamerna koda naloži v računalnik s prevaro. Ker se avtorji takšnih programov zavedajo, da lahko njihovi programi hitro postanejo tarča protivirusnih programov, je običajno takšna zlonamerna koda relativno neškodljiva (največkrat spyware).

1.4.8 Strašilna programska koda (scareware) Strašilna zlonamerna programska koda poskuša pri uporabnikih s pomočjo prevare ustvarjati elemente strahu, zaskrbljenosti ali celo panike in na osnovi negativnih emocij uporabnika od njega pridobiti denarne ali kakšne druge koristi. Na Internetu je najbolj razširjena strašilna zlonamerna programska koda v obliki lažnih antivirusnih programov, ki uporabniku poročajo o kopici neobstoječih virusov in mu v zameno za določena denarna sredstva obljubljajo rešitve. Gorazd Praprotnik Računalniške komunikacije in omrežja II

1.4.9 Kriminalni programi (crimeware) Kriminalni programi so programi, katerih namen je izvedba kriminalnega dejanja na osnovi informacij, ki jih tak program zbere. Kriminalni programi za vdor v računalnik lahko uporabijo podobne tehnike napadov kot ostala zlonamerna programska koda (virusi, črvi, trojanski konji). Ko se naselijo v računalnik, začnejo zbirati koristne informacije, s katerimi se lahko napadalec okoristi. Tako si lahko zapisujejo tipkanje uporabnika (keyloggers) za ugotavljanje gesel, PIN kod, številk kreditnih kartic, lahko pošiljajo zaslonske slike pri uporabi spletnega bančništva, zbirajo informacije za krajo identitete, itd. Ker je količina in vrsta denarnih tokov na internetu v porastu (elektronsko bančništvo, e-trgovine, itd), se povečuje tudi internetna kriminaliteta.

1.4.10 Socialni inženiring Socialni inženiring je posebna vrsta kriminala, kjer se pridobivajo različne informacije (največkrat kraja identitete) s pomočjo raznih prevar. Takšne vrste prevar niso nujno povezane z zlonamerno programsko kodo, največkrat pa delujejo v kombinaciji z njo. Med socialni inženiring lahko uvrstimo nezaželeno e-pošto (spam), razne e-poštne prevare (Nigerijska pisma, itd), v zadnjem času pa je v porastu internetno ribarjenje (phishing), predvsem manipulacija z internetnimi povezavami (link manipulation), kjer je uporabnik preusmerjen na lažno internetno stran (največkrat bančno), ki je natančna kopija originalne internetne strani, od uporabnika pa zahteva določene podatke (geslo, PIN kodo, številko kreditne kartice, itd.)

1.4.11 Ostali zlonamerni in nezaželeni programi Človeška domišljija nima meja, zato nastajajo nove in nove ideje, kako pretentati ljudi ali sisteme. Zato nastajajo nove in nove vrste različnih tipov zlonamernih programov, ki so lahko plod popolnoma novih idej, ali pa nastajajo na osnovi kombinacije že obstoječih tipov zlonamerne računalniške kode. Računalniški virusi in drugi zlonamerni programi so lahko za uporabnike zelo neprijetni, saj velikokrat povzročijo ogromno škodo. Predvsem so na udaru neizkušeni uporabniki, ki se premalo zavedajo vseh nevarnosti, ki jim pretijo pri vsakodnevnem delu z računalniki in zato ne posvečajo dovolj pozornosti za zagotovitev potrebnih zaščitnih mehanizmov. Ker je delovanje računalniških virusov strogo omejeno z v naprej določeno logiko, ki jo programerji določijo že pri njihovi izdelavi, je največkrat njihovo obnašanje do neke mere predvidljivo. Zato lahko škodljivo delovanje virusov, predvsem pa njihovo širjenje, učinkovito omejimo s pametno strategijo in s preventivnim delovanjem. Tako lahko povprečni uporabnik že s pomočjo kvalitetne protivirusne zaščite in z rednim posodabljanjem svojega operacijskega sistema ter s previdnim odpiranjem elektronske pošte doseže dovolj zanesljivo zaščito, ki ga varuje pred veliko večino zlonamerne programske kode. Prav zaradi takšnega omejenega delovanja računalniških virusov se je začela pojavljati zlonamerna programska koda, ki pri svojem širjenju sicer ima podobne lastnosti kot računalniški virusi, vendar je zanjo značilna predvsem ustvarjanje možnosti komunikacije med okuženim računalnikom in hekerjem. Tako lahko heker dobi skoraj popolno kontrolo nad množico računalnikov, s katero lahko komunicira na različne načine. S takšnim pristopom so hekerji dobili možnost vpliva na izvajanje zlonamerne programske kode in stalno prilagajanje glede na obstoječe okoliščine. S tem so bistveno povečali učinkovitost širjenja škodljive programske kode, saj jo lahko heker arbitrarno spreminja glede na odzive uporabnikov kot tudi na ažurnost podjetij, ki izdelujejo protivirusno zaščito. Množico tako okuženih računalnikov imenujemo botnet omrežja. Gorazd Praprotnik Računalniške komunikacije in omrežja II

1.5 Botnet omrežja Botnet omrežje je množica okuženih računalnikov, ki jih kontrolira eden (ali več) nadzorni računalnik (bot controller) s katerim upravlja heker – administrator botnet omrežja - botmaster. Okuženi računalniki se imenujejo bot-i5, za njih pa je značilno komuniciranje z nadzornim računalnikom in ostalimi okuženimi računalniki, tako da vsi skupaj tvorijo omrežje imenovano botnet6. Večino obstoječih botnet omrežij nadzorujejo skupine kriminalcev, ki jih uporabljajo za kriminalno dejavnost kot npr. generiranje nezaželene pošte ali kraja osebnih podatkov (predvsem številke kreditnih kartic in njihova gesla). Teoretično lahko že en sam računalniški strokovnjak izdela škodljivo kodo, ki po vsem svetu spremeni na milijone računalnikov v bot-e, čeprav imajo le-ti naloženo vrhunsko protivirusno zaščito z najnovejšimi popravki. Prav zato so bot-i in predvsem botnet omrežja tako nevarna, saj že v rokah posameznikov ali majhnih skupin postanejo nevarno orožje, ki lahko povzroči ogromno škodo tako posameznikom kot organizacijam ali celo državam. Botnet omrežija ne predstavljajo samo neposrednih groženj (kriminal, DDoS napade, generiranje nezaželene pošte), ampak lahko kot celota ustvarijo izjemno računalniško moč, ki jo je možno izkoristi v različne namene. Povsem možno je, da se s pomočjo milijonske množice računalnikov izvede kriptoanaliza močnih kriptirnih algoritmov, ki predstavljajo trd oreh tudi za najhitrejše superračunalnike. Države, ki si ne morejo privoščiti superračunalnikov (npr. embargo), lahko s pomočjo botnet omrežij izvedejo potrebne izračune za simulacijo procesov pri izdelavi atomskega orožja. Korporacije lahko izkoristijo botnet omrežja za preučevanje potrošniških navad in izdelavo statističnih podatkov o profilih potencialnih potrošnikov, posamezna podjetja pa lahko celo vplivajo na iskalnike (Google, Yahoo, Bing) in si s tem povečujejo možnost obiskov. Tako okuženi računalniki predstavljajo precej trd oreh za antivirusne programe, saj njihovo učinkovito delovanje sloni na prepoznavanju „prstnih odtisov“ zlonamerne programske kode, ki jo lahko botnet administratorji na okuženih računalnikih stalno spreminjajo. Zato običajno antivirusni programi postanejo učinkoviti šele, ko se administratorju botnet-a popolnoma onemogoči nadzor nad njegovim botnet omrežjem.

1.5.1 Botnet omrežje Mariposa Eden izmed najnaprednejših odkritih botnet omrežij je Mariposa7, katerega soavtor je bil tudi 23 letni bivši študent mariborski računalniške fakultete z nazivom Iserdo8. To omrežje je povezovalo preko 12 milijonov okuženih računalnikov po vsem svetu, največjo nevarnost tega omrežja je bila možnost selektivne izbire okuženih računalnikov, na katere se je lahko poljubno naložila in izvedla nova zlonamerna programska oprema (Thompson M., 2009). S tem je bila administratorju botnet omrežja dana možnost, da je lahko poljubno spreminjal in nadgrajeval funkcionalnost obstoječe škodljive programske škode, s tem pa še dodatno otežil učinkovito delovanje protivirusne zaščite. Administrator je lahko arbitrarno pošiljal ukaze vsem okuženim računalnikom, vsem okuženim računalnikom v izbrani državi ali pa celo samo individualnim računalnikom. Zlonamerna programska koda Maripose se je lahko širila preko P2P omrežij, preko IE6 varnostnih lukenj, preko USB ključkov ali preko okuženih spletnih strani, na katere so MSN uporabnike preusmerjale preko povezav. Zato programsko kodo, ki je ustvarila botnet omrežje Mariposa, ne moremo klasificirati niti kot virus, niti kot črv niti kot trojanski konj, saj je lahko administrator

5 Beseda bot je okrajšava besede robot in predstavlja programske aplikacije, ki izvajajo avtomatizirana opravila. 6 Ker uporabniki popolnoma ne morejo kontrolirati tako okuženih računalnikov, se jih je oprijel vzdevek army. 7 Mariposa v španskem jeziku pomeni metulj. 8 Iserdo brano z desne proti levi je odresi. Gorazd Praprotnik Računalniške komunikacije in omrežja II poljubno določil način širjenja škodljive programske kode. S tem se je bistveno povečala možnost širjenja okužb tudi na računalnikih, opremljenih s protivirusno zaščito. Administratorji botnet omrežja Maripose, ki so se imenovali DDP skupina9, so omrežje Maripose uporabljali za namestitev dodatne škodljive programske kode na že okužene računalnike kot npr. napredne zapisovalnike vnosov tipkovnice (keyloggers), bančne trojance (), itd. Tako pridobljene informacije (ukradene številke bančnih in kreditnih kartic ter gesla za njih) so prodajali, hkrati pa so tudi prodajali nadzor nad posameznimi deli botnet omrežja, omogočali namestitev orodnih vrstic (toolbars) na okužene računalnike ter se ukvarjali z manipuliranjem iskalnikov (Google). Posamezniki iz DDP skupine so komunicirali z okuženimi računalniki s pomočjo kriptiranih ukazov, ki jih je bilo izjemno težko zaznati, še težje pa razvozlati, kar je še dodatno oteževalo njihovo odkrivanje. Poleg tega so se v omrežje povezovali preko anonimnih VPN10 povezav in šele napaka enega izmed glavnih akterjev je privedla kriminaliste do njegove identitete. Izkazalo se je, da skupina kriminalcev, ki je upravljala z botnet omrežjem Mariposa, ni posedovala veliko računalniškega znanja, ampak je te usluge preprosto kupila „na trgu“ od Iserda. Glede na njegovo starost lahko z veliko verjetnostjo zaključimo, da tudi Iserdo ni vrhunski strokovnjak, ampak verjetno le nadarjen programer, ki je spretno izkoristil že obstoječa orodja za izdelavo škodljivih programskih kod in jih zelo uspešno dopolnil. Kljub temu, da so pomladi leta 2010 Iserda aretirali in ugasnili nadzorne računalnike omrežja Mariposa, so leto kasneje strokovnjaki podjetij Unveillance in Panda odkrili še obsežnejše botnet omrežje imenovano Metulji (Bardin J. 2011). Botnet Metulji naj bi bilo do sedaj največje odkrito botnet omrežje, saj v njem nezavedno sodeluje več deset milijonov okuženih računalnikov, ki se nahajajo v najmanj 172 državah . Strokovnjaki podjetja Unveillance so celo ocenili, da je velikost botnet omrežja Metulji še enkrat večja od botneta omrežja Mariposa. Botnet omrežje Metulji je zgrajeno s pomočjo izboljšanega orodja za izdelavo zlonamerne programske kode - Butterfly Bot Kit (znano tudi pod imeni Palevo, Pilleuz in Rimecud), ki ga je izdelal in tržil Iserdo (Andlovič A., 2011). Poleg omrežja Metulji obstaja kar nekaj botnet omrežij, ki so bila zgrajena s pomočjo orodja Butterfly Bot Kit (npr. EvilFistSquad) . Pri odkrivanju novih botnet omrežij, ki so bila zgrajena s pomočjo omenjenega orodja, predvsem pa pri iskanju njihovih administratorjev, oblastem zelo pomaga seznam kupcev, ki ga je Iserdo natančno vodil pri svojem „poslovanju“. Čeprav je kakovost večina obstoječe zlonamerne programske kode že kar na zavidljivi ravni, je za njo značilno predvsem evolucijsko napredovanje kakovosti, saj je v največ primerih razvoj temeljil na posameznikih, ki so obstoječa znanja in izvorno kodo, pridobljeno na Internetu, počasi dopolnjevali s svojimi novimi idejami, izdelano škodljivo programsko kodo pa so zopet objavili na internetnih straneh. Poleg skoraj neizčrpnih virov znanja pa Internet omogoča tudi enostavno povezovanje, komuniciranje in izmenjavo informacij med hekerji po vsem svetu. Tipičen primer evolucijskega izboljšanja zlonamerne programske kode je botnet omrežje TDL4.

1.5.2 Botnet omrežje TDL4 Kot je razvidno iz same oznake botnet omrežja, je TDL4 že četrta generacija škodljive programske kode, ki se je prvič pojavila v letu 2008 (Soumenkov I., 2011). Njeni avtorji so programsko kodo postopoma izboljševali do te mere, da je TDL4 postala ena izmed najbolj izpopolnjenih zlonamernih programskih kod, ki je veliko strokovnjakov iz področja IKT varnosti presenetila predvsem s svojo trdoživostjo in odpornostjo na protivirusno zaščito. TDL4 za svoje prikrivanje uporablja celo vrsto naprednih metod, ki mu omogočajo učinkovito izogibanje protivirusnim

9 DDP - Días de Pesadilla (dnevi nočnih mor) 10 Navidezno privatno omrežjeVPN - Virtual Private Network Gorazd Praprotnik Računalniške komunikacije in omrežja II zaščitam, ki deluje na podlagi odkrivanja prstnih odtisov programske kode in na podlagi heurističnega ter proaktivnega odkrivanja. Programska koda TDL4 vsebuje tudi zavidljivo protivirusno programsko zaščito, ki ji omogoča zaznavanje in brisanje velikega števila konkurenčne škodljive programske kode. Poleg onemogočanja konkurence, TDL4 z brisanjem ostale škodljive programske kode preprečuje upočasnjeno delovanje okuženega računalnika in s tem poskuša odvrniti uporabnikovo pozornost, ki bi se povečala zaradi sumljivega delovanja računalnika. TDL4 se od starejših verzij loči predvsem z lastnim kriptirnim algoritmom, ki je nadomestil RC4 11 kriptirni algoritem, namenjen komunikaciji med okuženimi računalniki in kontrolnim računalnikom. S tem se je še bolj otežilo sledenje komuniciranju med administratorjem in okuženimi računalniki, ki je že tako ali tako zapleteno zaradi uporabe P2P komuniciranja. Zaradi svoje trdoživosti se je botnet omrežju TDL4 oprijelo ime „neuničljivo botnet omrežje“.

1.5.3 GhostNet - uporaba botnet omrežij kot orodje za vohunjenje Internet je idealno orodje za vodenje vohunske dejavnosti, botnet omrežja pa predstavljajo tudi učinkovito orožje za pridobivanje informacij raznim tajnim službam in organizacijam, ki se ukvarjajo s podobnimi dejavnostmi. Primer napredne zlonamerne programske kode je GhostNet, ki je v letu 2009 okužil računalnike v vsaj 103 državah (Moore M., 2009). Programska koda GhostNet je bila izdelana izključno za namene vohunjenja in je bila oblikovana za napade na računalnike, ki so se nahajali v pomembnih ministrstvih in ambasadah. S pomočjo vtihotapljene programske kode so napadalci imeli celo možnost daljinskega vklopa vgrajenih mikrofonov in kamer. Primer omrežja GhostNet je tudi demonstriral, da je skoraj nemogoče izslediti takšne napadalce, še težje pa je napade dokazati. Tudi strokovnjaki, ki so analizirali omrežje GhostNet, so morali na zahtevo Republike Kitajske umakniti obtožbe, da so avtorji botnet omrežja GhostNet iz Kitajske.

11 RC4 je najbolj razširjen način tekočega šifriranja podatkov (stream chipper) in je uporabljen tudi v popularnem varnostnem protokolu Secure Sockets Layer (SSL) Gorazd Praprotnik Računalniške komunikacije in omrežja II

1.5.4 Mobilni botnet Hitri razvoj mobilnih naprav je v zadnjih letih omogočil hiperprodukcijo zmogljivih prenosnih naprav, ki zaradi relativno nizkih cen postajajo vse bolj dostopne širokim množicam. Na trgu se že več kot leto pojavljajo mobilni telefoni z dvojedrnimi procesorji z delovnimi takti, ki že dosegajo in presegajo frekvenco 1GHz. Še ne dolgo tega so procesorje podobnih zmogljivosti nameščali v osebne računalnike. Podjetje IDC, ki se ukvarja z analiziranjem trgov, ocenjuje, da bo v letu 2011 prodaja pametnih telefonov dosegla število 472 milijonov enot, v letu 2015 pa pričakujejo že skoraj milijardo prodanih telefonov (IDC Press release, 2011). Milijardne številke prodanih mobilnih telefonov pomenijo množico potencialnih žrtev, na katere bodo ciljale razne skupine nepridipravov. Mobilni telefoni zaradi svoje narave predstavljajo pri nepridipravih še večje poželenje kot osebni računalniki, saj vsebuje bistveno več osebnih in občutljivih podatkov. Mobilni telefoni poleg možnosti telefoniranja opravljajo vse več funkcij in za marsikaterega uporabnika postajajo mobilniki prave osebne denarnice, ki bolj ali manj prevzemajo vlogo kreditnih kartic. Predvsem mlajša generacija uporabnikov vse bolj namesto osebnih računalnikov uporablja pametne mobilne telefone za dostop do Interneta in njihovih priljubljenih socialnih omrežij. Pametni mobilni telefoni postajajo pomembno središče življenja mlajših generacij, s tem pa tudi bogat vir osebnih informacij o njihovih lastnikih. Pametni mobilni telefoni so še bolj kot osebni računalniki tarča napadov zlonamerne programske kode zaradi njihovega osnovnega namena – omogočanja telefonskih pogovorov. Okuženi telefoni lahko s pomočjo botnet omrežij postanejo idealne prisluškovalne naprave, saj lahko napadalec lastnikovim pogovorom prisluškuje tudi na povsem drugem koncu sveta. Ker ima večina pametnih telefonov vgrajen GPS, lahko napadalec brez težav ugotovi tudi točno lokacijo telefona. Tako postajajo botnet omrežja pametnih telefonov idealno orodje za vohunjenje in krajo identitete. Ker ima lahko vsak še tako skrbno načrtovan sistem svoje hibe, ima težave z varnostjo tudi najnovejši operacijski sistem za mobilne telefone Android12. Čeprav je bil zasnovan na osnovi preizkušenega in varnega operacijskega sistema Linux in je bilo vloženo veliko truda za doseganje visokih varnostnih standardov in potrebne robustnosti, so strokovnjaki hitro odkrili kar nekaj varnostnih lukenj, ki so jih s pridom izkoristili programerje zlonamerne programske kode. Pri osebnih računalnikih se običajno varnostne luknje operacijskih sistemov krpajo s popravki, ki jih lahko uporabniki v obliki nadgradenj operacijskega sistema (Service Pack) brezplačno naložijo na svoj računalnik. Kljub velikemu številu različnih vrst škodljive programske kode, se je pri osebnih računalnikih izkazalo, da je nalaganje varnostnih popravkov in sprotno obnavljanje protivirusnih programov dovolj učinkovita zaščita pred večino zlonamerne programske kode. Prav raznovrstnost obstoječih mobilnikov, kot na primer tistih, ki imajo naložen OS Android ali virtualni računalnik J2ME13, je izpostavila velik varnosti problem pametnih mobilnih telefonov, saj za večino omenjenih mobilnikov velja praktična popolna nezmožnost nadgrajevanja operacijskega sistema in s tem nalaganje varnostnih popravkov. Zaradi hude konkurence obstaja na trgu množica različnih modelov, podjetja pa so prisiljena v stalno proizvajanje novih in novih modelov, ki zastarajo že v nekaj mesecih. Predvsem zaradi nujnih posebnih prilagoditev posameznemu modelu ima praktično skoraj vsak telefon svojo verzijo operacijskega sistema, kar do skrajnosti oteži nadgrajevanje operacijskega sistema z varnostnimi popravki. Telefoni brez varnostnih popravkov pa so lahka tarča hekerjev, ki hitro izkoristijo obstoječe varnostne luknje pri širjenju svoje zlonamerne programske kode.

12 Android je odprtokodni operacijski sistem za mobilne naprave (mobilniki, tablični računalniki), ki ga je na osnovi programske kode Linux izdelalo podjetje Google. 13 J2ME je virtualni stroj (virtual machine), ki omogoča mobilnikom poganjanje Java ME programov (J2ME igrice). J2ME je izdelalo podjetje Sun, ki ga je leta 2010 prevzelo podjetje Oracle. Gorazd Praprotnik Računalniške komunikacije in omrežja II

Ker so pametni mobilniki relativno malo časa na trgu, je pri uporabnikih zavest o nujnosti njihove zaščiti s protivirusnimi programi veliko manjša kot pri uporabnikih osebnih računalnikov, zato je tudi procent uporabe protivirusnih programov za zaščite pametnih mobilnikov veliko manjši kot pri osebnih računalnikih. Velika večina uporabnikov se ne zaveda, da so pametni mobilniki pravzaprav majhni osebni računalniki in da prav tako potrebujejo podobne zaščitne ukrepe. Zaradi nezmožnosti nadgrajevanja operacijskih sistemov in pomanjkanja protivirusne zaščite na svetu obstaja ogromno število nezaščitenih mobilnikov, ki predstavljajo veliko potencialno nevarnost tako njihovim lastnikom, kot tudi drugim uporabnikom Interneta (npr. DDoS napadi). Najnevarnejša zlonamerna programska koda je seveda tista, ki mobilnike spremeni v bot-e in s tem napadalcem omogoča ne samo kriminalna dejanja, ampak tudi dejanja, ki posegajo na področja ogrožanja nacionalnih varnosti.

1.5.5 Botnet omrežja kot orožje Jonny Ryan14 v svojem članku „I-vojna“ v Reviji NATO opredeljuje i-vojno kot obliko bojevanja, ki poteka izključno po Internetu (Ryan J., 2007). V nasprotju z ameriškim konceptom kibernetske vojne ali kitajskim konceptom informacijske vojne, v kateri sprte strani uporabljajo predvsem svojo lastno vojaško infrastrukturo, se v i-vojni uporablja vsa razpoložljiva telekomunikacijska in informacijska infrastruktura, ne glede na to, kje je locirana oziroma komu pripada. Na udaru je predvsem slabo vzdrževana in nezadostno zavarovana informacijska infrastruktura, največkrat domača računalniška oprema, ki je v lasti gospodinjstev, saj se za varnost te računalniške opreme nameni najmanj sredstev in naporov. Kompromitirani računalniki, ki „nezavedno“ sodelujejo v takšni vojni, se lahko nahajajo po vsem svetu, zato je „bojevanje“ proti njim oteženo, saj napadene države običajno nimajo vzvodov, s katerimi bi onemogočili množico dislociranih napadalcev. Za i-vojno je značilno predvsem to, da jo lahko sprožijo celo posamezniki ali zainteresirane skupine, saj za se takšen način bojevanja ne potrebuje veliko materialnih in energetskih virov, ampak predvsem znanje. Zato je takšno orožje idealno za teroristične skupine, katerih cilj je predvsem povzročitev čim večje škode. Kot primer i-vojne avtor Ryan v članku navaja val napadov porazdeljene zavrnitve storitve – DDoS15, ki so se dogajali nekaj mesecev leta 2007 v Estoniji. DDoS napadi so bili izvedeni s pomočjo množice okuženih računalnikov, ki so s svojimi zahtevami po storitvah popolnoma preplavili pomembne estonske strežnike, tako da niso zmogli več reagirati na legitimne zahteve njihovih uporabnikov. S tem je bila poleg moralne škode povzročena velika gospodarska škoda, saj je estonsko gospodarstvo zelo odvisno od internetnih storitev, predvsem od internetnih bančnih transakcij. Tudi v luči napadov na Estonijo so se obrambni ministri držav članic NATO na srečanju oktobra 2007 dogovorili o pripravi skupne kibernetske obrambne politike. Maja 2008 je NATO v Estoniji ustanovili center CCDCOE16 (NATO news, 2008), ki bo skrbel za izdelavo obrambne politike in doktrine kibernetskega bojevanja, izobraževanje in usposabljanje kadrov, izboljšanje kibernetske varnosti, itd. Kljub burni reakcija organizacije NATO, je težko takšne DDoS napade označiti kot vojno, tudi izraz bojevanje verjetno ni najbolj primeren in bi še najbolje ustrezal izraz delovanje. DDoS napadi, ki jih generirajo botnet omrežja, so za napadene internetne strani in njihove uporabnike zelo neprijetni in lahko, kot je bilo videno v Estoniji, povzročijo ogromno gospodarsko škodo. Obramba pred takšnimi napadi ni več v domeni posameznikov, ampak je dolžnost držav, da

14 Jonny Ryan je raziskovalec na univerzi Cambridge in je avtor knjige „A History of the Internet and the Digital Future“. 15 DDoS - Distributed Denial of Service. 16 CCDCOE - Cooperative Cyber Defence Centre of Excellence. Gorazd Praprotnik Računalniške komunikacije in omrežja II se temeljito pripravijo na takšne situacije. Čeprav omenjeni incident razen gospodarske škode ni pustil večjih posledic, je vseeno nakazal problematiko s katero se bodo države in državljani v prihodnosti vse bolj srečevali. Zaradi vse večje uporabe sodobnih tehnologij, ki temeljijo na konceptu „Računalništvo v oblakih“17, postaje celotna družba vse bolj odvisna od zanesljivosti internetnih povezav, saj se vse več delovnih procesov tako v gospodarstvu kot negospodarstvu popolnoma zanaša na storitve, ki jih preko Interneta ponuja računalništvo v oblakih. S tem postaja celotna družba vse bolj ranljiva predvsem na DDoS napade, ki jih lahko povzročijo milijoni okuženih računalnikov lociranih po vsem svetu. Žal se pri uvajanju koncepta „Računalništvo v oblakih“ zaradi kratkovidnih ekonomskih interesov posveča premalo pozornosti glede zaščite pred temi in podobnimi napadi, hkrati pa se na Internetu prosto pojavljajo vse bolj napredna orodja za kreiranje škodljivih kod.

17 Termin „Računalništvo v oblakih“ (Cloud computing) se nanaša na uporabo in dostopnost do računalniških resursov preko interneta. Gorazd Praprotnik Računalniške komunikacije in omrežja II

2. Požarni zid Požarni zid imenujemo varnostne izdelke, katerih namen je preprečevanje neavtorizirane komunikacije preko mrežnih povezav. To nalogo opravljajo tako, da na podlagi danih pravil dovoljujejo ali preprečujejo omrežni promet. Omrežni promet lahko tudi kriptirajo in dekriptirajo ali maskirajo in posredujejo (proxy).

Požarni zidovi nižjega cenovnega razreda so največkrat pojavljajo kot programska oprema, ki jo namestimo na računalnik, in so namenjeni osebni uporabi. Strojne ali kombinirane izvedbe požarnih zidov običajno spadajo v višji cenovni razred in so namenjene predvsem podjetjem, prednost pred programskimi rešitvami pa je v hitrosti obdelave prometa in s tem omogočajo večjo odzivnostjo.

Požarne zidove največkrat srečamo pri zaščiti naprav, ki so direktno priključene na internet (predvsem osebni računalniki) in za zaščito zasebnih omrežij (največkrat intranet).

Slika 1.Strojna izvedba požarnega zidu (vir: http://www.vicomsoft.com/learning-center/firewalls/)

2.1 Vrste požarnih zidov

2.1.1 Paketni filter (Packet Filtering Firewall) Paketni filter preverja vsak prispeli paket, ki ga lahko na osnovi postavljenih pravil sprejme ali zavrne. Deluje v omrežnem sloju (Network Layer), zato lahko sprejemajo ali zavračajo omrežni promet na osnovi: • IP naslova sprejemnika ali oddajnika • protokola (TCP, UDP, ICMP) • številke vrat sprejemnika ali oddajnika • ICMP tipov in kod • zastavic v TCP zaglavju • smeri prometa Večina paketnih filtrov deluje tako, da procesirajo trenutni promet in si ne zapomnijo nobenih Gorazd Praprotnik Računalniške komunikacije in omrežja II informacij o predhodnem prometu. Poleg tega paketni filtri ne preverjajo vsebine paketov, ampak samo podatke, ki so zapisani v zaglavju. Prednosti paketnih filtrov: • visoka prepustnost • nizka cena • zelo so primerni za upravljane prometa • podpirajo skoraj vse vrste storitev (ftp, telnet, itd) Slabosti paketnih filtrov: • dovoljujejo direktne povezave • v kompleksnih okoljih postane upravljane zapleteno • ne ponujajo overjanja (user avtentication)

2.1.2 Aplikacijski požarni zid (Application gateway) Aplikacijski požarni zid je sistem, v katerega storitev je predvidena s procesi, ki upravljajo celotno TCP zvezo. Deluje na nivoju aplikacijske plasti. Glavna prednost takšnega pristopa je, da lahko vsebuje znanja o različnih aplikacijah in protokolih (FTP, DNS, itd.) in ima zato možnost nadzora in kontrole tudi nad vsebino mrežnega prometa, lahko pa celo zazna nepravilne protokole ali nenormalna obnašanja standardnih protokolov, s katerimi želijo vsiljivci vdreti v sistem. Ta vrsta požarnega zidu se smatra kot najvarnejši tip požarnega zidu. Aplikacijski požarni zidovi so kompleksnejši in dražji od paketnih filtrov, njihova največja slabost pa je, da lahko povzročajo težave pri uporabi novejših in nestandardnih protokolov (npr. VoIP, video konference, itd).

2.1.3 Požarni zid na nivoju voda (Circuit-Level Firewalls) Požarni zid na nivoju voda deluje tako, da preverja veljavnost povezave preko niza nastavljivih pravil. V primeru, da povezava izpolnjuje postavljene kriterije, se vzpostavi seja in prenos brez nadaljnjega preverjanja podatkov, saj se smatra, da je bila povezava vzpostavljena s preverjenim virom. Požarni zid lahko v tem primeru samo še kontrolira recimo čas povezave. Slabost takšnih požarnih zidov je, da delujejo na transportnem sloju, zato zahteva preprogramiranje transportne funkcije, kar negativno vpliva na delovanje in zmogljivost omrežja. Druga slabost je zahtevnejša namestitev in njihovo vzdrževanje.

2.2 Konfiguracija požarnih zidov

2.2.1 Zaščita omrežja z enim požarnim zidom V primeru uporabe samo enega požarnega zidu, se celotno omrežje (strežniki in uporabniki) skrije za požarnim zidom. Strežniki so v tem primeru zaščiteni navzven, vendar niso zaščiteni pred uporabniki istega omrežja. Ker lahko pridejo napadi tudi s strani uporabnikov (zavestno, okuženi računalniki uporabnikov), takšna rešitev ni najboljša. V takšnih konfiguracijah se največkrat uporabi paketni požarni zid. Gorazd Praprotnik Računalniške komunikacije in omrežja II

Slika 2. Zaščita omrežja z enim požarnim zidom (vir: http://www.vicomsoft.com/learning-center/firewalls/)

2.2.2 Zaščita omrežja z dvema (ali več) požarnima zidovoma Za boljšo varnost se uporablja večje število požarnih zidov. Pogosto se uporablja konfiguracija z dvema požarnima zidovoma, ki skupaj tvorita demilitirazirano cono (DMZ - Demilitarized Zone). S takšno konfiguracijo se lahko strežniki (spletni, poštni, FTP, VoIP) zaščitijo tako s strani zunanjih vdorov, kot s strani uporabnikov. S tem dosežemo večjo varnost, hkrati pa tudi kompleksnost omrežja. Za večjo varnost se za DMZ uporabljata požarna zidova različnih proizvajalcev, saj se s tem zmanjša možnost, da bi se ista varnostna luknja pojavila na obeh požarnih zidovih. Ker mora potencialni napadalec omrežja obiti oba požarna zidova, tako zaščito imenujemo globinska obramba (defense in depth).

Slika 3. Dva požarna zida tvorita DMZ (vir: http://www.vicomsoft.com/learning-center/firewalls/) Gorazd Praprotnik Računalniške komunikacije in omrežja II

3. Navidezno zasebno omrežje (Virtual Private Network) Navidezno zasebno omrežje (VPN) lahko definiramo kot storitev različnih tehnologij, ki omogočajo medsebojno povezovanje omrežnih naprav preko omrežij, ki niso zavarovana ali zaupanja vredna. Takšna omrežja so običajno javne telekomunikacijske infrastrukture kot npr. Internet. VPN omrežja omogočajo varen dostop dislociranih uporabnikov ali poslovnih enot preko javne infrastrukture do želenih informacijskih virov. Značilnosti VPN omrežij so: • veliko število organizacij in uporabnikov uporablja isto fizično infrastrukturo javnega omrežja Prednosti VPN omrežij: • manjši stroški – v primerjavi z najetimi vodi so lahko prihranki ogromni • lažje upravljanje, ker VPN omrežje temelji na javnem omrežju, ki ga upravlja in vzdržuje operater, vzdrževati je potrebno le VPN tehnologijo, kar je občutno enostavnejše in cenejše. • poenostavi topologijo omrežja • omogoča razširljivost s pomočjo tunelov, če se število lokacij poveča. Pri rešitvi z najetimi vodi vsaka nova lokacija potrebuje novo najeto linijo. Slabosti VPN omrežij: • varnost – ker se zasebni podatki prenašajo preko javnih povezav, je zelo pomembno, da se pripravi VPN omrežij skrbno načrtuje varnost delovanja celotnega sistema. Odvisno od občutljivosti podatkov je potrebno izbrati tehnologije zaščite (npr. kriptiranje), ki zagotavljajo zahtevan nivo varovanja podatkov. • kakovost povezav - ker je kakovost odvisna od javne infrastrukture, kjer se kapaciteta povezav deli med uporabniki, je kakovost praviloma manjša od kakovosti najetih vodov, predvsem pa se spreminja kapaciteta VPN povezav, saj uporabniki ne morejo vplivati na priključitev ostalih uporabnikov in njihovo uporabo kapacitet, kar povzroča različno obremenjenost javne infrastrukture. Zato nekateri operaterji ponujajo zagotovljeno kapaciteto VPN povezave, ki pa so praviloma dražje. • težavno zagotavljanje konstantne kakovosti prenosa • interoperabilnost • veliko število različnih VPN tehnologij • nedorečenost standardov • posledično težave povezovanja VPN produktov različnih proizvajalcev • zanesljivost – zanesljivo delovanje VPN omrežij je popolnoma odvisno od zanesljivosti delovanja infrastrukture, ki jo potrebuje za svoje delovanje.

3.1 Tuneliranje Pri tuneliranju VPN kreira navidezni tunel preko javnega omrežja in tako poveže dve toči med seboj. Tuneliranje je torej proces, ki na oddajni strani skrije (enkapsulira) izvirne IP pakete v nove pakete in jih pošlje preko javnega omrežja do sprejemnika, kjer se izvirni paketi izločijo. Proces tuneliranja se sestoji iz procesa enkapsulacije, usmerjanja in dekapsulacije. V primeru, da se tuneliranje kombinira z zaupnostjo podatkov, se izvirni IP paketi pred enkapsulacijo kriptirajo in po Gorazd Praprotnik Računalniške komunikacije in omrežja II dekapsulaciji dekriptirajo. S tem se prepreči možnost prisluškovanja vsebini VPN prometa v javnem omrežju.

Slika 4.VPN povezava med dvema omrežjema (vir: http://www.windowsecurity.com/articles/vpn-options.html)

3.2 IPSec VPN (IP Security) Tehnologija IPSec VPN temelji na principu ovijanja (encapsulation) in šifriranja podatkov, ki jih prenašamo preko IP omrežij. Deluje v omrežnem sloju OSI modela in samo v omrežjih, ki temeljijo na IP tehnologiji. IPSec ima dva načina delovanja: • transportni način je osnovni način delovanja, kjer se šifrira samo koristna vsebina (tovor) IP paketa, ne pa tudi njegova glava. Transportni način se uporablja pri medsebojni komunikaciji dveh gostiteljskih sistemov (host to host transport mode). • tunelski način se uporablja za kreiranje VPN povezav v komunikaciji omrežje na omrežje ( network-to-network communications), v komunikaciji gostitelj na omrežje (host-to- network) in komunikaciji gostitelj na gostitelj (host-to-host ). V tem načinu se celotni IP paketi kriptirajo, overijo (authentication) in nato enkapsulirajo v nov IP paket z novo IP glavo. IPSec VPN uporablja veliko proizvajalcev, ki ponujajo strojne rešitve VPN povezav.

3.3 PPTP VPN (Point-to-Point Tunneling Protocol) PPTP protokol je modifikacija standardnega internetnega PPP protokola (Point-to-Point Protocol), ki omogoča prenos IP paketov preko serijskih povezav. PPTP protokol uporablja iste tipe overjanja (authentication) kot PPP (PAP, SPAP, CHAP, EAP) in deluje v povezovalnem sloju. Uporablja protokol ovijanja GRE (Generic Routing Encapsulation) in deluje z dvema TCP povezavama (podatkovna in krmilna povezava). PPTP preko javnega omrežja vzpostavi tunel, vendar ne kriptira podatkov. Za varne VPN povezave se PPTP protokol kombinira s MPPE protokolom (Microsoft Point-to-Point Encryption). Ker imajo Windows in Mac OS X klienti že vgrajeno programsko opremo za povezavo s PPTP strežniki, pri implementaciji PPTP VPN ni potrebno skrbeti instalacijo PPTP odjemalcev, za ostale vrste OS pa je potrebno predhodno namestiti PPTP odjemalce. Prednost PPTP VPN je v hitrosti delovanja, slabost pa je v težavah pri prehodih skozi požarni zid. Gorazd Praprotnik Računalniške komunikacije in omrežja II

3.4 L2TP VPN (Layer 2 Tunneling Protocol) L2TP protokol je razvilo podjetje Microsoft v sodelovanju s podjetjem Cisco. L2TP protokol združuje funcije PPTP protokola s funkcijami protokola L2F (Layer 2 Forwarding), ki ga je razvilo podjetje Cisco. Prednost L2TP pred PPTP protokolem je, da deluje tudi v omrežjih, ki ne uporabljajo IP tehnologije kot ATM, X.25. Deluje v povezovalnem sloju. Ker L2PT protokol ne zagotavlja varnostnih storitev, ga je mogoče uporabljati v kombinaciji z IPSec protokolom, ki L2TP tunelom zagotovi overjanje, zaupnost in celovitost.

3.5 SSL VPN (Secure Socket Layer) Tehnologija SSL VPN temelji na protokolu SSL, ki je že vgrajen v vsakem brskalniku, zato VPN klienti ne potrebujejo posebnih namestitev (clientless solution). Ker deluje v transportnem sloju, se izvaja tuneliranje do aplikacij, zato imajo uporabniki preko SSL VPN dostop samo do izbranih aplikacij na strani VPN strežnika in ne do njegovega celotnega omrežja. S tem se izboljša varnost omrežja na starani strežnika, poleg tega administratorji VPN omrežja lažje nastavijo uporabnikom pravice dostopa do različnih aplikacij. Slabost SSL VPN omrežja je, da lahko uporabniki uporabljajo samo omrežne aplikacije. Sicer je možno preko SSL VPN omrežja uporabljati tudi druge aplikacije, vendar takšno omrežje zaradi dodatne programske opreme izgubi glavno prednost – enostavnost. Druga slabost je, da uporabniki ne morejo izkoriščati virov oddajnega omrežja (datotečne strežnike, tiskalnike) in ne morejo uporabljati VPN za izmenjavo datotek.

Slika 5. Gostitel na omrežje VPN (host-to-network) (vir: http://www.windowsecurity.com/articles/vpn-options.html) Gorazd Praprotnik Računalniške komunikacije in omrežja II

4. Protokol omrežnega časa NTP (Network Time Protocol) Čeprav ima vsak računalnik integrirano uro, ki deluje relativno točno s pomočjo kvarčnega kristala, pri povezovanju več računalnikov v eno omrežje pride do dileme, kateri računalnik ima pravilno nastavljen čas. Verjetnost, da se med seboj ure razlikujejeo, je izredno velika, saj je natančnost delovanja vgrajenih kvarčnih ur odvisno od mnogo dejavnikov (npr. temperatura računalnika), tako da se mesečne napake merjenja časa lahko gibljejo tudi reda minut. V primeru, da želimo uskladiti ure na vseh računalnikih v omrežju, potrebujemo poseben mehanizem, s pomočjo katerega nastavimo uro na izbranih računalnikih s točno določenim referenčnim časom.

4.1 Usklajevanje ure Pri opravilih, kjer v omrežju sodeluje več računalnikov hkrati, se potreba po usklajevanju ure izkaže predvsem pri izvedbi takšnih opravil, ki vsebujejo neko časovno komponento, ali pa so časovno odvisna. Ker se opravila opravijo distribuirano, torej vsak sodelujoči računalnik opravi le del posla, je zelo pomembno, da imajo ti računalniki usklajene ure, saj se s tem zagotovi časovna verodostojnost in neodvisnost vsakega dela posla, ne glede na računalnik, na katerem se je del posla izvršil. Opravila, kjer nujno potrebujemo usklajevanje ure, so lahko:

• beleženje transakcij v porazdeljenih podatkovnih bazah • beleženje naročil za nakupe in prodajo na borzah ter avkcijskih hišah • časovne značke pri varnem podpisovanju in žigosanju dokumentov • usklajevanje izvajanja radijskih in televizijskih programov • kontrola zračnega prometa • sinhronizacija multimedijskih naprav pri videokonferencah, • sinhronizacija in razvrščanje dogodkov v interaktivnih (porazdeljenih) simulacijah • spremljanje, meritve in nadzor omrežij • zgodnja detekcija okvar na mrežni infrastrukturi • zaznavanje, lociranje ter javljanje vdorov in napadov • porazdeljene omrežne igre

Najpogostejši mehanizem, ki se uporablja pri usklajevanju ur računalnikov povezanih v omrežje, je NTP protokol.

4.2 NTP protokol Protokol omrežnega časa (NTP - Network Time Protocol) je sistem za sinhronizacijo fizičnih ur računalnikov in ostalih aktivnih omrežnih naprav, ki so med seboj povezana v omrežje. NTP protokol je že leta 1980 začel razvijati Dave L. Mills, profesor univerze v Delawaru in z njim dosegel visoko natančnost usklajevanja ure med računalniki v omrežju. S tem je postavil osnovne principe in temelje, po katerih še danes deluje večina algoritmov za časovno usklajevanje računalnikov. Od takrat se je NTP arhitektura konstantno razvijala in se s tem uspešno prilagajala novim izzivom. Tako je NTP protokol eden izmed najstarejših še prisotnih protokolov v internetu.

Trenutno sta na voljo dve osnovni različici: NTPv4 in poenostavljena različica protokola omrežnega časa SNTP (Simple Network Time Protocol). NTPv4 je že četrta različica protokola NTP in se od tretje razlikuje predvsem zaradi podpore IPv6 standardu. Gorazd Praprotnik Računalniške komunikacije in omrežja II

Pomembne lastnosti NTP protokola so: • NTP protokol omogoča sinhronizacijo ur aktivnih omrežnih naprav • NTP protokol omogoča sinhronizacijo v razprostranih omrežjih (WAN) z natančnostjo nekaj sto milisekund • NTP protokol omogoča sinhronizacijo v lokalnih omrežjih (LAN) z natančnostjo nekaj milisekund • Ob uporabi natančnega zunanjega vira (GPS, cezijeva ura) pa se lahko giblje natančnost v lokalnih omrežjih celo v redu mikrosekund • NTP protokol podpira kriptografsko overjanje odjemalcev in strežnikov • Zanesljivost se zagotavlja z uporabo redundantnih strežnikov in redundantnih poti • NTP protokol ima vgrajene algoritme za: • zmanjševanje variacije • povprečenje signalov iz več virov • izločanje nepravilno delujočih strežnikov • Adaptivni algoritem za časovne in frekvenčne korelacije fizične ure kompenzira variacije signala iz omrežja in variacije frekvence oscilatorja

4.3 Povezovanje NTP strežnikov in odjemalcev Aktivne omrežne naprave, ki uporabljajo NTP protokol, se med seboj povezujejo hierarhično v več nivojev, kjer vsak nivo definira razdaljo od referenčne ure in s tem natančnost in točnost časovnega vira. Nivoji se imenujejo Stratum-i, in so označeni s številkami od nič naprej, pri tem pa Stratum 0 pomeni najvišji referenčni nivo. Kljub temu, da se z višanjem nivoja povečuje »razdalja« do referenčne ure, ni nujno, da številke nivojev predstavljajo kvaliteto ali zanesljivost NTP časovnih virov na tem nivoju. Povsem možno je, da so naprave na nivoju Stratum 3 kvalitetnejši od naprav na drugem nivoju.

4.3.1 Hierarhija NTP strežnikov in odjemalcev Primarni NTP strežniki se sinhronizirajo z referenčnimi etaloni preko radijskih, satelitskih, modemskih povezav ali drugih povezav. Sekundarni strežniki in in njihovi odjemalci pa se sinhronizirajo s primarnimi strežniki preko hierarhične mreže.

Slika 6. Hierarhično povezovanje aktivnih omrežnih naprav s pomočjo NTP protokola (Vir: Wikipedija) Gorazd Praprotnik Računalniške komunikacije in omrežja II

4.3.1.1 Stratum 0 Na tem nivoju se uporabljajo natančni in točni (referenčni) časovni viri kot npr. atomske (cezijeve, rubidijeve), GPS ali radijske ure. Največkrat Stratum 0 naprave zaradi varnosti niso priključene na omrežje, ampak imajo neposredne povezave s primarnimi strežniki (npr. preko serijskih vrat RS - 232 z uporabo signala Pulse per second).

4.3.1.2 Stratum 1 Stratum 1 predstavljajo primarni strežniki, ki so neposredno vezani na referenčne vire. Zato jih tudi imenujemo časovni strežniki (time servers), saj kot strežniki preko NTP protokola zagotavljajo časovne storitve Stratum 2 strežnikom, ki jim pošiljajo zahteve po informaciji referenčnega časa.

4.3.1.3 Stratum 2 Stratum 2 predstavljajo strežniki nižjega nivoja, ki preko NTP protokola strežnikom Stratum 1 pošiljajo zahteve po informaciji referenčnega časa. Stratum 2 strežnik je lahko vezan tudi na več primarnih strežnikov z namenom pridobiti najkvalitetnejšo informacijo o točnem in natančnem času, saj ima NTP algoritem možnost izločanja Stratum 1 strežnika, ki ima očitne napačne informacije. Poleg tega so lahko Stratum 2 strežniki vezan tudi med seboj in s tem zagotavljajo bolj stabilno in robustno časovno informacijo za vse naprave v nivoju. Stratum 2 strežniki zagotavljajo časovno informacijo Stratum 3 napravam.

4.3.1.4 Stratum 3 Podobno kot Stratum 2 delujejo tudi Stratum 3 strežniki, ki so preko NTP protokola prav tako lahko vezani na več Stratum 2 strežnikov in med seboj. Kot taki lahko zagotavljajo časovni signal napravam v nižjih Stratum nivojih (do 16 nivojev). Maksimalno število Stratum-ov (odvisno tudi od verzije NTP protokola) je 256.

4.4 Načini delovanja NTP protokola NTP protokol lahko deluje v vlogi:

• strežnik – kot referenco ponuja svoj čas odjemalcem • odjemalec – pri referenčnih NTP strežnikih poizveduje po referenčnem času • brvi ali peera – primerja svoj čas s časi ostalih brvi, dokler skupaj ne pridejo do dogovora o »pravem« času, po katerem se sinhronizirajo.

Vsak NTP servis/daemon je lahko prevzame vlogo NTP odjemalca, NTP strežnika ali NTP brvi.

4.5 Delovanje NTP strežnika Strežnik NTP lahko deluje v treh načinih:

• unicast • anycast • multicast.

V načini unicast in anycast sinhronizacija časa deluje po sistemu strežnik/odjemalec, kjer uporabnik pošlje zahtevo NTP strežniku. NTP strežnik na zahtevo odgovori s sporočilom, ki vsebuje referenčni čas, ki jih uporablja odjemalec za sinhronizacijo časa. V načinu multicast pa Gorazd Praprotnik Računalniške komunikacije in omrežja II

NTP strežnik v rednih določenih časovnih presledkih objavlja referenčni čas.

4.6 SNTP - Simple Network Time Protocol Zaradi velikih zahtev po natančnosti usklajevanja časa aktivni omrežnih naprav v omrežju je NTP protokol kompleksen in je implementacija NTP protokola relativno zahtevna. V primeru, da visoka sinhronizacija učinkovitosti NTP protokola ni potrebna , se lahko uporabi Simple Network Time Protocol (SNTP) protokol, ki je je poenostavitev NTP protokola. Sporočilni format protokola SNTP je skoraj identičen protokolu NTP, vendar ne vsebuje kompleksne podprograme, ki so zasnovani za ohranjanje zelo natančno sinhronizirano časa. SNTP protokol je namenjen predvsem računalnikom z omejeno procesorske močjo, kot so mikro-kontrolerji ali nadzore naprave. Gorazd Praprotnik Računalniške komunikacije in omrežja II

5. Strežniška programska oprema Strežniško programsko opremo (strežniški operacijski sistem oz. strežniški program) imenujemo programe, ki uporabnikom zagotavljajo dostop do storitev, ki ustrezajo specifičnim potrebam posameznega odjemalca (arhitektura odjemalec/strežnik). Strežniška programska oprema največkrat deluje na specializiranih računalnikih, ki so optimizirani za zagotavljanje točno določenih storitev. Takšne računalnike imenujemo strežniki, saj na njih deluje samo kot strežniška programska oprema in se jih ne uporablja v druge namene (npr. odjemalec ali delovna postaja). Pomembne lastnost strežnikov so varnost, zanesljivost in hitrost delovanja.

5.1 Arhitektura odjemalec/strežnik (Client/Server) Arhitektura odjemalec/strežnik deluje na principu, da odjemalec strežniku poda zahtevo za določeno storitev, le-ta pa storitev izvede in vrne odgovor odjemalcu. Takšna arhitektura povsem prevladuje v lokalnih omrežjih (LAN), najpogosteje pa jo srečamo tudi v internetu.

5.1.1 Strežniki Strežnik je računalnik, na katerega je naložena strežniška programska oprema. Strežnik je lahko sestavljen tudi iz večjega števila večuporabniških računalnikov z deljenim (shared) spominom. Naloga strežnika je delitev procesiranja, podatkov in svojih virov med enim ali več odjemalci, ki so skupaj s strežnikom vezani v računalniško omrežje. Če je strežniki strogo namenski in zaradi optimizacije in učinkovitosti opravlja samo eno nalogo, se imenuje specializirani strežnik. Ker je lahko okolje heterogeno (različni operacijski sistemi), poteka komunikacija med strežniki in odjemalci s pomočjo dobro definiranih nizov standardnih Aplikacijskih programskih vmesnikov (API - Application Programming Interface) in klicev oddaljenih procedur (RPC - Remote Procedure Call).

Za zanesljivo delovanje mora imeti strežnik naslednje lastnosti:

• strežnik mora vedno delovati • strežnik mora imeti statičen IP naslov • strežnik mora imeti rezervirane številke vrat • strežnik mora omogočati hkratno komunikacijo z večjem številom odjemalcev • strežniki lahko podpirajo razširljivost (farme strežnikov)

5.1.1.1 Programska oprema strežnikov Strežniška programska oprema največkrat vsebuje strežniški operacijski sistem, na katerem se izvajajo strežniški programi, ki so lahko v že sklopu operacijskega sistema, odvisno od potreb pa je možno namestiti tudi ostale strežniške programe. Strežniški programi lahko tečejo v ozadju kot servisi/demoni (sevices/daemons). Poleg tega se na strežnikih običajno izvajajo tudi programi za kontrolo in vzdrževanje strežnika, lahko pa tudi omrežja, na katerega je priključen strežnik. Na strežnikih so običajno nameščeni tudi programi za povečanje varnosti in zanesljivosti (npr. programi za arhiviranje). Gorazd Praprotnik Računalniške komunikacije in omrežja II

5.1.1.2 Strojna oprema strežnikov Poleg programske opreme se strežniki od namiznih računalnikov tudi razlikujejo v strojni opremi, ki je zahtevnejša in s tem tudi dražja. Zahteve o vrsti in moči strojne opreme so predvsem odvisne od: • namembnosti strežnika, kjer ima npr. video strežnik veliko višje strojne zahteve kot poštni strežnik • konteksta uporabe, kjer npr. manjša podjetja potrebujejo manj zahtevne strežnike • vrste in števila programov, ki se izvajajo na strežniku. Tako mora strojna oprema strežnikov zadostovati visokim sistemskim zahtevam: • velika procesorska moč • podpora večjedrnim procesorjem • velika količina pomnilnika • velika hitrost pomnilnika • visoka razpoložljivost (npr. redundantne diskovne enote – RAID, redundantno napajanje, izmenljivi diski – hot swappable, itd).

5.1.2 Odjemalci Odjemalec je največkrat enouporabniška delovna postaja, kjer preko uporabniškega vmesnika (GUI – Graphichal User Interface) in posebne programske opreme (npr. aplikacija) uporabniku nudi možnost komuniciranja s strežnikom. Odjemalec mora s pomočjo te programske opreme, ki je lahko tudi v sklopu operacijske sistema, pravilno oblikovati zahtevke strežniku. Najpogostejše lastnosti odjemalcev so: • komuniciranje s strežniki • lahko so samo občasno povezani v omrežje • lahko imajo dinamične IP naslove • med seboj ne komunicirajo neposredno. Z razvojem Interneta in hitrih povezav, se vse bolj pojavljajo trendi, da posebno programsko opremo nadomešča brskalnik, njene funkcije pa se izvajajo na strežniku (npr. računalništvo v oblakih). Vendar takšen koncept za svoje delovanje potrebuje stalno povezavo s strežnikom in šele novejši standardi (HTML5) poskušajo zagotoviti podporo delovanja odjemalcev brez stalne internetne povezave.

5.1.3 Klasična dvoslojna arhitektura odjemalec/strežnik (2-Tier) Klasična dvoslojna arhitektura je sestavljena iz odjemalca in strežnika. Odjemalec pošilja zahteve za določene storitve, strežnik pa te storitve izvrši s lastnimi resursi, kar pomeni, da strežnik ne kliče drugih aplikacij, da bi izvedel zahtevano storitev. Gorazd Praprotnik Računalniške komunikacije in omrežja II

Slika 7. Klasična dvonivojska arhitektura

5.1.4 Troslojna arhitektura odjemalec/strežnik (3-Tier) V sodobnem komunikacijskem svetu postaja dvoslojna arhitektura vse bolj okorela, saj v ospredje vse bolj prihajajo arhitekture, kjer se storitve zaradi boljše preglednosti in enostavnosti ločujejo v specializirana opravila. Tako se je uveljavil troslojni model, kjer so opravila ločena na predstavitveno logiko, ki skrbi za komunikacijo z uporabniki, poslovno logiko, ki skrbi za izvedbo zahtevanih storitev ter podatkovno bazo, ki skrbi za optimalno oskrbo z zahtevanimi podatki. Tako v troslojni arhitekturi nastopajo: • odjemalec (predstavitvena logika) - računalnik, ki podaja zahtevke za storitve in je opremljen z uporabniškim vmesnikom (spletni brskalnik) • aplikacijski strežnik (poslovna logika) – vmesna programska oprema (middleware), ki opravlja zahtevane storitve tako, da kliče druge strežnike (npr. SQL strežnik) • podatkovni strežnik (baza podatkov) – SQL strežnik, ki servira aplikacijski strežnik z zahtevanimi podatki

Slika 8. Tronivojska arhitektura Gorazd Praprotnik Računalniške komunikacije in omrežja II

Pri dvoslojni arhitekturi sta poslovna logika in baza podatkov združeni v skupnem nivoju, kjer deluje samo en strežnik. Pri troslojni arhitekturi pa se poslovna logika funkcionalno loči od baze podatkov in s tem pridobimo večjo stopnjo prilagodljivosti, večjo stopnjo varnosti in boljše zmogljivosti, saj ločene strežnike lažje optimiziramo.

5.1.5 Štiri in večslojna arhitektura odjemalec/strežnik Pri štiri ali večslojni arhitekturi storitve ločimo na štiri ali več nivojev, da še bolj specializiramo delovanje posameznih storitev. Tako ima model štirislojne arhitekture naslednje funkcionalne rešitve: • odjemalec (predstavitvena logika) • spletni strežnik (portal) • aplikacijski strežnik (poslovna logika) • podatkovni strežnik (baza podatkov)

5.1.6 Prednosti in slabosti arhitekture odjemalec/strežnik Koncept arhitekture odjemalec/strežnik se je izkazal kot zelo uspešna rešitev, zato se je razširil na vseh področjih informacijskih tehnologij. Informacijske rešitve, ki temeljijo na tej arhitekturi, so učinkovite in zelo enostavne za vzdrževanje. Ker so podatki centralno shranjeni, je lahko njihovo varovanje enostavno in učinkovito, poleg tega pa se lahko centralizirane podatke enostavno osvežuje. Slabost te arhitekture je v reševanju problematike povečanega števila odjemalcev in zagotavljanja storitev tudi pri izpadu katerega od strežnikov.

5.2 Varnost strežniških sistemov Ker običajno strežniki vsebujejo „atraktivne“ informacije, so veliko bolj izpostavljeni napadalcem kot osebni računalniki. Zato je strežniškim sistemom potrebno posvetiti veliko večjo pozornost na področju varnosti, kot pri osebnih računalnikih. Varnost strežniških sistemov delimo na: • varnost omrežja • varnost strežnikov • varnost programske opreme • varnost aplikacij • varnost osebja

5.2.1 Varnost omrežja

5.2.1.1 Zaščita proti DDoS (Distributed Denial-of-Service) napadom Cilja DDoS napadov je prekinitev strežnikovih aktivnosti na način, da se strežnik popolnoma preplavili z zahtevami za storitev. Tako DDoS napadi onemogočajo reagiranje na legitimne zahteve strežnikovih uporabnikov. Za zaščito pred temi napadi se uporablja tehnologija, ki se samodejno sproži takoj, ko se prične DDoS napad. Filtrirni sistemi lahko zaustavijo skoraj ves goljufiv promet in s tem zagotavljajo reagiranje strežnikov na legitimne zahteve. Gorazd Praprotnik Računalniške komunikacije in omrežja II

5.2.1.2 Zaščita s požarnim zidom - Firewall Da se doseže minimalno varnost, je obvezno potrebno strežnike pred zunanjim svetom zaščititi s požarnim zidom. S požarnim zidom je priporočljivo zaščititi strežnike tudi pred uporabniki v LAN (WAN) omrežju (DMZ).

5.2.1.3 Sistem za odkrivanje omrežnih vdorov Sistemi za odkrivanja omrežnih vdorov morajo zagotavljati hitro, natančno in vsestransko zaščito proti ciljanim napadom, nepravilnostim v prometu, neznanim črvom, vohunskim programom, omrežnim virusom, sleparskim aplikacijam in drugo škodljivo programsko kodo.

5.2.2 Varnost strežnikov

5.2.2.1 Standardizacija strojne opreme Za zagotavljane visokih varnostnih standardov in kakovostno podporo je potrebno standardizirati nakupe in implementacijo uporabljene strojne opreme (klasifikacija proizvajalcev, klasifikacija strojne opreme, klasifikacija izvajalcev).

5.2.2.2 Sistemi za odkrivanje vdorov Zaradi vse bolj množične uporabe orodij, ki so zmožna obiti zaščitne sisteme kot so požarni zidovi, je nujno potrebno implementirati tudi sisteme za odkrivanje vdorov, ki se osredotočajo na nadzor in analiziranje notranjosti računalniškega sistema. Takšni sistemi pomagajo pri odkrivanju in določanju sprememb na sistemih in konfiguracijskih datotekah. Predvsem hitro odkrivanje in odpravljanje sprememb zmanjšuje tveganje za morebitne nastale poškodbe sistemov.

5.2.3 Varnost programske opreme

5.2.3.1 Posodabljanje, popravljanje hroščev in varnostni popravki Ker večina napadov (razen zero-day) izkorišča že znane napake (luknje) v programski opremi ali konfiguracijske napake, imajo proizvajalci programske opreme že izdelane popravke, ki odpravljajo možnost takšnih napadov. Vendar je potrebno takšne popravke namestiti v čim krajšem času, saj se s tem lahko prihrani marsikatera nevšečnost. Če je le mogoče, se strežnike registrira za samodejno posodabljanje, tako da so vedno zagotovljeni zadnji varnostni popravki .

5.2.3.2 Periodični varnostni pregledi Periodični pregledi zagotovijo višjo stopnjo varnosti programske opreme, saj omogočajo odkrivanje varnostnih napak, ki se jih ob vsakodnevnem rokovanju spregleda.

5.2.3.3 Testni postopki pred nadgradnjo Nadgradnja programske opreme lahko povzroči neljube dogodke (izguba podatkov, popolna odpoved strežnikov, itd.), zato je potrebno pred nadgradnjo skrbno preveriti kakovost nove programske opreme, postopke nadgradnje in možne posledice v primeru napak.

5.2.4 Varnost aplikacij Gorazd Praprotnik Računalniške komunikacije in omrežja II

5.2.5 Varnost osebja Z raznimi postopki preverjanja osebja se poskuša minimizirati varnostno tveganje, ki ga lahko povzroči človeški faktor. Takšna preverjanju morajo obvezno biti v skladu z veljavno zakonodajo (npr. varstvo osebnih podatkov).

5.3 Osnovni strežniški programi Glede na namen uporabe delimo strežnike med naslednje:

• aplikacijski strežniki so namenjeni centraliziranem izvajanjem logike (npr. poslovni procesi). Aplikacijske strežnike najpogosteje uporabljajo tanki odjemalci (thin client) kot npr. internetni brskalniki. • datotečni strežniki so namenjeni shranjevanju in upravljanju dostopov do datotek na centralni lokaciji. Omogočajo tudi enostavnejše izvajanje varnostih kopij datotek. • strežniki za tiskanje omogočajo vsem računalnikom v omrežju upravljanja dostopov in tiskanje na tiskalnike, ki so povezani v omrežje. • infrastrukturni strežniki skrbijo, da omrežje in naprave med seboj lahko komunicirajo, skrbijo za preverjanje identitete uporabnikov ter naprav ipd. • DB strežniki imajo nameščene baze podatkov in sisteme za upravljanje teh baz.

Nekaj osnovnih strežniških programov:

• datotečni strežniki • poštni strežniki • FTP strežniki • spletni strežniki • DNS strežnik • Proxy strežnik • Fax strežnik • komunikacijski strežnik • igralniški strežnikih • multimedijski strežnik • VoIP strežnik Gorazd Praprotnik Računalniške komunikacije in omrežja II

6. Industrijske mreže Industrijske mreže so digitalna omrežja, ki se uporabljajo v različnih sistemih avtomatizacije. Porast avtomatizacije različnih procesov, predvsem industrijskih, je povzročila veliko potrebo po standardizaciji, ki omogoča povezave povsem različnih avtomatiziranih naprav v omrežja z namenom medsebojne komunikacije in izmenjave podatkov. Industrijske mreže se uporabljajo predvsem v industriji, vse bolj pa se uveljavljajo tudi na drugih področjih, kot avtomatizacija zgradb (proizvodne in poslovne zgradbe, domovi, letališča, bolnice, pošte, itd.), avtomatizacija prometa (predvsem cestni in železniški promet) in avtomatizacija prevoznih sredstev (letala, avtomobili, vlak, itd.).

6.1 Specifične zahteve industrijskih mrež Ker se industrijske mreže uporabljajo pri avtomatizaciji različnih procesov (proizvodni procesi, promet, itd.), se njihovo delovanje razlikuje od klasičnih pisarniških omrežij, saj delujejo v zahtevnejših okoljih, poleg tega pa morajo zadostiti dodatnim kriterijem (varnost, zanesljivost, delo v realnem času, odpornost, itd.), ki so za klasična omrežja skoraj povsem irelevantna. Najpogostejše zahteve, ki jih morajo industrijske mreže izpolniti so:

 komunikacija v realnem času spada med najpomembnejše pogoje, ki jih morajo industrijske mreže izpolniti, saj zagotavljajo krmiljenje procesov, ki imajo določene časovne okvirje, ki se jih za uspešno izvedbo ne sme preseči. Ker so nekateri procesi celo življenjsko pomembni (npr. promet), so lahko posledice tudi katastrofalne. Da lahko deluje komunikacija v realnem času, se v omrežju prenašajo manjše količine podatkov (majhni paketi), lahko celo samo vrednosti parametrov (spremenljivk).  zanesljiva komunikacija, ki jo dosežemo izbiro zanesljivih elementov in povezav, predvsem pa jo izboljšamo s pomočjo redundantnih povezav. Kot primer si lahko predstavljamo tovarno, kjer ima omrežje drevesno strukturo. Izpad samo ene povezave lahko povzroči celo izpad celotnega proizvodnega obrata, kar pri veliki produkciji pomeni ogromne izgube.  razširjeno temperaturno območje delovanja je pomembno predvsem v okoljih, kjer ne moremo vplivati na temperaturo. Običajna omrežja delujejo predvsem v pisarnah, kjer s pomočjo temperaturne regulacije (ogrevanje in hlajenje) dosežemo človeku primerno delovno temperaturo (21oC), ki je za delovanje omreži neproblematična. Industrijska omrežja pa lahko uporabljamo v skrajno neprijaznih okoljih, kjer temperature dosegajo celo vrednosti od -40 oC do 70 oC.  robustnost industrijskih omrežij je potrebna predvsem zaradi neprijaznosti in zahtevnosti okolja delovanja, ki poleg odpornosti na ekstremne temperature lahko potrebujejo, odvisno od okolja, tudi naslednje lastnosti:

 odpornost na umazanijo (prah, pesek)  odpornost na vlažnost  temperaturne šoke  odpornost na visok ali nizek pritisk (višina)  odpornost na fizične kontakte (udarci, trenja)  odpornost na pospeške in pojemke  odpornost na vibracije  odpornost na hrup  odpornost na kislo ali bazično ozračje Gorazd Praprotnik Računalniške komunikacije in omrežja II

 odpornost na sol  odpornost na elektromagnetno sevanja  eksplozijsko varna izvedba

Zaradi dodatnih zahtev so izvedbe industrijskih mrež zahtevnejše in predvsem pa dražje od klasičnih pisarniških omrežij.

6.2 Hierarhična organizacija industrijskih sistemov Digitalizacija proizvodnih procesov (predvsem programabilni industrijski krmilniki) je omogočila velik korak pri modernizaciji industrijske proizvodnje, saj je omogočila učinkovito in fleksibilno avtomatizacijo proizvodnih procesov. Poleg neposrednega upravljanja proizvodnih procesov, digitalizacija teh procesov omogoča pridobivanje in obdelavo množice podatkov, ki se nanašajo tako na proizvodne procese, proizvodna sredstva, proizvodne produkte, kot tudi na delovne subjekte, ki sodelujejo v teh procesih. S pomočjo analize teh podatkov je možno natančno locirati neučinkovite procese, ki se jih fazi načrtovanja in testiranja ne predvidi, identificira ali zazna. Ker je avtomatizacija proizvodnih sistemov kompleksna, se jo organizira hierarhično v nivoje, kjer na vsakem hierarhičnemu nivoju pripada ustrezen komunikacijski nivo s svojimi zahtevami v komunikacijskem omrežju in vsak nižji je nivo podrejen višjemu nivoju. Industrijske mreže lahko na osnovi funkcionalnosti razvrstimo v več različnih kategorij:

• omrežje na nivoju naprav (Field level) - senzorji in aktuatorji • omrežje na kontrolnem nivoju (Control level) - kontrolna vodila • omrežje na informacijskem nivoju (Information level)

Slika 9. Hierarhična zgradba industrijskega omrežja (vir:S.Dijev, Industrial Networks for Communication and Control) Gorazd Praprotnik Računalniške komunikacije in omrežja II

6.3 Omrežje na nivoju naprav (Field level) Omrežje na nivoju naprav predstavlja najnižji nivo v hierarhiji avtomatizacije. Naloga naprav na tem nivoju je prenos podatkov med proizvodnjim produktom in tehničnimi procesi avtomatizacije. Komunikacija je največkrat izvedena na osnovi povezave točka-na-točko (point-to-point) . Omrežje na nivoju naprav je sestavljeno iz:

• podnivo elementov • podnivo strojev

6.3.1 Podnivo elementov (Podnivo senzorjev in aktuatorjev) Podnivo elementov vsebuje enostavne elemente, ki so nujno potrebni v posameznem avtomatiziranem proizvodnem procesu, da pretvarjajo fizične veličine v signale in obratno. Osnovni elementi na tem nivoju so senzorji in aktuatorji.

6.3.1.1 Senzorji Senzorji (tipala, odjemniki) so pripomočki, ki želene fizikalne veličine pretvorijo v obliko, ki je primerna za nadaljnjo obdelavo s pomočjo elektronskih vezji. Najpogostejše fizikalne veličine, ki jih spremljamo v okolju so svetloba, temperatura, tlak, pretok, sila, navor, hitrost vrtenja, pot pomika, kot zasuka, napetost, tok, štetje, itd.. Izhodni signal senzorjev so lahko v obliki električne napetosti, upornosti ali toka.

Slika 10. Senzorji za toploto, vlago, raztezanje in tlak (vir:http://colos1.fri.uni-lj.si/ERI/RAC_SISTEMI_OMREZJA/html/RSO-OKOLJE/Senzorji_aktuatorji.html)

6.3.1.2 Aktuatorji Tehnološki procesi se izvajajo s pomočjo izvršnih členov s katerimi je možno vplivati oziroma učinkovati na okolico (npr. ventili, lopute, elektromotorji z reduktorji, črpalke, ventilatorji, grelniki, itd.). Izvršne člene krmilimo s pomočjo aktuatorjev. Aktuator (pogon) je torej pretvornik, ki sprejme signal in ga pretvori v neko fizično dejanje, s katerim lahko krmilimo izvršni člen. Glede na uporabljeno tehnologijo so aktuatorji lahko:

• elektromotorni aktuatorji, ki so namenjeni za manjše in srednje navore (do 100Nm). So relativno poceni in enostavni za vzdrževanje, z njimi pa zelo težko realiziramo kvalitetni linearno regulacijo. Njihova prednost je, da ob izpadu električne energije ohranijo zadnji položaj. Gorazd Praprotnik Računalniške komunikacije in omrežja II

Slika 11. Elektromotorni aktuator (vir:http://colos1.fri.uni-lj.si/ERI/RAC_SISTEMI_OMREZJA/html/RSO-OKOLJE/Senzorji_aktuatorji.html) • elektropnevmatski aktuatorji omogočajo najkvalitetnejšo regulacijo ventilov in loput ter tehnološke zanesljive rešitve regulacije procesov.

Slika 12. Elektropnevmatski aktuator (vir:http://colos1.fri.uni-lj.si/ERI/RAC_SISTEMI_OMREZJA/html/RSO-OKOLJE/Senzorji_aktuatorji.html)

• elektrohidravlični aktuatorji omogočajo največje navore ali premične sile, hkrati pa nudijo tudi hitre odzive, zato jih pogosto srečamo v robotiki in avijoniki. Njihova slabost je težja distribucija hidravlične energije. • napetostno-frekvenčna regulacija asinhronskih električnih motorjev je primerna za krmiljenje motorjev, ki regulirajo ventilatorje in črpalke. Omogoča natančno krmiljenje, slabost pa so velike visokofrekvenčne motnje okolice.

6.3.2 Podnivo strojev Podnivo strojev vsebuje različne naprave in opremo, ki se lahko uporablja za proizvodnjo ali za upravljanje s proizvodi. Naprave na tem nivoju so v stalnem stiku s proizvodi, saj nekatere opravljajo transport izdelka, druge sodelujejo pri njegovi proizvodnji. Takšne naprave so lahko razni roboti (robotske roke, SCARA roboti, itd.), CNC stroji, pomični trakovi, itd. V teh napravah se največkrat nahajajo mikrokontrolerji, ki s pomočjo senzorjev in aktuatorjev nadzorujejo delovne procese.

Gorazd Praprotnik Računalniške komunikacije in omrežja II

6.3.3 Povezovanje elementov s kontrolnimi enotami

• Analogna tokovna krmilna zanka 4-20mA se lahko uporablja v primeru oddaljenega nazora ali krmiljenja naprave s pomočjo para vodnikov, preko katerega teče tok. Izvedba je zelo enostavna in omogoča konstanten tok v vsaki točki zanke, zato se jo lahko uporablja za večje razdalje. Zaradi svoje preprostost so sistemi z tokovnimi zankami enostavnejši za upravljanje od digitalnih vodil, saj je diagnosticiranje enostavnejše in ne potrebuje veliko znanja. Za sisteme z analogno tokovno zanko je značilno, da ima vsaka naprava ločeno povezavo do kontrolnega sistema. V industrijskih mrežah lahko srečamo tudi tokovne zanke 10–50 mA.

• Sistemi avtomatizacije na osnovi digitalnega vodila (FieldBus) so zasnovani na osnovi povezovanja naprav in kontrolnega sistema preko digitalnega vodila, ki je skupen za vse priključene naprave. Zato morajo imeti naprave vgrajene ustrezne komunikacijske vmesnike, ki jih priključimo na skupno vodilo.

6.3.4 Prednosti industrijskih mrež z digitalnimi vodili Čeprav je nadzor in krmiljenje naprav s pomočjo tokovnih zank enostavno, lahko postane celotnem sistem zaradi velikega števila krmilnih priključkov zelo kompleksen. Veliko število krmilnih priključkov zahteva tudi kompleksno ožičenje, ki hitro postane nepregledno in težavno za diagnosticiranje v primeru napak. Zato se v večjih industrijskih obratih vse bolj odločajo za izvedbo krmiljenja naprav preko digitalnih vodil. Glavne prednosti industrijskih mrež z digitalnimi vodili so: • manj strojne opreme • manjše število kablov in s tem preglednejše ožičenje • modularnost • enostavnejša konfiguracija • večja fleksibilnost • večja zanesljivost • enostavnejše vzdrževanje • digitalna povezava omogoča prenos večjega števila informacij o proizvodnih procesih nadzornemu in poslovnemu informacijskemu sistemu

6.3.5 Vrste digitalnih vodil V preteklih desetletjih se je razvilo ter standardiziralo veliko število digitalnih vodil in protokolov, ki jih uporablja industrija v svojih proizvodnih procesih. Ker so različni proizvajalci razvili standarde v različnih časovnih obdobjih za različne namene, je njihovo število precejšnje. Zaradi specifičnih zahtev v industrijskih procesih, je težko izbrati digitalno vodilo, ki bi bilo primerno v vseh situacijah, ampak je potrebno izbrati vodilo na osnovi kriterijev, ki omogočajo izbiro optimalne rešitve. Prav zato v praksi največkrat srečamo kombinirana omrežja. Gorazd Praprotnik Računalniške komunikacije in omrežja II

Slika 13. Kombinirana vodila (vir: http://www.hms.se/technologies/asi.shtml)

6.3.6 AS-I (Actuator Senzor Interface) AS-I je najpreprostejši protokol industrijskih mrež z digitalnim vodilom in je primeren za nižje nivoje industrijske avtomatizacije, saj je načrtovan tako, da je njegova implementacija enostavna in omogoča hitro instalacijo, učinkovito vzdrževanje in enostavno rekonfiguracijo. Čeprav ni tako univerzalen kot ostala vodila (FieldBus), je cenovno zelo ugoden in primeren za najnižji nivo industrijske avtomatizacije. AS-I vodilo je optimizirano za povezovanje binarnih senzorje in aktuatorjev (vklop/izklop) na omrežja višjega nivoja (npr. Profibus). Zgradba AS-I vmesnika je bolj podobna inteligentni formi ožičenja kot pravemu digitalnemu vodilu in ne more nadomestiti kompleksna omrežja, ampak omogoča izgradnjo cenovno ugodnih sistemov na nižjem nivoju avtomatizacije, predvsem pa je primeren za zelo neprijazna industrijska okolja. Za zagotavljanje kompatibilnosti so AS-I vmesniki cetrificirani s strani organizacije AS-International.

Slika 14. AS-I vodilo

AS-I vodilo v povezavi s PLC kontrolerjem deluje na principu master/slave (nadrejen/podrejen). Za Gorazd Praprotnik Računalniške komunikacije in omrežja II

AS-I vodilo je značilno, da se podatki in napetost prenašajo preko istega kabla, ki povezuje krmilnik (master) z največ 31 naprav (slave). Pri tem ima vsaka podrejena (slave) naprava do 4 vhode in 4 izhode. Vsaka podrejena (slave) naprava ima enovit naslov v območju od 1-31. Sporočila imajo fiksno dolžino 10 bitov (5 bit – naslov, 4 bit – podatek, 1 bit – pariteta). Nadrejena (master) naprava krožno poziva podrejene (slave) naprave.

Leta 1998 je objavljena AS-I specifikacija 2.11, ki omogoča priključitev 62 podrejenih (slave) naprav, vendar na račun enega izhodnega bita (4 vhodi in 3 izhodi). Najnovejša AS-I specifikacija 3.0 je bila objavljena 2005 in omogoča do 8 vhodov in izhodov.

Tip mreže Master/Slave komunikacijski sistem

Topologija Fleksibilna: linija, vodilo, zvezda, drevo Izvedba Poseben (rumen) neoklopljen kabel z dvema žicama z napajanjem 24V za prenos podatkov. Možnost tudi ločitve podatkov in napajanja za segmente do 100m in podalšanje preko repitorjev do 300m Hitrost prenosa podatkov 167 kBit/s Maksimalno število postaj 1 Master in do 62 Slave Podatki Vsak slave: 4 bit digitalni vhodni in 3 bit digitalni izhodni podatki Skupaj: Do 248 bit digitalnih vhodnih in 186 bit digitalnih izhodnih podatkov Enostavna master/slave komunikacija optimizirana za majhne količine podatkov z maksimalnim ciklom vodila 10ms Standard AS-International

Tabela 1. Tipična AS-I specifikacija naprave, ki jo izdeluje podjetje HMS Industrial networks (vir: http://www.hms.se/technologies/asi.shtml)

6.3.7 Profibus Profibus (Process Field Bus) je nastal leta 1989 kot rezultat nemškega raziskovalnega projekta na BMBF (Bundesministerium für Bildung und Forschung), ki ga je podprlo 21 nemških podjetij in inštitutov. Profibus je odprt standard na nivoju elementov (Field level) za aplikacije v proizvodnji in procesni avtomatizaciji, neodvisnost od proizvajalcev pa zagotavljata evropska standarda EN 50170 in EN 50254 ter mednarodna IEC 61158/ IEC 61784. Profibus je vodilni protokol industriskih omrežij v Evropi. Slabost standarda je pomanjkanje napajanja na vodilu in nekoliko višja cena napram konkurenčnim standardom.

6.3.7.1 Profibus DP (DistributedProcessing) Profibus DP je najpogostejši standard in je optimiziran za hitrost, učinkovitost in nizko ceno priključevanja. Prilagojen je predvsem za komunikacijo med sistemi avtomatizacije (PLC krmilniki) in distribuiranimi I/O perifernimi napravami. Fizično vodilo v DP omrežju ima nastavljivo hitrost med 9.6 kBit/s in 12 Mbit/s, lahko pa je izvedeno kot RS 485 ali optično vodilo. Gorazd Praprotnik Računalniške komunikacije in omrežja II

Deluje na principu master/slave komunikaciji, kjer je največkrat ena nadrejena (master) naprava (PLC krmilnik ali PC) in do 126 podrejenih (slave) naprav.

Slika 15. Izvedba industrijske mreže na osnovi DP vodila (vir: http://www.kollewin.com/blog/profibus-dp-master-simulator/)

Profibus DP podpira tudi multi-master povezavo, vendar lahko vsaka podrejena (slave) naprava pripada samo eni nadrejeni (master) napravi. To pomeni, da lahko vse nadrejene (master) naprave berejo podatke vseh podrejenih (slave) naprav, v podrejene (slave) napravo pa lahko zapisuje podatke samo nadrejena (master) naprava, ki ji tej podrejeni (slave) napravi nadrejena.

6.3.7.2 Profibus FMS (Field Message System) Profibus FMS standard je načrtovan kot univerzalni komunikacijski standard za različne komunikacijske naloge. FMS standard predvsem definira komunikacije med inteligentnimi napravami. Zato se večinoma uporablja kot multi-master komunikacijo na nivoju celice, kjer povezuje PLC krmilnike in kontrolne postaje (PC). Zaradi vse bolj ugodnejše uporabe TCP/IP komunikacij, FMS standard počasi izgublja na veljavi. Gorazd Praprotnik Računalniške komunikacije in omrežja II

Slika 16. Izvedba industrijske mreže na osnovi FMS vodila (vir: http://www.solutions4u-asia.com/pdt/GT/AdvSys/GT-AdvSys.html)

6.3.7.3 Profibus PA (Proces Avtomation) Profibus PA je bil predvsem razvit za delovanje naprav v eksplozivnih in nevarnih okoljih (Ex - območje 0 in 1). Fizična plast (konektorji in kabli) je izvedena v skladu s specifikacijo IEC 61158- 2, kar omogoča napajanje priključenih naprav preko vodila, pri tem pa nastali tokovi napajanja (0 - 20mA) ne smejo ustvariti pogoje, ki bi prevedli do eksplozije tudi v primeru okvare. Prav omejitev napajalnega toka omejuje maksimalno število priključenih naprav. Fizično vodilo v PA omrežju ima fiksno hitrost 31.25 KBit/s in mora biti vedno vezan na DP vodilo, saj za svoje delovanje potrebuje DP nadrejeno (master) napravo. Ker je PA protokol samo aplikacijski protokol, PA vodilo uporablja DP protokol za komunikacijo med napravami, hkrati pa DP vodilo kot hrbtenično omrežje, ki zagotavlja hitro komunikacijo do krmilnikov. PA omrežje je vezano na DP omrežje preko pretvornikov: • Coupler omogoča: • električno izolacijo med varnim segmentom vodila PA in DP • napaja segment PA vodila • pretvarja signale iz standarda RS 485 v IEC 61158-2 • adaptira hitrost prenosa podatkov (npr. 93.75 kBit/s v 31.25 kBit/s) Gorazd Praprotnik Računalniške komunikacije in omrežja II

Coupler deluje popolnoma transparentno (oddaja signale), zato DP in PA naprave ne smejo imeti identičnih naslovov. Vse naprave na PA vodilu delujejo kot DP naprave, zato je hitrost na DP vodilu fiksna.

• Link (Siemens) je inteligentni pretvornik, ki omogoča DP vodilu poljubne hitrosti v razponu od 9.6 Kbit/s in 12 Mbit/s. Takšno PA vodilo se smatra kot podrejena (slave) naprava v DP vodilu, zato ima PA vodilo svoj naslov in na vodilu deluje kot (nadrejena) master naprava, PA naprave pa uporabljajo podnaslove v okviru tega naslova. Maksimalno število takšnih naprav je 30.

Slika 17. Kombinacija vodil DP in PA (vir: http://www.smaruk.co.uk/profibus.asp)

6.4 Omrežje na kontrolnem nivoju Omrežje na kontrolnem nivoju služi predvsem prenosu programov, prametrov in podatkov. Prenosi se lahko vršijo tudi med proizvodnimi procesi, če le-ti omogočajo strojem kratke časovne intervale mirovanja. Nekateri majhni krmilniki celo nujno potrebujejo nalaganje podprogramov med posameznimi proizvodnimi cikli. Omrežje na kontrolnem nivoju se sestoji iz:

• podnivo proizvodnih celic (Cell level) • podnivo proizvodnih pogonov (Area level)

6.4.1 Podnivo proizvodnih celic (Cell level) Posamezna proizvodnja celica predstavlja skupino naprav in strojev, ki skupaj proizvajajo določen artikel. Vsaka naprava ali stroj v proizvodnem procesu tega artikla izvaja določeno nalogo. Proizvodnje celice so običajno tako konceptirane, da omogočajo veliko fleksibilnost proizvodnje in lahko na primer, odvisno od potreb, proizvajajo različne tipe nekega artikla. Na tem nivoju naprave in stroji ne komunicirajo med seboj, ampak celotno celico nadzoruje krmilnik celice, ki komunicira z vsako napravo. Krmilniki s posameznimi napravami ali stroji komunicirajo na dva načina: Gorazd Praprotnik Računalniške komunikacije in omrežja II

 primitivna komunikacija se uporablja za naprave in stroje, ki ne omogočajo izmenjave podatkov, saj ne vsebujejo zapletenejših vmesnikov, niti ne posedujejo dovolj procesorske moči za obdelavo podatkov. Komunikacija s krmilnikom poteka s pomočjo enostavnih handshake procedur.

 inteligentna komunikacija se izvaja med napravami in stroji, ki imajo vgrajene inteligentne vmesnike, ki omogočajo tudi kompleksnejše komunikacije.

V zadnjem času je na tem nivoju postal de facto standard Industrijski Ethernet, čeprav ne omogoča pravega komuniciranja v realnem času. Še vedno pa se na tem nivoju uporabljajo tudi nekatera Profibus vodila.

Za komunikacijo med računalniki, krmilniki celic (npr. PLC) in proizvodnimi stroji se največkrat uporablja specializirana programska oprema SCADA (Supervisory Control And Data Acquisition), ki omogoča povsem modularen pristop programiranja industrijskih procesov saj je konceptiran v smislu izgradnih blokov. Programska oprema SCADA se izvaja v centralnem računalniku in krmilnikih celic, s pomočjo naloženih gonilnikov pa omogoča komunikacijo z najrazličnejšimi tip naprav in strojev.

6.4.2 Podnivo proizvodnih pogonov (Area level) Podnivo proizvodnih pogonov je sestavljen iz gruč proizvodnih celic. Medtem ko so naprave na nivoju celic konceptirane v smislu aplikacijske funkcionalnosti, pa so naprave na podnivoju proizvodnih pogonov načrtovane v smislu priprave proizvodnih procesov, vklapljanja in izklapljanja proizvodnih strojev ter interveniranja v primeru kritičnih situacij. Na tem nivoju se tipično uporabljajo kontrolna omrežja, ki omogočajo tudi medsebojno P2P (peer to peer) komunikacije med kontrolnimi napravami, kot npr. PLC krmilniki, DCS sistemi (Distributed Control System), HMI (Human mMachine Interface) sistemi. Poleg kontrolna omrežja omogočajo nadzornikom tudi kontrolo nad izvajanjem procesov, logiranje dogodkov, koordinacijo in sinhronizacijo med proizvodnimi enotami in proizvodnimi celicami.

6.5 Omrežje na informacijskem nivoju (Information level) Omrežje na informacijskem nivoju je najvišji nivo v hierarhiji upravljanja in komunikacije v okviru avtomatizacije celotne proizvodnje posameznega podjetja. Naloga omrežja je povezovanje proizvodnih pogonov z centralnim upravljanjem in s tem omogoča nadzor in upravljanje celotne avtomatizirane proizvodnje v podjetju. Na tem nivoju deluje poslovna programska oprema kot npr. planiranje proizvodnih virov MRP (Manufacturing Resource Planing), inženirska programska oprema, programska oprema za optimizacijo proizvodnih procesov, itd. Na informacijskem nivoju običajno srečamo omrežja večjega obsega (npr. Ethernet WAN), preko prehodov (gateway) pa se lahko omrežja povezuje tudi z ostalimi industrijskimi mrežami.

6.6 Industrijski Ethernet Industrijski Ethernet označuje tehnologijo, izdelano na osnovi Ethernet standarda, ki je osredotočena na proizvodnjo, obdelavo in nadzor v industrijskem okolju. IE (Industrijski Ethernet) kompatibilne naprave se bistveno ne razlikujejo od klasičnih Ethernet naprav. IE naprave so zaradi neprijaznega okolja (vlaga, temperatura, umazanija, vibracije, elektromagnetni vplivi, itd.) izdelane tako, da zadostujejo specifikacijam zahtevnejših standardov. Tako imajo IE naprave predvsem robustnejša ohišja in robustnejše napajalnike, predvsem pa so zgrajene iz zanesljivejših elektronskih Gorazd Praprotnik Računalniške komunikacije in omrežja II komponent, ki izpolnjujejo strožje temperaturne, MTBF (Mean Time Between Failure) in EMI (Electro Magnetic Interference) zahteve. Pomembna razlika med klasičnim pisarniškim omrežjem in industrijskim omrežjem je v časovni kritičnosti informacij, ki potujejo po omrežju. Sekundne zakasnitve pri prenosu e-pošte med uslužbenci se skoraj ne opazijo, pri krmiljenju delovnega procesa (krmiljenje stroja, pakirna linija) pa zakasnitev nekaj sekund lahko privede do velikih težav, v problematičnih procesih pa celo do katastrofe.

Informacije, ki se prenašajo v industrijskem okolju lahko razdelimo na:

 časovno nekritična sporočila (explicit messaging) so informacije, ki se pojavijo v omrežju pri zajemanju podatkov s strojnega nivoja v informacijski sistem, pri administriranju krmilnih in podrejenih naprav (upload, download) ter nastale informacije pri uporabi diagnostičnih in pomožnih funkcijah.

 I/O povezave med nadrejenimi napravami (PLC krmilniki, PC) in izvršnimi enotami (digitalnimi in analognimi vhodno-izhodnimi enotami, HMI vmesniki, frekvenčnimi in servo pogoni, ventili itd.). Obseg informacij v teh povezavah je majhen, vendar se informacije pogostno izmenjujejo, do cilja pa morajo priti v najkrajšem času.

Ker je bil klasični (pisarniški) Ethernet načrtovan samo za učinkovito in poceni prenašanje časovno nekritična sporočil, se pojavijo težave pri implementaciji hitrih I/O povezav, saj je za Ethernet naprave značilno, da delujejo samostojno. Zato lahko pri istočasnem oddajanju paketov, na dveh ali večjem številu naprav, pride do trkov (kolizij). Teoretično celo obstaja možnost, da takšna komunikacija nikoli ne uspe. V praksi to pomeni, da čas, ki je potreben za izmenjavo paketa, ni (dovolj) predvidljiv. Zato za Ethernet protokol velja, da ni determinističen.

Da bi dosegli določeno stopnjo determinističnosti in s tem zanesljive in hitre I/O povezave, so proizvajalci začeli prilagajati in spreminjati Ethernet standard, prav tako pa tudi višje nivoje OSI (TCP/UDP/IP). Z modifikacijo teh standardov so proizvajalci izdelali kvazi-deterministično omrežje, kjer še vedno obstajajo majhni časovni okvirji, znotraj katerih prenosi paketov niso natančno določeni, vendar so ti časovni okvirji konstantni in dovolj majhni, da lahko zadostijo večini proizvodnih procesov v realnem času. Vendar takšen standard ni združljiv s standardnimi Ethernet in TCP/IP napravami, ampak pri povezovanju s klasičnim pisarniškim omrežjem potrebujejo posebne pretvornike.

Lastnosti, ki so značilne za pisarniški Ethernet:

• majhna zanesljivost zaradi enojnih povezav • namestitev samo v zaprtih prostorih • večinoma samo zvezdne (drevesne) topologije • prenosi samo velikih paketov, ni potrebe po delu v realnem času • običajno temperaturno območje • standardno napajanje 230VAC • prostostoječi • nerobustna ohišja Gorazd Praprotnik Računalniške komunikacije in omrežja II

Industrijski Ethernet:

• velika zanesljivost zaradi redundančnih povezav in redundančnih napajanj • namestitev v industrijskih halah ali na prostem IP67 • možnost vezav v vse vrste topologij • prenaša se veliko majhnih paketkov, potreba po delu v realnem času • razširjeno temperaturno območje • industrijsko napajanje 24VDC • montaža na DIN letev • robustna ohišja

Slika 18. Klasična zgradba industrijskega omrežja (vir: http://www.elektrospoji.si)

6.6.1 EtherNet/IP (Industrial Protocol) Protokol EtherNet/IP je bil razvit leta 1990 s strani podjetja Rockwell Automation (korporacija Rockwell's industrial Ethernet networking solutions). Protokol EtherNet/IP je nastal tako, da se je združil protokol CIP (Common Industrial Protocol), ki je tudi osnova ControlNet in DeviceNet protokolov, s TCP/IP nivojem. Standard EtherNet/IP je popolnoma združljiv s standardnim Ethernetom, zato lahko EtherNet/IP oprema deluje na istem omrežju kot ostale običajne naprave: računalniki, tiskalniki, routerji, periferija. Standard je odprt za vse proizvajalce, Rockwell Automation pa trži EtherNet/IP naprave pod imenom Allen-Bradley.

6.6.2 Prednosti Etherneta pred ostalimi industrijskimi mrežami • nižji stroški načrtovanja zaradi razširjene homogene standardne infrastrukture • potrebno je manj ekspertnega znanja (dobro poznan standard) • hitra izvedba brez posebnosti • minimalni stroški rezervnih delov • nadzor in vzdrževanje mreže na daljavo • spremljanje dogajanja s strojem – predvidevanje okvar Gorazd Praprotnik Računalniške komunikacije in omrežja II

• nadzor in vzdrževanje mreže na daljavo • različni mediji za prenos podatkov: bakreni vodi, optični vodi ter brezžični prenos. • velike hitrosti prenašanja podatkov: 10Mbit/s, 100Mbit/s, 1Gbit/s, 10Gbit/s. • enostavno povezovanje spodnjega nivoja z zgornjim. • diagnostika preko interneta/intraneta • vsi veliki proizvajalci so že razvili svoje Ethernet protokole: Modbus/TCP, EtherNet/IP, ProfiNet, FF HSE, Powerlink, ...

Slika 19. Uporaba IE za celotno industrijsko omrežje (vir: http://www.elektrospoji.si) Gorazd Praprotnik Računalniške komunikacije in omrežja II

7. Faze načrtovanja in izvedbe pri vzpostavitvi omrežja V sodobnih organizacijah postajajo računalniška omrežja eden izmed ključnih elementov pri uspešnem poslovanju, saj postajajo skoraj vsi delovni procesi vse bolj odvisni od informacijskih in komunikacijskih tehnologij. Posledica visoke odvisnosti je, da uspešnost (storilnost) podjetja postaja vse bolj odvisna od zanesljivosti in zmogljivosti računalniških omrežij, predvsem dostopnosti do Interneta. Da se v podjetju zgradi optimalno računalniško omrežje, ki popolnoma zadosti vsem trenutnim potrebam in zahtevam, je potrebno pred izgradnjo omrežja izvesti premišljeno načrtovanje le-tega. Slabo načrtovano omrežje lahko povzroči preobremenjenost omrežja in s tem slabše delovanje, večje stroške vzdrževanja, nepotrebne zmogljivosti, itd.

7.1 Planiranje Pri planiranju omrežja je potrebno izvesti predpripravo, kjer je potrebno zbrati vse podatke, ki so potrebni za vzpostavitev omrežja v podjetju. Pripravi se tudi finančna konstrukcija, pridobi se podatke o potencialnih dobaviteljih, identificira se stanje v podjetju, predvsem identificira delovne procese v podjetju, ki bodo v veliki meri odločali o zgradbi in delovanju omrežja.

7.2 Analiza zahtev Predvsem jasno definirane zahteve so predpogoj za uspešno izbiro pravih rešitev, ki vodi do optimalne in učinkovite vzpostavitve omrežja. Poleg preučitve zahtev je potrebno preučiti tudi možnosti: • finančna konstrukcija (koliko je na voljo investicijskih sredstev) • časovni okvir izvedbe • znanje in izkušnje ljudi, ki bodo namestili in konfigurirali opremo Pomembni vidiki, ki jih je potrebno upoštevati pri analizi zahtev: • obstoječe omrežje in obstoječe aplikacije • podpora obstoječi opremi • povezljivost do Interneta • omejitve, ki jih določa naslovni prostor • podpora IPv6 • protokoli, ki tečejo na mreži • zahteva za neprekinjeno poslovanje (redundantni sistemi) • ožičenje • zahtevane omrežne storitve (npr. brezžično omrežje) • varnostne zahteve • razpoložljivost, zanesljivost • kapaciteta, hitrost, zakasnitev prenosa • zahteve za neprekinjeno poslovanje med uvajanjem nove mreže Gorazd Praprotnik Računalniške komunikacije in omrežja II

7.3 Načrtovanje omrežja Pri načrtovanju omrežja moramo izdelati: • izbira elementov na nivoju fizične plasti (konektorji, kabli, optika, itd.) • fizična topologija • način ožičenja omrežja • logična topologija - naslovni prostor • IP naslovna shema • informacije VLAN • izbira omrežnih naprav • spisek naprav (vrsta, lokacija) • konfiguracije naprav

7.4 Izvedba Že pri planiranju se določi izvajalce (najem tujih izvajalcev, lastna delovna sila), izvedba pa mora natančno slediti izdelanim načrtom. V primeru pojava situacij, ki se jih pri načrtovanju ni predvidevalo, je potrebna hitra reakcija vseh vpletenih (tako izvajalcev kot načrtovalcev), da se nastali problemi hitro rešijo.

7.5 Testiranje in vrednotenje • meritve • funkcionalno testiranje naprav in omrežja • vrednotenje testnih rezultatov • vrednotenje investicije

7.6 Upravljanje in vzdrževanje • seznam naprav (Inventory managament) • dokumentiranje: • fizična topologija (shema ožičenja, oznake naprav, serijske številke naprav itd.) • logična topologija: IP naslovna shema, informacije o VLAN • seznam strojne in programske opreme, podatki o licencah. • shranjene vse uporabljene verzije IOS-a. • kontaktne informacije o dobavitelju in drugi pomembni podatki iz vzdrževalne pogodbe • shranjene konfiguracije naprav (elektronska, papirna oblika) • različne politike, ki določajo dizajn in konfiguracijo omrežja • procedure upravljanja omrežja npr. procedura za izklop v nujnih primerih

• upravljanje problemov Gorazd Praprotnik Računalniške komunikacije in omrežja II

Literatura:

• Arso Savanović, Računalniške komunikacije in omrežja (RKO-2), učno gradivo, 2008 • Mark A. Miller, LAN PROTOCOL HANDBOOK, M&T Books, 1992, ISBN 1-55851-099-0 • William Stallings, Cryptolograph and , 2011, ISBN 0-13-705632-X • Gurpreet Dhillon, Principles of INFORMATION SYSTEMS SECURITY, 2007, ISBN 0-471-45056-1 • http://wikipedia.org • S.Dijev, Industrial Networks for Communication and Control • Elizabeth Di Rocco, Dizajn LAN in WAN omrežij, Cisco

• Andlovič A.(2011), Slovenski Metulji ropajo po svetu, Slovenske novice, dostopno WWW: http://www.slovenskenovice.si/crni-scenarij/doma/slovenski-metulji-ropajo-po-svetu.html • Bardin J. (2011), Metulji botnet largest to date - Unveillance and Panda team, CSO online, dostopno HTTP: http://blogs.csoonline.com/1575/metulji_botnet_largest_to_date_unveillance_and_panda_team • Barford P. in Yegneswaran V. (2006). An Inside Look at , Computer Sciences Department, University of Wisconsin, dostopno WWW: http://www.cs.ucsb.edu/~kemm/courses/cs595G/christo.pdf • Corrons L. (2010). Mariposa botnet, Pandalabs, dostopno WWW: http://pandalabs.pandasecurity.com/mariposa-botnet/ • Falliere N., O Murchu L. in Chien E (2011), W32.Stuxnet Dossier, Version 1.4, Symantec, dostopno WWW: http://www.symantec.com/connect/blogs/w32stuxnet-dossier • IDC Press release (2011). Worldwide Smartphone Market Expected to Grow 55% in 2011 and Approach Shipments of One Billion in 2015, According to IDC, IDC, dostopno WWW: http://www.idc.com/getdoc.jsp? containerId=prUS22871611 • Jerman R. (2010), SOPHOS varnostno poročilo 2010, Sophos d.o.o., Infosek Expo 2010, dostopno WWW: http://www.palsit.com/predavanja-infosek-expo- 2010/gradivo/SOPHOS_Varnostno_porocilo_podjetja_Sophos_za_leto_2010.pdf • Moore M. (2009). China's global cyber-espionage network GhostNet penetrates 103 countries, The Telegraph , dostopno WWW: http://www.telegraph.co.uk/news/worldnews/asia/china/5071124/Chinas-global-cyber- espionage-network-GhostNet-penetrates-103-countries.html • Norton Antivirus Center (2007-2011). What is Malware and How It Attacks?, Symantec, dostopno WWW: http://www.nortonantiviruscenter.com/security-resource-center/malware.html • Ryan J. (2007). iWar: A new threat, it’s convenience – and our increasing vulnerability, Nato Review, dostopno WWW: http://www.nato.int/docu/review/2007/issue4/english/analysis2.html • Symantec (2008). Symantec Global Threat Report Trends Juliy-December 2007, dostopno WWW: http://eval.symantec.com/mktginfo/enterprise/white_papers/b- whitepaper_internet_security_threat_report_xiii_04-2008.en-us.pdf • Soumenkov I. (2011). TDL4 – Top Bot, Kaspersky Lab, dostopno WWW: http://www.securelist.com/en/analysis/204792180/TDL4_Top_Bot • Sophos (2011). Security Threat Report 2011, dostopno WWW: http://www.sophos.com/security/topic/security-threat-report-2011.html • Thompson M. (2009). Mariposa Botnet Analysis, Defence Intelligence, dostopno WWW: www.defintel.com/docs/Mariposa_Analysis.pdf • A Trend Micro White Paper (2006). Taxonomy of Botnet Threats, Trend Micro, dostopno WWW: http://us.trendmicro.com/imperia/md/content/us/pdf/threats/securitylibrary/botnettaxonomywhitepapernovem ber2006.pdf