KPOV-Povzetek predmeta

Napisal: Klemen Turšič

Uredil: Luka Golinar

UVOD V PREDMET


1.predavanje

Kaj je PROTOKOL?

Pravila oz. dogovor kako je potrebno komunicirati. Gre za komunikacijo med dvema osebkoma (entitetni par).

VARNOST:

Preprečevanje prisluškovanja in vmešavanja med komunikacijski proces ter prepoznavanje (zagotavljanje avtoritete) pošiljatelja.

PONOVITEV ISO/OSI PLASTI:

  • Fizična plast
  • Povezavna plast
  • Omrežna plast (Komunikacija dveh osebkov, ki nista neposredno povezana, naslavnjanje, usmerjanje...)
  • Transportna plast(tcp, udp)
  • ....

Komunikacija vedno poteka med entitetnim parom na isti plasti!

ANALOGIJA DELOVANJA:

1.Problem: Pošiljatelj in prejemnik ne govorita istega jezika, zato se ne znata sporazumeti. Rešitev: Najameta prevajalca, ki govori skupni jezik.

2.Problem: Komunikacija poteka na veliki razdalji, kjer se pošiljatelj in prejemnik ne vidita/slišita. Rešitev: Najdeta ponudnika storitve (npr.: Telegraf, faks, pošta....), ki pošlje prevedeno sporočilo od pošiljatelja do prejemnika (njegovega prevajalca).

Vsaka plast ima svoje protokole.

ISO/OSI plasti:

 

Aplikacijska plast

 

Predstavitvena plast

 

Sejna plast

 

Transportna plast

 

Omrežna plast

 

Povezavna plast

 

 

Fizična plast

 

 

V praktični uporabi od ISO/OSI plasti je ostal samo standard x.500

INTERNET: lokalno povezovanje med(inter) mrežami(net).

ENKAPSULACIJA(zavijanje):

Enkapsulacijo si lahko predstavljamo kot dodajanje ovojev, kajti vsaka plast doda sporočilu svojo glavo, da naslednja plast ve, kaj mora s sporočilom storiti. Obratno, na prejemnikovi strani "odvijamo" sporočilo v originalno obliko, dokler ne pride prvotno sporočilo do prejemnika(client).

Omrežna varnost

  • Na začetku so ustvarjalci interneta si med seboj zaupali ker jih je bilo malo, zato takrat ni bilo potrebe po različnih varnostnih mehanizmih.

  • Protokol so razvijali sproti, po potrebi. Ta način imenujemo kot metodologijo »krpanja«.

  • Varnost je potrebno upoštevati na vseh plasteh ISO-OSI modela. (Vsaka plast ima različne zahteve.)

Je področje ki:

  • Analizira možnosti vdorov v sisteme

  • Načrtuje tehnike in obrambe pred napadi

  • Snuje varne arhitekture, ki so odporne pred vdori

Kako lahko napadalec škoduje sistemu:

- Prisluškovanje (prestrezanje sporočil)

                             -Napadalec samo prebira podatke, je pasiven.

- Ponarejanje sporočil v komunikaciji

                           -Napadalec lahko podatke vmes tudi spreminja.

- Kraja identitete (impersonacija)

                           -Napadalec se s pomočjo ponarejanja izvornega naslova, izdaja za drugo osebo z upanjem, da pridobi informacije, ...

- Prevzem povezave (hijacking)

                           -Napadalec prevzame vlogo originalnega pošiljatelja/prejemnika, ...

- DoS(Denial of service)

                           -Napadalec onemogoči uporabo storitve z napadom nanjo. (Preobremenitev, stradanje, …) 

Elementi varne komunikacije (so neodvisni med sabo):

- Zaupnost-kdo sme prebrati sporočilo? (

                  enkripcija:

                             -Substitucijske (menjava znakov)

                             -Transpozicijske (vrstni red znakov)

                             -Simetrične (enkripcijski in dekpripcijski ključ sta enaka, E = D - DES, AES)

                              -Asimetrične (enkripcijski in dekpripcijski ključ sta različna, E =/= D - RSA))

- Avtentikacija - dokaz, da si res ti (identifikacija–povej, kdo si, brez dokaza)

                           -Izziv-odgovor

                            -Zaupanje tretji strani

                           -Avtentikacija z javnimi ključi

Razpoložljivost in nadzor dostopa-preprečevanje nelegitimne rabe virov (avtorizacija– ugotavljanje, ali nekaj smeš storiti, accounting‐storitve beleženja uporabe)

Integriteta sporočila-je bilo med prenosom spremenjeno?

Preprečevanje zanikanja(nonrepudiation)–res si poslal/res si prejel

 

V praksi:

* požarni zidovi, sistemi za zaznavo vdorov (intrusion and detection),

* varnost na aplikacijski, transportni, omrežni in povezavni plasti

 

Vrste kriptografije:

-Asimetrična

Javni in zasebni ključ (RSA algoritem)

-Simetrična

Samo en ključ 

Integriteta:

-Integriteta uporabnikov:

             -Dokazuje, kdo je sporočilo poslal, in da ga pravi prejemnik bere.

-Integriteta sporočila:

              -Dokazuje, da sporočilo ni bilo spremenjeno.

              -Uporabljamo zgoščevalne (hash) funkcije, ki računajo podpis sporočila.

Certifikati:

-Sistem PKI  vsebuje certifikacijske agencije (angl. Certification authority), ki izdajajo, hranijo in preklicujejo certifikate.

-Certifikati so definirani s standardom X.509 (RFC 2459)

-Certifikat vsebuje:

         -  naziv izdajatelja,

         -  ime osebe, naslov, ime domene in druge osebne podatke,

         -  javni ključ lastnika,

         -digitalni podpis (podpisan z zasebnim ključem izdajatelja).

 

PRIKLOP IN ZAGON RAČUNALNIKA


2.predavanje

 

Priklop in zagon naprave

Zagon računalnika

CPU ob priklopu na napajanje nastavi vrednost programskega števca na točno določeno vrednost. V pomnilniku se na mestu, kjer CPU prične z delom nahaja BIOS.

 

Bios je sestavljen iz:

 

-kode, ki se začne izvajati ob zagonu

-gonilnikov za V/I enote

 

Koda izkoristi gonilnike za dostop do zunanjih enot in z njih naloži program, ki mu pravimo operacijski sistem. S tem je strojna oprema obuta (boot).

OS je vmesnik med uporabniškimi programi in strojno opremo ter skrbi za ravnanje z viri (V/I enote, datoteke, procesorski čas)

Prvotno je OS izkoriščal za delo z V/I enotami gonilnike iz biosa, vendar pa je ROM je v primerjavi z RAM-om majhen, zato so bili gonilniki v biosu neprijazni in neučinkoviti.

Operacijski sistemi so zato začei uporabljati svoje gonilnike.

 

BIOS najde na disku na točno določenem mestu nek program, ki pa ni nujno operacijski sistem. Lahko je v primeru Linuxa bootloader/GRUB, ki nato v naslednjem koraku izbere in naloži operacijski sistem.

BIOS ta program najde na prvem bloku V/I enote - master boot record (MBR).

 

BIOS pa lahhko ta program naloži tudi z omrežja (s strežnika).

 

Prednosti:

 

-ne potrebujemo diska na računalniku

-preprosto zamenjamo OS na vseh računalnikih v omrežju tako, da  zamenjamo OS na strežniku.

 

Slabosti:

ranljivost, počasnost in varnost (oziroma njena odsotnost).

 

DNS

Storitev DNS preslikuje med črkovnim nizom in številko.

Lahko uporabimo tudi preslikovalno tabelo v datoteki /etc/hosts(Linux)

oziroma  C:\Windows\System32\drivers\etc\hosts (Windows).

 

Strežnik DNS mora za to, da lahko najde druge strežnike DNS, poznati njihove IP naslove. Ti se ponavadi nahajajo v datoteki /etc/namedb/named.root. (Shranjeni računalniki, ki vedo “vse”)

 

DNS storitev uporablja vrata številka 53. Nimamo storitve, ki bi preslikovala imenom DNS in 53.

V /etc/services imamo zapisano storitve in vrata, ki jih te storitve uporabljajo.

 

DNS uporablja UDP pakete. V glavi teh paketov označimo, da gre za UDP paket s številko 17. Tudi tu nimamo storitve, ki bi preslikovala med UDP in 17.

Imamo pa preslikovalno tabelo v etc/protocols (nastavljeno udp=17)

 

Vse te številke so posledica svetovnega dogovora. Številke hrani in oglaša IANA - The Internet Assigned Numbers Authority (www.iana.org)

 

Nalaganje operacijskega sistema z omrežja

 

Koraki:

 

1. Računalnik poišče strežnik, s katerega bo naložil operacijski sistem.

2. Temu sledi samodejna konfiguracija nastavitev računalnika, ki so prilagojene zahtevam strežnika.

3. Nato sledi prenašanje operacijskega sistema na računalnik ter

4. nazadnje še namestitev in zagon. (enako kot pri nalaganju z diska)

 

Za izvedbo prvih dveh korakov poskrbi protokol "bootp", za 3. korak pa protokl tftp

 

Protokol BOOTP

Protokol BOOTP je definiran v RFC 951, BOOTSTRAP PROTOCOL

 

BOOTP uporablja UDP.

Koračni pogovor med odjemalcem in strežnikom: odjemalec vpraša in strežnik odgovori.

Lahko je hkrati prisotnih več strežnikov in lahko hrati več odjemalcev želi naložiti OS.

 

Odjemalec na začetku ne pozna IP naslova strežnika, zato razpošlje (broadcast) na 2. plasti

na lokalni mreži željo po nalaganju OS

 

 Strežnik dodeli odjemalcu IP naslov (ali pa ne) ter mu sporoči, kje se nahaja odjemalčev OS

 ni nujno, da na lokalni mreži

 Tukaj se pogovor zaključi

 

Protokol TFTP

 

Definiran v RFC 1350 

Zelo poenostavljena funkionalnost ftp protokola-ohranjena predvsem možnost prenosa podatkov.

Ni izpisa imenika, avtentifikacije in kriptiranja, dovoljuje zelo velike pakete, ne more naložiti datoteke večje od 1 TB.

Pomembna razlika med FTP in TFTP protokolom je ta, da TFTP ne zagotavlja zanesljivih uslug,saj za prenos podatkov uporablja UDP protokol.

 

TFTP - primer pogovora 

1.odjemalec pošlje zahtevo po branju (RRQ)

2.  strežnik odgovori z DATA paketom in podatki, ki jih je zahteval odjemalec; poslani so z novih vrat in vsa komunikacija z odjemalcem mora odslej potekati preko teh vrat

3.  na vsak paket podatkov odjemalec odgovori z ACK paketom, nakar strežnik pošlje naslednji

paket (prejšnja točka) – če potrditve ni v določenem času, strežnik ponovno pošlje paket

4.  posebnost je zadnji paket, ki je manjši od največje dovoljene velikosti

Nekateri računalniki imajo svoj disk in si sami naložijo OS, vendar se želijo priključiti v omrežje:

 -stalna IP številka deluje samo pri stacionarnih računalnikih

- mobilni računalniki potrebujejo vsakič drugo številko

- ponudniki želijo poslužiti več strank, kot imajo IP naslovov

 Protokol bootp v prvem koraku odjemalcu pošlje tudi podatke za nastavitev IP naslova in nastavitev IP naslova prehoda

 ideja!! – uporabimo bootp protokol

26  Ideja ni slaba, le težave: 

 Poleg IP naslova, potrebujemo še naslov prehoda, naslov DNS strežnika, naslov vmesnega (proxy) strežnika, ...

Rešitev:  Uporabimo / spremenimo namen polja vend (vendor specific) v bootp protokolu. 

 

protokol DHCP

DHCP protokol je naslednik protokola BOOTP,  deluje v načinu odjemalec/strežnik. 

Odjemalcem omogoča samodejno pridobivanje omrežnih nastavitev iz DHCP strežnika.
Najbolj pomemben podatek, ki ga odjemalcu dodeli DHCP strežnik je omrežni IP naslov. 
Mogoči so naslednji načini:

  • Ročna nastavitev: Administrator nastavi določen IP vsaki postaji na DHCP strežniku in strežnik nato posreduje ta naslov.Ta način administrator običajno le redko uporabi. Vendar je potreben za nastavitev strežnikov, ki so preko DNS povezani s točno določenimi naslovi. Administrator bi lahko naslove nastavil tudi neposredno na vsaki postaji, toda DHCP zagotavlja, da ne pride do podvojevanja naslovov.

 

  • Samodejna nastavitev: DHCP strežnik zagotavlja odjemalcem IP naslove, ki se nahajajo v množici, odjemalci jih dobijo v stalno uporabo. Samodejno dodeljevanje naslovov je pogosto ugodna rešitev za omrežja, ki imajo na voljo dovolj naslovov. Stalni naslov zmanjša DHCP promet med odjemalci in strežnikom. Tudi nadzorovanje prometa in dogajanja v omrežju je enostavnejše, saj vsi apketi z istim IP naslovov vedno pripadajo isti postaji.

 

  • Dinamična nastavitev: DHCP strežnik zagotavlja odjemalcem IP naslove, ki se nahajajo v množici. Odjemalci morajo periodično obveščati strežnik o uporabi tega naslova. V primeru ne odziva odjemalca, se naslov vrne v množico neoddanih naslovov.Dinamično dodeljevanje IP naslovov popolnoma avtomatizira proces in dovoljuje administratorju največ svobode. Takšen način pa nepovabljenemu gostu v omrežju olajša dostop, saj je vključitev v omrežje enostavno, ker mu podatkov ni potrebno poznati, saj mu jih poda strežnik sam. V kolikor je v omrežju potrebna velika varnost, se DHCP ne uporablja.

 

NADZOR IN UPRAVLJANJE Z OMREŽJI


3.predavanje

 

Kaj je upravljanje z omrežjem in zakaj je potrebno? Da lahko upravljamo z omrežjem, moramo imeti pregled nad omrežjem, pregled nad tem, kaj se dogaja z napravami v tem omrežju…

Definicija

Upravljanje z omrežjem vključuje vpeljavo, integracijo in koordinacijo s strojno opremo, programsko opremo in človeškimi viri z namenom opazovanja, testiranja, konfiguriranja, analiziranja in nadzorovanja omrežnih virov, pri katerih želimo zagotoviti delovanje v realnem času (ali delovanje z ustrezno kakovostjo ‐ QoS) za sprejemljivo ceno.

Z rastjo interneta in lokalnih omrežij so se majhna omrežja povezala v VELIKO infrastrukturo. Zato je s tem narasla tudi potreba po SISTEMATIČNEM upravljanju strojnih in programskih komponent tega sistema. Pogosta vprašanja:

 Kateri viri so na razpolago v omrežju?

 Koliko prometa gre skozi določeno omrežno opremo?

 Kdo uporablja omrežne povezave, zaradi katerih direktor prepočasi dobiva elektronsko pošto?

 Zakaj ne morem pošiljati podatkov določenemu računalniku?

Primeri aktivnosti upravljanja

  • zaznavanje napake na vmesniku računalnika ali usmerjevalnika: programska oprema lahko sporoči administratorju, da je na vmesniku prišlo do težave (celo preden odpove!)  in mora o tem obvestiti upravljalca oz.nadzornika omrežja
  • nadzorovanje omrežnega prometa: administrator lahko opazuje pogoste smeri komunikacij in najde ozka grla (npr. imamo spletno storitev, ki jo prodajamo svetu, na drugem računalniku nekdo drug uporablja Youtube in zaradi tega naša storitev ni na voljo…),
  • nadzorovanje delovanja računalnikov in analiza omrežja
  • zaznavanje hitrih sprememb v usmerjevalnih tabelah: ta pojav lahko opozarja na težave zusmerjanjem ali napako v usmerjevalniku,
  • nadzorovanje nivoja zagotavljanja storitev: ponudniki omrežnih storitev nam lahko jamčijo razpoložljivost, zakasnitev in določeno prepustnost storitev; administrator lahko meri in preverja ,
  • zaznavanje vdorov: administrator je lahko obveščen, če določen promet prispe iz sumljivih virov; zaznava lahko tudi določen tip prometa (npr. množica SYN paketov, namenjena enem samem vmesniku)

Primeri aktivnosti: nadzorovanje delovanja računalnikov in analiza omrežja (odkrivanje topologije omrežja), nadzorovanje omrežnega prometa (profiltriranje), nadzorovanje nivoja zagotavljanja storitev (pretok podatkov), nadzorovanje delovanja računalnikov in analiza omrežja (popis IP naslovov), nadzorovanje delovanja računalnikov in analiza omrežja (diagnostika in odkrivanje napak) à kako dobra je povezava med računalniki, če je prepočasna, kje je problem, katera povezava je problematična? Težave na požarnem zidu? Če je prišlo do vdora, stvar seveda popravit. …   Vse te stvari bi želeli opazovat IN nadzorovat (opazujemo, kaj se je dogajalo in kaj potrebujemo, da se to odpravi? Potrebujemo ZAPISE (log-e), ki podatke zberejo, podatke pregledamo in nato potrebujemo različna orodja za reševanje težav.

//LOG -> zapis (sled) o dogodkih na računalniku

4 vrste upravljanja:

  • Upravljanje s konfiguracijami ( Vse nastavitve lahko upravljamocentralno, ali pa ne (v Windowsih ima vsak user svoj desktop)
  • Upravljanje z varnostjo (dostop do tiskalnika mora bit dovoljen recimo le nekaterim)
  • Upravljanje z beleženjem dostopov (kdo se je prijavil, kdaj se je prijavil
  • Upravljanje z napakami (če pride do napak na sistemu, če printerju zmanjka papirja…)

Programska oprema za upravljanje

  • CLI (Command Line Interface):

Vse poteka prek ukazne vrstice. V večini primerov se uporablja ta način. Je zelo pomemben, ker obstajajo sistemi za nadzor, ki uporabljajo ukazno vrstico za pridobivanje podatkov. Je hitrejši in zasede manj prostora ter omogoča natančno upravljanje. Problem nastane edino pri poznavanju sintakse ter pri shranjevanju konfiguracije.

Kje so log-I shranjeni na Linuxu? var/log/

  • GUI (Graphical User Interface):

Vizualno je lepši ter omogoča pregled delovanja cele naprave oz. omrežja. Je dogodkovno gnan - ko klikneš se nekaj zgodi. Problem pa je v velikosti, saj so grafični vmesniki požrešnejši.

Infrastruktura za upravljanje

komponente sistema za upravljanje

Ko zbiramo podatke, imamo 3 osnovne gradnike (vsi sistemi za nadzor so sestavljeni tako):

  • Tisti, ki prikazuje podatke (ki jih mora zbirat) à upravljalni sistem
  • Na upravljani napravi mora biti nameščen agent, ki omogoča dostop do podatkov in do konfiguriranja
  • Način, kako agent in upravljalec govorita (protokol)

Definirali bi radi standard, da bi delovalo za vse naprave….pridemo do protokola za upravljanje.

Protokoli za upravljanje

X.500  standardi za certificate

X.600  standardi za e-pošto

X.700 standardi za upravljanje

OSI CMIP (Common Management Information Protocol)

SNMP (Simple Network Management Protocol) 

Vse naprave v omrežju poznajo protokol SNMP.

Podatki za upravljanje

MIB je standard, ki Iz 723 v semantiko pomena te beside. MIB vgradi v svoj tiskalnik agenta, ki sporoča različne podatke (opis podatkov je v MIB). Ko opisuje podatke, zna povedat, koliko IP/UDP paketov je sprejel. En MIB za vse tiskalnike v podjetju. Upravljalec ima svoj MDB ( Management Database), kjer za vsako upravljano napravo hrani konkretne vrednosti za njihove MIB objekte/parameter.

PAZI: MIB je šifrant, niso podatki. Podatki so v MDB!

Kupiš novo napravo, kaj moraš za novo napravo definirat? MIB (vgrajena datoteka)

Kaj pa, če kupim 20 naprav? Ravno tako dobim en MIB (oz. dobiš jih 20, a so enaki)

Kaj pa za novo programsko opremo, npr. MS Word? Lahko dodaš v MIB recimo, koliko ljudi uporablja angleški jezik, koliko slovenski…

Kaj sploh želiš v MIB-u povedat? Povedat želiš, katere parameter bi rad nadzoroval.

 

SMI: programski jezik za definicijo objektov v MIB (Management Information Base):

Z njim lahko formalno definiramo MIB. Parametric imajo določene vrednosti (preskenirali smo n listov…), zato rabimo osnovne tipe, poleg tega lahko tipe sestavimo na različne načine (tipe definira SMI jezik).

SMI object: ima podatkovni tip, status, opis pomena. Te stvari lahko združujemo v module (module bomo dodali v opis), ki so lahko “standardizirani” ali “vendor-specific”.

Za standardizacijo MIB modulov za usmerjevalnike, vmesnike in drugo omrežno opremo, je zadolžena IETF (Internet Engineering Task Force), za tem gredo v IANA-o. potrebno je poimenovanje standardnih component, na natančen in relativno preprost način. Kako posamezne elemente poimenovat, saj bo potrebno te stvari enoznačno sporočat med računalniki?

Vsak object ima ime, sestavljen iz zaporedja številčnih identifikatorjev od korena drevesa do lista. S številkami se pomikamo po drevesu identifikatorjev (primer: 1.3.6.1.2.1.7 pomeni UDP protokol à 1:ISO, 3:ISO identified organization, 6:UsDoD…).

 

Protokol SNMP (Simple Network Management Protokol)

Je protokol za izmenjavo informacij, ki jih izmenjujeta na podlagi MIB-a.

2 NAČINA DELOVANJA:

  • Zahteva-odgovor (request-response) àbere in nastavlja vrednosti
  • Obvestilo (trap message) ànaprava obvesti upravljalca o dogodku

SNMP: tipi sporočil

Dejansko imamo 5 tipov sporočil:

  • Zahteva (GetRequest, GetNextRequest, GetBulkRequest)
  • Odgovor (Response)
  • informRequest je protokol med upravljalci
  • SetRequest za nastavljanje vrednosti
  • Trap je obvestilo upravljalcu o izrednem dogodku

Pod njim je UDP protokol in njegova omejitev je (poleg tega, da je nepovezavni, ne zagotavlja potrditve in re-senda), da obstoji sporočilo v enem samem datagramu.  Povsod, kjer imamo UDP mora za to poskrbet aplikacija.

 Verzije SNMP

  • SNMPv1: prešibek za implementacijo vseh potrebnih zahtev (ni bilo možne povratne komunikacije)
  • SNMPv2: izboljšan SNMPv1 na področjih hitrosti, komunikacij med upravljalci. Ni bilo varnosti (skupino naprav si lahko dal v isto skupnost ->prek tega si nadzoroval naprave)
  • SNMPv3: dodatni varnostni mehanizmi ( DES kriptografija(simetrična) redko uporabljena v praksi, problem: izmenjava ključev). Omogoča kritpografijo, avtentikacijo, integriteto, zagotavlja zaupnost

 

Varnost

 

Naprava lahko prek ključa preveri, ali je določena oseba res tista, za katero se izdaja. Varnost moramo zagotoviti v obe smeri.

Varnostni elementi so vpeljani šele v SNMPv3, prejšni dve različici jih nista imeili. SNMPv3 ima vgrajeno varnost na osnovi uporabniških imen.

SNMP Varnostni mehanizmi

  1. kriptiranje vsebine paketov (PDU): uporablja se DES
  2. integriteta: uporabimo zgoščevalno funkcijo (ključ, ki ga poznata pošiljatelj in prejemnik
  3. zaščita proti ponovitvi že opravljene komunikacije (napad pred ponavljanjem): uporaba žetonov
  4. kontrola dostopa: na osnovi uporabniških imen (pravice določajo, kateri uporabniki lahko berejo oziroma nastavljajo informacije)

Kodiranje vsebine PDU

Problem:

  • pošiljatelj pošlje sporočilo v svoji obliki, prejemnik pa se naj znajde kakor ve in zna. Problem: naučiti se moramo preveč "jezikov", npr tiskalnik mora znati vse jezike -> problem: rabimo veliko pomnilnika in procesorja.
  • nek vmesna prezentacijska storitev

Prezentacijska 
storitev: 
možne
 rešitve
:

  1. pošiljatelj upošteva obliko podatkov, ki jo uporablja prejemnik (pretvori v obliko, ki jo razume prejemnik in mu jo pošlje)
  2. pošiljatelj pošlje podatke v svoji obliki, nato prejemnik na svoji strani pretvori v lastno obliko, ki jo razume
  3. pošiljatelj pretvori v neodvisno obliko in jo pošlje, prejemnik pa to obliko pretvori v svojo obliko. (ASN.1)

Pri zapisovanju tipov se uporablja pravila BER. Ta pravila definirajo zapis podatkov po principu TLV (Type, Length, Value).

Drugi pristopi za nadzor (konfiguracija naprav)

  • Problem: ni standardizacije
  • Rešitev: XML & SOAP (aplikacijski nivo)

XML: omogoča nazoren in hierarhičen način kodiranja podatkov (preprosto se da izluščit podatke, sami lahko določamo strukturo, najbolj pomembno  je, da ga vsi razumejo  --> standard!)

SOAP: preprost protokol, ki omogoča izmenjavo XML dokumentov v omrežju (vendar nima MIB-a)

 

Dogodkovno gnano opazovanje:

  • RMON (komplement SNMP-ju): zbira in analizira meritve lokalno, rezultate pošlje oddaljeni nadzorni postaji (ima svoj MIB)

 

PROMET ZA APLIKACIJE V STVARNEM ČASU


4.predavanje

 

Primer rabe

 

Naša definicija za realni čas bo malo drugačna, kot je sicer.

Primer:

Imamo dve strani in sicer stran A in stran B. Stran A beleži neke dogodke in njihove časovne značke. Te dogodke stran A pošilja preko omrežja na stran B. Naša definicija bo govorila o tem, da se bodo dogodki, ki se zgodijo na strani A izvajali na strani B, točno tako, kot so bili zajeti. Stran B bo imela občutek, da se dogodki dogajajo pred njim.

  • Enosmerna komunikacija
    • prikazovanje prosojnic, diapozitivov, …
    • predvajanje radijskega ali TV programa
  • Dvosmerna komunikacija (čas zakasnitve mora biti čim manjši)
    • pogovor preko spleta(VoIP)
    • video telefonija

Zajem podatkov – zvoka

  • analogno
    • zajem zvoka so preko mikrofona spremenili v električni signal
    • električni signal uporabljen za proizvajanje zvoka preko zvočnika
  • digitalno
    • zajem zvoka v diskretnih trenutkih(odmik od prejšnjega trenutka: amplituda,jakost,energija)
    • na vsakih 5ms se mora ton zamenjati, da bo to zaznano kot melodija

Zajem podatkov – slika

  • digitalizacija slike
    • vsaka točka na zaslonu je tri razsežnostni vektor
  • človeško okno zazna neprekinjeno premikanje če mu posredujemo vsaj 23 slikic na sekundo

 Omrežni čas(NTP)

Network Time Protokol

To je internetni protokol, za sinhronizacijo ure med računalniki v omrežju. Je eden izmed najstarejših internetnih protokolov.

Osnovni protokol za promet v stvarnem času

dva glavna problema

  • kaj narediti z izgubljenimi predmeti
  • kaj narediti z neenakomerno prihajajočimi paketi

rešitev

  • zamujene pakete obravnavati kot izgubljene
  • protokol naj poskrbi za časovno izravnavo
  • aplikacija naj poskrbi za izgubljene pakete

Protokol RTP

Real-Time Transport Protocol

RTP protokol je prenosni protokol, ki služi prenosu podatkov, ne vključuje pa ukazov za začetek povezave! Za nadzor delovanja uporablja protokol RTPC. Na prenosni plasti uporablja UDP protokol, ker je ta protokol najbolj preprost, hiter in ne čaka na zamujene paketke.

Osnovni funkcionalnosti protokola sta, da protokol skrbi za pravo zaporedje paketov in poskrbi za časovne značke dogodkov. 

Dodatne funkcionalnosti so, da lahko ena povezava prenaša več podatkovnih tokov(zvok levi, zvok desni, ...), lahko združuje več sej v eno, ...

Protokol za upravljanje s tokom podatkov(RTCP)

Protokol RTCP je protokol, za nadzorovanje prometa v omrežju. Sporoča o kakovosti prenešenega prometa(RR-receiver report, koliko je bilo izgubljenih paketov; SR-sender report, koliko podatkov se trenutno pošilja), skrbi za pravilno gostoto pošiljanja sporočil.

Varna inačica protokola(SRTP)

Ta protokol je zasnovan na protokolu RTP. Varnost je dodana z kriptiranjem s tokom šifer. Obe strani imate enak ključ, ki si ga v naprej izmenjata. Vsak paket se s pomočjo ključa ločeno zakriptira. To je ponavadi kakšna xor funkcija.

Protokol RTSP

Je uporabljen za kontrolo pretočnih medijev. Se pravi vsebuje ukaze kot so SETUP,PLAY,RECORD,PAUSE(kot DVD-predvajalnik). Uporabljen je za enosmeren tok podatkov. Za dvosmeren tok podatkov je uporabljen SIP(VoIP).

 

RAZPOŠILJANJE(MULTICAST)


5.predavanje

 

Razpošiljanje (multicast)

 Načini naslavljanja

  • unicast (tradicionalno): pošiljanje enemu ciljnemu IP naslovu (unikaten v Internetu / lokalnemu omrežju). Gre torej za enosmerno komunikacijo (npr. A pošlje B videoposnetek po e-pošti)
  • broadcast naslavljanje "vseh prejemnikov" v podomrežju (npr. iskanje usmerjevalnika ali strežnika, nujno sporočilo); ne dostavlja paketov izven omrežja (npr. TV, antena, brezžično omrežje)
  • multicast naslavljanje (razpošiljanje) omogoča dostavo izbranim skupinam naslovov ne glede na meje podomrežij (torej tudi izven lokalnega omrežja). Torej en oddajnik pošlje paket različnim sprejemnikom - število le teh je omejeno (samo člani skupine)

Primer razpošiljanja 1

Posameznim skupinam dodelimo ID-je. Za upravljanje s skupinami (dodajanje/odstranjevanje članov) uporabljamo IGMP (Internet Group Management Protocol).V multicast sporočilo moramo zapisati naslov pošiljatelja in naslov prejemnika (v IP paketa vpišemo zastavico in ID skupine, ki ji je sporočilo namenjeno). Po potrebi ponastavimo usmerjevalnik - ta mora znati prepoznati razpošiljevalne (multicast) pakete.

Usmerjanje po skupinah

Pri tem ni pomembno, koliko članov ima posamezna skupina, pomembno je le, da usmerjevalnik ve, kam pakete poslati. Kako to ve? Pri iskanju lokacij članov skupine mu pomaga program RIP, ki vsake toliko pošilja poizvedbe in pridobiva podatke o lokacijah.

 

IP transmission schemes

Primer razpošiljanja 2

Poslati želimo 4 od 6 računalnikov v omrežju. Kako?

  1. unicast: potrebujemo 6 kopij istega paketa, večkratno pošiljanje obremenjuje medij
  2. broadcast: naslovi vse računalnike, filtriranje pravih prejemnikov prepustimo protokolom na višjim plastem.
  3. multicast: pošljemo "posebnemu" naslovu", ki predstavlja SKUPINO prejemnikov, ki posluša pakete, naslovljene na ta naslov:
    • podobno kot broadcast: paket dobijo vsi
    • vendar: filtriranje se izvede na omrežnem nivoju ‐ IP (včasih lahko tudi na povezavnem nivoju)

 Usmerjanje paketov pri razpošiljanju

Za usmerjanje uporabljamo UDP protokol, ker je hitrejši in se ne zmeni za manjkajoče podatke (izgubljene pakete), kar pa omogoča hitro in nemoteno pošiljanje večim prejemnikom.

Broadcast paketov usmerjevalniki ne posredujejo (dobili bi jih vsi!), torej ostajajo znotraj lokalnega omrežja.

Usmerjanje pri razpošiljanju je praktično: en sam paket usmerjevalniki razmnožijo in posredujejo samo preko tistih vmesnikov, kjer so poslušatelji paketa. Ime skupine je 32 bitno število (skoraj).

Izzivi protokola:

  • odkrivanje, kje so prejemniki paketa,
  • razpošiljanje zahteva dodatno delo: usmerjevalni protokoli, posredovanje informacije o poslušateljih,
  • razpošiljalni naslovi ne oblikujejo (pod)mrež ‐> maska ima 32 bitov. V usmerjevalnih tabelah zato zahtevajo posebne vnose
    • izziv: lahko imajo tudi več posebnih vnosov, zakaj?
  • varnost: prisluškovalec se lahko naroči na poslušanje paketov in postane legitimni prejemnik
  • kaj narediti, če samo en prejemnik javi, da ni dobil paketa?

Razpošiljanje 

IGMP se "zmeni" z usmerjevalniki, po kateri poti bo šel paket, saj ima vsak usmerjevalnik svojo tabelo z informacijo o najbolj optimalni poti.

 

Aplikacije razpošiljanja

  • pošiljanje velikih datotek preko omrežja (glavni urad podružnicam) – zanesljivi prenos.
  • nadgradnja programske opreme v velikem omrežju
  • data streaming (npr. pošiljanje podatkov o delnicam vsem finančnim družbam)
  • audio/video streaming
  • video na zahtevo (spremljanje TV programa)
  • izvedba konferenc (pomislek: boljša uporaba konferenčnega centra, ki odloča, kdo lahko govori in čigave pakete posredovati drugim)
    • izziv: premisli, kako izgleda izvedba konference z multicast pristopom
  • aplikacije v realnem času z RTP, ki se uporablja za zagotaljanje tekoče in kakovostne dostave v okoljih, kjer se uporablja razpošiljanje

 

Naslavljanje na IPv4 in IPv6

 

IPv4

Imena razpošiljevalnih skupin so rezervirani IPv4 naslovi (razreda D): 224.0.0.0 - 239.255.255.255

 

Struktura:

  Prvi štirje biti: 1110 – vrednost E, pove da gre za ID skupine

 

IPv6

Ime razpošiljevalne skupine je IPv6 naslov, ki se začne s FF

  • FF02::1 – link local: vsi vmesniki
  • FF02::2 – link local: vsi usmerjevalniki

Struktura:

Če so prvih 8 bitov same enice, vemo da gre za ID skupine.

Lifetime – ali gre za stalen ali začasen naslov skupine

 

Prijava na multicast promet

 

Protokol IGMP – »Internet Group Management Protocol«

  • Protokol za IPv4 za razpošiljanje
  • Definiran je v: RFC 2236 (IGMP v2) in RFC 3376 (IGMP v3)

IGMP protokol se uporbalja za upravljanje s skupinami. Omogoča pridružitev skupini, izstop iz skupine ter zaznava druge vmesnike v skupini, na katere se lahko prijavimo. IGMP komunikacija poteka med odjemalcem in najbližjim razpošiljevalnim usmerjevalnikom. Ta pošlje zahtevo za priključitev v skupino.

Verzije IGMP:

  • IGMP v1: Vmesniki se lahko priključijo skupinam, ni sporočil za izstop, usmerjevalniki uporobljajo mehanizem s pretekom časa, da odkrivajo skupine, ki za vmesnik niso zanimive
  • IGMP v2:  Sporočila za izstop iz skupine – hitreješe sporočanje usmerjevalniku o prekinitvi dostave nepotrebnega prometa
  • IGMP v3: Vmesniki lahko določijo seznam drugih vmesnikov, od koder želijo prejemati promet (promet od ostalih vmesnikov je blokiran).

Upravljanje s skupinami:

 
PAKET IGMP: 


TYPE – tip sporočil, ki so na voljo 

  1. 17 (0x11): Group Membership Query (odkrivanje članov skupine)
  2. 18 (0x12): Group Membership Report IGMP v1 (objava prejemnika)
  3. 22 (0x16): Group Membership Report IGMP v2 (objava prejemnika)
  4. 34 (0x22): Group Membership Report IGMP v3 (objava prejemnika)
  5. 23 (0x17): Leave Group Report IGMP v2 (objava, da je prejemnik zapustil skupino)

MAX RESPONSE TIME – čas, v katerem se mora prejemnik klica IGMP Group Membership Query odzvati

CHECKSUM – kontrolna vsota za zaščito paketa

GROUP ADDRESS – naslov razpošiljevalne skupine

 

POSEBNO SPOROČILO: IGMP v3 Group Membership report

*Ni števca, saj v omrežju ne moremo zagotoviti sinhronizacije časa

TYPE = 0x22 (Group Membership Report IGMP v3)

  • Odgovori vseh vmesnikov v skupini so zbrani v istem paketu
  • Vmesnik čaka na odgovore drugih prejemnikov v skupini, preden odgovori sam (izognemo se podvojenemu multicast prometu)
 
PRIJAVA NA VIR
  • Za pridružitev skupini se pošlje GMR sporočilo (TTL = 1 – dostava samo najbližjemu usmerjevalniku)
  • Usmerjevalnik evidentira, da mora skupinske pakete posredovati novemu naročniku (Kako? Povezavni razpošiljevalni nalov / kopije datagramov na IP naslov)
  • Usmerjevalnik sporoči sosednjim usmerjevalnikom, da ima novega naročnika. Če bi vsi usmerjevalniki sporočili enako naprej, bi se paketi posredovali navzkrižno preko vseh povezav v omrežju. Rešitev:
    •  RPL (Reverse Path Lookup) algoritem: zavržemo vse multicas paket, ki pridejo od usmerjevalnikov, ki ne povezujejo z izvorom paketa po najbližji poti (ko dobimo paket, pogledamo izvor – omejitev razpošiljanja s poplavljanjem)
    • Usmerjevalniki imajo posebne usmerjevalne protokole za multicast promet (npr. Protokol PIM-SM)

 

Protokol MLD – »Multicast Listener Discovery«

  • Protokol za IPv6 za razpošiljanje
  • Definiran v RFC 2710
  • Po funkcionalnosti enak protokolu IGMP

 ===========

Razpošiljevalna drevesa

Paketi se gibljejo v obliki drevesa - to je graf brez ciklov
Drevo lahko optimiziramo na:

  • najkrajšo pot (najmanj skokov) - desna skica
  • najmanj prometa (čez najmanj usmerjevalnikov - leva 

 

Drevesa ne obstajajo, ampak obstajajo samo tabele v usmerjevalnikih, iz katerih se potem "zgradi" drevo.

Učinkovito pošiljanje:

  • hitrost
  • čim krajša pot
  • najceneje
  • čim manj strojne opreme
  • čim manj skokov med uporabniki

Najpogosteje uporabljamo vpeto drevo, da je skokov čim manj, posledično porabimo manj sredstev( elektrika ...)

Usmerjevalni algoritmi ne razpošiljajo, ti algoritmi samo izračunajo košček usmerjevalne tabele, usmerjevalniki pa potem razpošiljajo.

 

Dve rešitvi iskanja razpošiljevalnega drevesa:

  • uporaba enega samega drevesa za vse usmerjevalnike za usmerjanje
    razpošiljevalnega prometa se določi eno samo drevo (group‐shared tree) ‐ slika levo
  1. ima centralno vozlišče (rendez‐vouz point), kar pomeni, da vse paketi morejo najprej prispeti
    do tega vozlišča in ta ve kam je treba pakete poslati naprej
  2. je minimalno vpeto drevo
  • določitev ločenega drevesa za vsakega udeleženca v skupini (source‐based
    tree); za N članov skupine imamo torej N dreves (za vsako razpošiljevalno skupino) ‐ slika desno
  1. uporablja reverse path lookup protokol (RPL) - da se paketi ne pošiljajo nazaj 
    na usmerjevalnike katerih smo že bili (ker imamo cikle)
  2. imamo za vsak usmerjevalnik najkrajšo pot

Redka omrežja - za pridobivanje paketkov se uporablja princip PULL ( tisti v skupini ki želi dobiti podatke, mora sam zaprositi) V nasprotnem primeru bi imeli problem poplavljanja ( tisti ki ne rabi oz. ne želi prejemati pošte bi jo vseeno prejemal, kar bi povzročilo odvečen promet)

Gosta omrežja - za pridobivanje podatkov se uporablja princp PUSH (  usmerjevalnik sam razpošilja podake vsem, v nasprotnem primeru bi imeli preveč "naročniških zahtev", zato raje pošljemo kar vsem ) 

Kako pošljemo paketke vsem v skupini? Dovolj je da poznamo vsaj enega iz skupine ki je član usmerjevalnega drevesa.

Katerega od članov je najbolje poznati? Tistega ki nam je najbolj blizu.

Kdaj se skupina/grupa odstrani iz drevesa? kadar nimamo več članov skupine/grupe.

Kako postaneš član skupine? Pošlješ "prijavo" najbližjemu članu skupine ali RP ( rendez‐vouz point )

Vprašanja za 1. kolokvij

  1. Protokol RTP: Če imaš dva vira, kako lahko razlikujemo s katerega vira prihaja informacija, če imata oba vira nastavljen isti SSRC?
    • V SSRC imamo za vsak vir, svoj ID(2 mikrofona).
    • Vsak pošiljatelj, pa ima v kombinacij IP + SSRC enolično določen ID naprave, ki oddaja v omrežje.
    • Primer: Tjaša in Mark oddajata vsak po svojemu mikrofonu, nekje na omrežju, njujina signala meša(mixa) Klemen. Ker je klemen samo mešalec, zapiše ID-je naprav v polje CSRC(common source),
    • Če želimo zvedeti več o virih, ki jih uporablja Klemen, uporabimo RTCP protokol, kjer pošljemo zahtevek SDES.
  2. Če pride po povpraševanju do izgube(zakrivanja) podatka, iz kje prihaja nek signal, ali lahko pridobimo te podatke?
    • Odvisno od oddajnika, lahko nam jih posreduje, lahko pa ne(nikjer ne piše da mora).
  3. Na kateri plasti je RTM, glede na to, da je en nivo višje od njega protokol SIP?
    • Oba sta na aplikacijski plasti(procesi uporabljajo za svoje delovanje druge procese).
  4. Ali je potrebno za vsak "mikrofon" odpreti novo sejo?
    • Ni nujno
  5. Ali je smiselno da uporabljamo Multicast namesto RTP?
    • Odvisno od velikosti omrežja, če imamo na omrežju več računalnikov, ki jim vsako polno uro posodabljamo čas, lahko s pomočjo multicasta vsem naenkrat pošljemo potrebno informacijo(timestamps).
  6. Kako preverimo integriteto poslanega sporočila?
    • Dve fazi:
      • V sporočilu vstavimo nekaj kar se lahko uporabi samo enkrat(žeton, čas)
      • Sporočilo ovijemo s HASH funkcijo(vrvica)
      • Na koncu lahko še vse skupaj označimo s svojim zasebnim ključem(žig)
  7. Kaj imata skupnega NTP ter drevesna struktura?
    • NTP strežniki so hierarhično grajeni, Stratum0 nivo, predstavlja atomske ure, Stratum1 predstavlja posrednike, itd.. do Stratum15. Priporočeno je, da iščemo Stratum3 in ne nižje.
  8. Od kje dobimo podatke od kod prihaja nek vir?
    • S uporabo RTP-ja ter razširitev
  9. Katere protokole potrebujemo za izdelavo spletne aplikacije(igre) ?

 

AAA(AUTHENTICATION, AUTHORIZATION, ACCOUNTING)


7.predavanje

 

AAA (authentication, authorization,accounting)

Authentication (avtentikacija)

Kdo je pravzaprav oseba s katero se pogovarjam

Na podlagi začetnega prepričanja o identiteti , se ohranja identiteta skozi pogovor. Borut in Ana se zmenita za simetrični
ključ in na podlagi tega ohranjata identiteto skozi pogovor. Ana mora vedeti nekaj o Borutu, po čemer razpozna Boruta
(skupna skrivnost).
Avtentikacija z gesli je v večini primerov zadovoljiva z dodatki. 

Napadi na gesla 

The S/KEY One-time password system , izziv ne gre ni koli čez internet . Ščiti pred zunanjimi pasivnimi napadi.
Ne ščiti pri aktivnih napadih. Geslo je 64 bitno. Pri hash funkciji uporablj a MD4. Iz nj ega se je razvil OTP.

- Prisluškovanje, kraja v prenosu

- Vlom v sistem, kraja shranjenih gesel

- Ugibanje gesel, št. vtipkanih gesel

Obramba pred krajo gesla 

Obramba z uporabo varne kriptografske povezave - pošlje
geslo in nihče ne more prisluškovati. Težava je narediti tako povezavo. Zaščita za napad s ponovitvijo je vsakič spremeniti
poslano geslo. Dodatna zaščita, izziv se kar naprej spreminja, izziv (naključen niz enic in ničel - XOR z geslom + kodi rano z
javnim ključem).

- Uporaba varne kriptografske povezave

- Varovanje sistema, gesel

- Omejeno št. poskusov vpisa 

Na spletu obstajajo baze ki sistematično računajo hash gesel, proti temu se zaščitimo tako, da zasolimo gesla, jim dodamo naključen niz, da je hash čim bolj naključen.
Če geslo pozabimo, mora sistem resetirati geslo. Dobimo nato povezavo, kjer vpišemo novo geslo. (One-time password)

Zaupanja vredni zaupniki 

- Posredniki za razpečevanje gesel (Key distribution center)

- Tvori ključ (geslo) za vsako novo nastalo povezavo (One time sign in)

- Ključi so veljavni kratek čas, uporablja Kerberos protokol

Posredniki za avtentikacijo 

- CA  (certification authority)

- Posrednik zagotavlja (avtorizira) geslo

- Potrdila so veljavna daljši čas, zato jih mora biti možno preklicati

Authorization (avtorizacija)

Ali ima oseba s katero se pogovarjam dostop do virov.

Kaj lahko počnemo kot avtenticirana oseba? Katere pravice imamo oz. katere storitve lahko opravljamoa oz. koristimo?

Na UNIX sistemih, ko se prijavimo, smo člani nekatere skupine(-in), ki lahko uporablja določene storitve.
Dostopovna matrika je zelo splošen model, ki ga sistemi uporabljajo za avtorizacijo:

  storit. 1 storit. 2 storit. 3 storit. 4
skup. 1     ok     ok    
skup. 2       ok      ok
skup. 3     ok     ok    ok    ok
skup. 4     ok      

Hrani se lokalno v datotekah, vendar je problem z posodabljanjem in jo je potrebno hraniti tudi na strežnikih.

V OS poznamo tudi kolobarni sistem, kjer skupina v zunanjem kolobarju opravlja vse notranje storitve, vendar tukaj ne moremo narediti poljubne kombinacije, medtem ko v dostopovni matriki lahko.

 

Accounting (beleženje)

Kdo je uporabil kakšen vir, kdaj je uporabil vir

Potrebno je beležiti kakšen dogodek se je zgodil, kje se je zgodil, kdaj se je zgodil,...
Beleženje je standardizirano. Ena vrstica v zapisu predstavlja en dogodek.

SYSLOG Protocol

Vsi računalniki hranijo zapise na enem mestu.
Definira kako se zapisi o dogodkih prenašajo med dvema računalnikoma.

Protokol je definiran v treh plasteh: 

  • vsebina (sama vsebina)
  • aplikacijska (generiranje, hranjenje, ...) namenjena da imamo lahko vmesni strežnik
  • transportna (spravi na in z žice)

 

Avtentikacija ljudi

Kako?

  1. uporaba gesla
  2. avtentikacijski pripomočki
  3. biometrične značilnosti

Za 2. in 3. možnost rabimo dodatno programsko opremo.

Gesla

Gesla ne smejo biti preprosta hkrati pa tudi ne preveč zapletena in jih je treba menjati sistematično. Če geslo pozabimo rabimo varno pot po kateri ponudnik sporoči odjemalcu začasno geslo ali pa njegovo ponastavitev.

Avtentikacijski pripomočki

  • kartice; so le nosilci informacije
  • pametne kartice; vsebuje računalnik, ki ščiti informacijo in za dostop potrebujemo geslo.
  • kriptografski računalniki; tvorijo časovno odvisnost gesla

Biometrične značilnosti

Nadomestijo geslo, so neprenosljive in unikatne za vsakega človeka (retina, prtni odtis, razpoznava obraza, zenica,
glas, ...).

Postopek avtentikacije

  • neposredno
    • prijava na konzolo računalnika
    • oddaljen dostop: telnet (TELNET Protocol, RFC 139), ssh
  • ad hoc način
  • z uporabo protokola

Protokoli za avtentikacijo

  • PPP in PAP: Nadomešča povezavno plast. Na začetku seje je potrebna avtentikacija. Ne potrebujemo naslovov, ker imamo točno znanega pošiljatelja in prejemnika. Osnova prenosa je okvir. PPP ima svoj nazorni protokol LCP, ki nastavlja raznične lastnosti in vrsto razpršilne funkcije.
  • PAP: Gesla se prenašajo v čistopisu ( brez enkripcije) - ni varen. V uporabi če server ne podpira CHAP.
  • CHAP: Narjen je za PPP. Vezan je na katerikoli prenosni protokol. Zasnovan je na osnovi izziva, ki pa se menja. Je tri koračni protokol, koraki pa se pri PPP protokolu ponovijo poljubno.
  • MS-CHAP: PAP in CHAP nista omogočala spremembe gesla zato je nastal MS-CHAP
  • EAP: Je le okvir za protokole saj definira zgolj obliko sporočil. Namenjen izbiri protokola za avtenticiranje. Način avtentikacije se doreče med odjemalcem in strežnikom. 

 

PROTOKOL RADIUS

RADIUS = avtentikacija + avtorizacija + beleženje

Nek uporabnik  vzpostavi osnovno povezavo, potem se avtenticira. Na podlagi avtenticiranja se ga avtorizira (katere storitve lahko koristi) in potem se še beleži kaj koristi (beleženje).
Radius arhitektura:
  sestavljena iz streh strank: uporabnik, NAS (RADIUS-ov odjemalec), RADIUS (ki je lahko tudi namestni strežnik za drug RADIUS strežnik)


Pri komunikacij NAS <---> RADIUS (AA.) se uporablja protokol UDP, zato da so RADIUS (proxy) strežniki manj obremenjeni, saj je UDP majhen, brez stanj, zelo malo zahtev po virih...
Pri tej komunikacij NAS pošlje RADIUS-u Access Request in RADIUS mu lahko odgovori za Access Accept, Access Reject ali Access Challenge (kjer hoče uporabnika še malo preverit)
Access Request lahko zahteva avtentikacijo in zato se RADIUS preko enega od avtentikacijskih protokolov (PAP, ...) direktno poveže z uporabnikokm in tako NAS razbremeni avtentikacije. (eduroam)

Pri beleženju odjemalec pošlje stvar, ki naj se beleži in RADIU odgovori samo z ja sem beležil. (če je proxy, lahko zahtevo pošlje naprej)

 

RADIUS medstrežnik in področja
Uporabnike se razdeli na več sfer oz. področij. Vzpostavitev sodelovanja med področji, za katere je zelo pomembno da si zaupajo (tako kot potni list velja v drugi državi...)

RADIUS protokol uporablja UDP prenosni protokol, ki pa ni varen, zato je za to varnost potrebno dodatno poskrbeti.

Pri (AA.) se je potrebno prepričati da je uporabnik res povezan z pravim strežnikom, za kar se uporabljajo podpisi. Vendar se tukaj ne ščiti zahteve odjemalca.

Pri beleženju je potrebno ščititi promet v smeri od odjemalca, saj mora strežnik vedeti da dogodek res prihaja od pravega odjemalca. Tudi tukaj se uporablja podpisovanje paketov.
Podpis tukaj šliti odjemalčevo zahtevo za beleženje.

Napadi: 

  • Napad s ponavljanjem
  • napad srednjega napadalca
  • razlika med (aa.) in (..A) delom povezave

DIAMETER protokol

Je podoben protokolu RADIUS, vendar je novejši in varnejši, a v uporabi danes še ni razširjen.

 

 

VARNOST


8.predavanje

 

 IPSec

Varnost med dvema napravama lahko zagotovimo na vsaki plasti ISO/OSI modela. Na 3., omrežni plasti, za to lahko poskrbi IPSec (IP security protocol). Ta nam ponuja zakrivanje podatkov višje od tretje plasti, zagotavlja avtentikacijo izvor (pošiljatelj se mora avtenticirati pri sprejemniku, obratno ni potrebno), integriteto podatkov in zaščito pred ponovitvijo komunikacije (replay attack). IPSec je bil prvotno razvit kot varnostna zahteva v IPv6 protokolu. Ker pa se ta ni prijel tako hitro, kot so pričakovali, je bil posebej razvit še za IPv4. Sta pa implementaciji popolnoma enaki z le eno majhno razliko in sicer to, da je IPv6 IPSec vgrajen v glavo (polje next header).

IPSec ponuja dva protokola za varovanje: AH (Authentication Header) in ESP (Encapsulation Security Payload). Kot že ime pove, prvi implementira avtentikacijo in integriteto podatkov, drugi pa poleg tega zagotavlja še zaupnost podatkov, torej enkripcijo (simetrična, asimetrična).

Ker omrežna plast skrbi za dostavo paketa med dvema točkama (torej enosmerna povezava), tudi IPSec deluje samo v eni smeri. Če bi želeli IPSec tudi v drugi smeri komunikacije, bi to pomenilo novo instanco IPSec-a. Vsaki taki vzpostavitvi IPSec komunikacije pravimo SA (Security Association). Če torej nek strežnik komunicira z n odjemalci v IPSec protokolu, vsakemu v obe smeri, potem to pomeni 2n + 2 SA-jev. Vsaka naprava, ki ima vzpostavljen SA, ima svojo lokalno SAD (Security Association Database) bazo v kateri hrani vse zapise o vseh možnih komunikacijah. V tej bazi se shranjujejo:

  • SPI (Security Parameter Index) - 32-bitni id
  • Izvorni in ponorni IP
  • vrsta enkripcije (AES-CBC, 3DES-CBC, AES-CTR, DES-CBC) in ključ
  • vrsta preverjanja integritete
  • ključ za avtentikacijo (HMAC-SHA1, AES-XCBC-MAC, HMAC-MD5)

IPSec definira dva načina komunikacije - transport in tunnel mode. Transportni način je implementiran med končnimi odjemalci, tunelski pa je transparenten končnim odjemalcem in je implementacija med usmerjevalniki ali usmerjevalnikom in uporabnikom. Prvi kriptira le glavo paketa, drugi pa tudi podatke (ker se pravi pošiljatelj in prejemnik skrijeta znotraj paketa, doda pa se nova glava, ki vsebuje IP-je naprav, ki uporablja IPSec). Če recimo pogledamo sliko na prosojnici št. 4 (http://lusy.fri.uni-lj.si/files/courses/fri-courses/kpov/Predavanja/ppt/P9-Varnost/P09-Varnost-prosojnice.pdf), sta podružnica in glavna pisarna v tunelskem načinu, medtem ko je delavec na terenu v transportnem načinu.

Na prosojnicah je tudi lepo narisano kako se spremeni paket v IPSec tunelskem načinu in ESP delovanjem (št. 10-14). Opisal bom zato le, kaj predstavlja posamezno polje v novo nastalem paketu:

  • Nova IP glava - Izvorni in ponorni IP naslov usmerjevalnikov
  • ESP glava
    • SPI - identifikator SA-ja
    • Seq - neka številka, ki določa št. zaporednega paketa. Služi tudi kot zaščita proti napadu s ponavljanjem (replay attack), je torej tudi žeton
  • Originalna IP glava - Izvorni in ponorni IP vmesnikov
  • Originalni IP podatki
  • ESP rep
    • padding - polje, ki razširja polje originalnih IP podatkov, da se kriptirana vsebina lahko razširi na ustrezno šifrirno velikost bloka
    • pad length - velikost padding polja (v oktetih)
    • next header - tip naslednega header-ja. Vrednost predstavlja IP protokol - http://en.wikipedia.org/wiki/List_of_IP_protocol_numbers
  • ESP auth - polje za preverjanje integritete (razprševalna funkcija)

SPD (Security Policy Database) določa ali se uporablja zaščita za določen datagram - glede na izvorni in ponorni IP, ter tip protokola. SAD določi kako se zaščiti.

IKE

IKE (Internet Key Exchange) je protokol za izmenjavo ključev preko interneta. IPSec uporablja IKE, da lahko vzpostavi SA povezav. Na prosojnicah je lep primer vzpostavljenega SA-ja, ki predstavlja kakšne podatke določi IKE protokol. Poteka v dveh fazah: V prvi fazi se preveri identiteta obeh strani (avtentikacija) - lahko s certifikati (PKI - public key infrastructure) ali pa z PSK (pre-shared key). Dobimo dvosmeren IKE SA, ki pa je ločen od IPSec SA.  V drugi fazi pa se zgenerira SA (vsi potrebni ključi). Prva faza lahko poteka v dveh načinih  - agressive (obe strani se predstavita, je hitrejši, a razkriva identitete) in main (skrije identiteto, a je daljši).

SSL

SSL (Secure Socket Layer) je razvilo podjetje Netscape, kot TLS (Transport Layer Security) pa je definiran v RFC 2246. Danes je to zelo široko uporabljen varnostni protokol. Deluje na 4. (transportni) plasti ISO/OSI modela in sicer nad TCP protokolom, ki vzpostavi povezavo v obeh smereh. Nad protokolom UDP ga zaradi nevzpostavljene dvosmerne povezave torej ni mogoče uporabljati. Zagotavlja zaupnost, integriteto in avtentikacijo (strežnika, lahko tudi odjemalca - PKI). Pri tem uporablja več ključev, ki se spreminjajo.

Poenostavljeni SSL

  1. Rokovanje - Med rokovanjem se točki avtenticirata (s certifikati - PKI) in izmenjata ključ - MS (Master Secret - glavni ključ). Iz tega ključa so izpeljani vsi nadaljni ključi. Nekaj bitov določi ena in nekaj bitov druga naprava.
  2. Izpeljava ključa - izpeljejo se 4 ključi, 2 ključa za zakrivanje, po eden vsako stran in še 2 ključa za preverjanje integritete, zopet po eden za vsako stran. Ključi se izpeljejo iz glavnega ključa in dodatnih naključnih podatkov.
  3. Pošiljanje podatkov - Celotno sporočilo se razbije v zapise - to zagotavlja vmesno preverjanje integritete podatkov. Pri računanju pa se upošteva tudi številka paketa in tip zapisa. Prvi z žetonom preprečuje napad s ponovitvijo, drugi pa preprečuje predčasno preprečevanje seje. Če je vrednost tip-a 0, to pomeni, da se prenašajo podatki, če pa je tip 1, pa to pomeni zaključek seje.
  4. Zaključek seje - Uporabljajo se posebna sporočila za varno zaključevanje seje.

Pravi SSL

Ko se povezava vzpostavlja, odjemalec pošlje ClientHello sporočilo, ki vsebuje najvišjo TLS verzijo, ki jo podpira, naključno število (žeton), seznam podprtih enkripcijskih algoritmov in predlaga kompresijsko metodo. Strežnik odgovori z ServerHello sporočilom in izbranimi: verzijo protokola, naključno število (žeton), enkripcijo in kompresijo. V naslednjem koraku strežnik pošlje Certificate sporočilo in konča z SeverHelloDone spročilom, ki pomeni, da je strežnik končal z pogajalsko fazo vzpostavljanja povezave. Odjemalec odgovori z ClientKeyExchange sporočilom, ki vsebuje PMS (Pre Master Secret) iz katere se izračuna MS. PMS je kriptiran z javnim ključem strežnika. Obe strani iz MS izračunata vse potrebne ključe. Odjemalec pošlje še ChangeCipherSpec, s katerim strežniku pove, da bo v komunikaciji sedaj vse kriptirano in da je ustrezno avtenticiran. V Finished sporočilu pa odjemalec pošlje še MAC vseh sporočil rokovanja. Strežnik odgovori z ChangeCipherSpec s čimer potrdi avtentikacijo in začetek pošiljanja kriptiranih sporočil. Sledi pošiljanje sporočil.

MS dobimo iz žetona odjemalca in strežnika, ter PMS, ki se uporabijo v funkciji, ki izračunava psevdo-naključna števila. Ko MS in nove žetone vstavimo v drugi naključni generator dobimo MAC, enkripcijske in inicializacijske vektorje za strežnika in odjemalca (različno). Incializacijski vektorji so potrebni pri bločni kriptografiji - AES in 3DES.

Operativna varnost

Varnost v omrežju

Omrežna varnost vsebuje razna pravila, politike in mehanizme, ki omogočajo nadzorovanje in preprečitev nepooblaščih dostopov, zlorabe itd, nekega omrežja. Glavni izziv varnosti je, ugotoviti kateri promet oz. uporabniki so dobronamerni in imajo dostop in pravico do virov, kateri pa niso dobronamerni in v večini primerov nam želijo na nek način škodovati. Tak promet oz. dostop želimo zaznati in blokirati. Najpogosteje administrator nekega omrežja uporabnike deli na:

  • dobre fante (good guys): uporabniki, ki legitimno uporabljajo vire omrežja in/ali pripadajo organizacije

  • slabe fante (bad guys): vsi ostali, njihove dostope moramo skrbno nadzorovati

Za doseganje zgornjih ciljev uporabimo naslednje tipe programske opreme:

  • požarna pregrada (firewall)

  • sistem za zaznavanje vdorov (IDS, intrusion detection system)

  • sistem za preprečevanje vdorov (IPS, intrusion prevention system)

 

Požarna pregrada (firewall)

V večini primerov imamo naše lokalno omrežje povezano na internet preko ene točke oz. povezave (tudi če imamo več povezav na internet zaradi katerihkoli razlogov, ta številka spet ni toliko velika). Zato je tudi logično, da požarno pregrado postavimo na to točko, saj se veliko bolj bojimo napadov od zunaj kot znotraj. Požarne pregrade lahko dobimo tako v softwareski različiti, kot tudi hardwareski, odvisno koliko dobro in zanesljivo hočemo. Služi temu, da popolnoma nadzoruje promet navzven in navznotraj omrežja. Njegove naloge lahko razdelimo na sledeče:

  • Pregleda (filtrira) vsak paket, ki gre mimo povezave (bodisi ven, bodisi noter) in se glede na neka pravila in politike odloči kaj bo z njim naredil. Lahko ga spusti mimo (se pravi paketa ne zazna kot nevarnega), lahko ga pa vrže stran (se pravi zazna paket kot škodljivega in ga takoj zavrne)
  • Sama požarna pregrada pa je imuna na napada, saj če temu ne bi bilo tako, potem ni nobenega smisla imeti to programsko opremo

Groba skica omrežja, kamor postavimo požarno pregrado.

firewall

Imamo seveda več načinov kako promet filtriramo in na kakšen način definiramo ter uporabimo razna pravila ali politike. Delimo jih na 3 glavne načine:

  • Filtriranje paketov (ang. packet filters)
  • Filtriranje paketov  v kontekstu (ang. stateful filters)

  • Aplikacijski prehod (ang. application layer)

Prva dva načina se več uporabljata kot zadnji.

Filtriranje paketov

Filtriranje paketov deluje tako, da pregleda vsak paket, ki gre v ali pa pride iz interneta. Ko paket ujame z nekim filtrirnim pravilom, ga nato (glede na pravilo), bodisi zavrne, bodisi spusti mimo. V primeru da paket zavrne je možno, da to stori tako, da ne obvesti pošiljatelja, lahko pa mu pošlje sporočilo z napako.

Pri filtriranju paketov se požarna pregrada ne zmeni, ali je paket del kakšne povezave ali ne. Ne shranjuje nobenega stanja, tako da vsak paket obravnava enakovredno in ni popolnoma nobene razlike če je prispeli paket mogoče del obstoječe komunikacije, ali pa je mogoče zahteva za novo povezavo. To omogoča hitrejše delovanje in manjše strojne zahtevnosti, vsaj mu ni potrebno shranjevati informacij o stanjih, kar pa, če imamo veliko povezav, lahko postane zelo veliko podatkov in bi potrebovali veliko prostora, kot tudi procesiranje paketov bi trajalo dlje, saj bi moral sistem predelati ali je paket v raznih sejah.

Ali bo požarna pregrada paket spustila naprej, se odloči glede na pravila, ki so lahko definirana glede na:

  • IP izvornega/ponornega naslova

  • številke IP protokola: TCP, UDP, ICMP, OSPF itd.

  • TCP/UDP izvornih in ciljnih vrat

  • tip sporočila ICMP

  • TCP SYN (vzpostavitev povezave!) in ACK bits (ACK=1 velja za prvi segment pri povezovanju)

Filtreranje paketov deluje primarno na prvih 3eh plasteh ISO/OSI modela, kar pomeni, da požarna pregrada načeloma ne gleda višje plasti. Kar pomeni da nas tako filtriranje ne brani pred napada na višjih (transporna in aplikacijska) plasteh, vsaj se sistem odloča, predvsem na podlagi podatkov iz druge in tretje plasti (IP, PORT, MAC).

Primeri:

  1. Blokiraj dohodne datagrame z IP protokolom 17 (UDP) in izvornimi ali ciljnimi vrati 23 (telnet)
    • rezultat: filtriramo vse dohodne in odhodne UDP komunikacije in telnet povezave
  2. Blokiraj dohodne TCP segmente z zastavico ACK=0
    • rezultat: onemogočimo zunanjim odjemalcem, da vzpostavijo povezavo z notranjimi odjemalci, dovolimo pa povezovanje v obratno smer (navzven) 

 

filtering

 

Filtriranje paketov  v kontekstu

Stateful filter si zapomne stanje povezav (npr. TCP in UDP) in si hrani pomembne atribute te povezave. Tem atributom se reče stanje povezave in vsebujejo npr. IP naslovi udeležencev, porti in oštevilčenje paketov, ki se prenašajo. Stateful filtri poleg pravil, ki so definirana že za navadno filtriranje, upošteva še stanje povezave, recimo dovolil bo TCP promet od zunaj, za katerega ve, da je del povezave, ki jo je začel klient vznotraj, zavrnil pa bo zahtevo za povezavo od zunaj.

Stateful filter vsebuje še nekaj dodatnih lastnosti:

  • Zabeleži si vzpostavitev povezave (SYN) in njen konec (FIN): na tej podlagi odloči, ali so paketi smiselni

  • Po preteku določenega časa obravnava povezavo kot neveljavno (timeout)

  • Uporablja podoben dostopovni seznam, ki določa, kdaj je potrebno kontrolirati veljavnost povezave (angl. check connection)

Aplikacijski prehodi

Prednost aplikacijskih prehodov je, da "razumejo" določene aplikacije in protokole (npr. FTP, DNS, ...). To mu omogoča, da lahko zazna ali kateri neželjeni protokol želi priti mimo požarne pregrade, tako da ustvarja povezave na drugih (dovoljenih) portih, ali pa če je dovoljen protokol zlorabljen. Poleg tega pa omogoča filtriranje storitev, glede na to, kateri uporabnik jo želi uporabiti. 

Slabosti:

  1. Če uporabniki potrebujejo več aplikacij (telnet, HTTP, FTP itd.), potrebuje vsaka aplikacija svoj aplikacijski prehod

  2. Odjemalce je potrebno nastaviti, da se znajo povezati s prehodom (npr. IP naslov medstrežnika v brskalniku)

  3. Če uporabljamo SSL aplikacijski prehodi ne pridejo v upoštev, saj je vsa vsebina zakriptirana in nemorejo nadzorovati prometa.

Primer:

  1. Vsi uporabniki vzpostavljajo telnet povezavo preko prehoda
  2. Samo za avtorizirane uporabnike prehod vzpostavi povezavo do ciljnega strežnika. Prehod posreduje podatke med 2 povezavama
  3. Usmerjevalnik blokira vse telnet povezave razen tistih, ki izvirajo od prehoda

Sistem za zaznavanje vdorov (IDS)

Požarna pregrada filtrira samo glave paketov. Kar pomeni, da veliko napadov ne more zaznati, zato potrebujemo programsko/strojno opremo, ki bo poleg glav, ki jih pregleda požarna pregrada, pregledala tudi podatke znotraj paketov za morebitne napade. Glavna naloga sistema je, da o morebitnih napadih obvesti administratorja omrežja in/ali sistem, ki bo na to reagiru. IDS načeloma ne preprečuje napadov, za to uporabimo IPS.

Sistem IDS odkriva napade na dva različna načina:

  1. Opazovanje netipičnega prometa (Statistical anomaly-based)

    • Sistem opazuje in določi kaj je normalna aktivnost/delovanje omrežja. Naprimer uporabljena pasovna širina, uporabljeni protokol, uporabljeni porti, ...
    • Kadar se začne omrežje obnašati drugače od "normalnega" obvesti administratorja o tem.
    • Primer: Exponentno povečanje povezav na portu 123
  2. Primerjava s shranjenimi vzorci napadov (Signature-based)

  • Vzorci napadov lahko hranijo izvorni IP, ponorni IP, protokol, zaporedje bitov v podatkih paketa, lahko so vezani na serijo paketov

  • Varnost je torej odvisna od baze znanih vzorcev; IDS/IPS slabo zaznava še nevidene napade

  • Možni lažni alarmi

  • Zahtevno procesiranje (lahko spregleda napad)

Znan IDS/IPS programska oprema:

snort

SNORT - odprtokodni IDS za Mac OS X, Linux in Windows, vsebuje ogromno bazo znanih napadov, ki jo posodabljajo kar uporabniki.

PODATKI ZA DELOVANJE OMREŽJA


8.predavanje

 

Opravka imamo z imeniki ali mapami (directory service). V mapi so združeni posamezni prilastki (attributes). Mape lahko vsebujejo prilastke različnih tipov - nekateri so obvezni, nekateri dovoljeni. Imeniška struktura je hierarhična. Struktura imenikov in prilastkov v njih definira shemo (npr. cel datotečni sistem je shema).

Prilastki

  • vsak prilastek ima svoje ime
  • prilastek je definiran z imenom in potjo (lokacijo)
  • v isti mapi imalo lahko več prilastkov z istim imenom, a z različnimi vrednostmi
  • ista imena v različnih mapah predstavljajo različne prilastke

Predmeti in imenski prostor

  • predmeti ali objekti ( = objects, entries) so dejanske vrednosti, ki jih hrani imeniška struktura glede na definirano shemo / predstavljajo določeno entiteto
  • predmeti vstavljeni v imenik so v vsebovalniku (= container) - vsebovalnik je podobna struktura kot slovar
  • imenski prostor - vsi predmeti v vsebovalniku so v istem imenskem prostoru (= namespace)
  • predmeti v imenskem prostoru so hierarhično oblikovani
  • med seboj moramo predmete razlikovati -> način razlikovanja izberemo pri načrtovanju imenika, uporabiti je potrebno imena ki določajo enolično in nedvoumno ime
  • predmeti "živijo" v imenskem prostoru in ne v vsebovalniku.

Razlikovanje predmetov

  • razločevalno ime (= distinguished name) - ime po katerem razlikujemo predmete
  • dva predmeta ne moreta imeti istega razločevalnega imena
  • absolutno / relativno - odvisno od hierarhije imenikov
  • razločevalno ime običajno ni shranjeno v imeniški strukturi - definirano je z pravili
  • PRIMER: Eduroam:
  • dn: dc=fakulteta,dc=univerza,dc=si (razločevalno ime je sestavljeno iz dc=fakulteta,dc=univerza,dc=si)

Imenski prostor in upravljanje

  • vsebina imenskega prostora je lahko porazdeljena med različne strežnike (= distribution - porazdeljena imeniška storitev) oz. prepisana na druge strežnike (= replication - z vsebino imenskega prostora še vedno upravlja izvorni strežnik, če pa en strežnik pade lahko še vedno pridobimo podatke iz drugega strežnika)

Podatkovne baze in imeniške storitve

  • običajna relacijska podatkovna baza je organizirana v tabelah
  • prilastki v imeniški strukturi so:
  • obvezni - podobno podatkovnim bazam
  • neobvezni - kot npr. null vrednosti v bazah
  • prilastki se znotraj imeniške strukture lahko ponovijo
  • prilastki in njihova struktura so standardizirani - IANA
  • predmeti so razvrščeni v imenske prostore - vsak posamezen predmet podeduje vse lastnosti starša

DNS storitev

  • DNS je imeniška storitev - domenski strežnik ima za vsako domeno svoj imenik
  • imenski prostor za DNS določa FQN (= Fully Qualified Name)
  • prilastki določajo storitve v imenskem prostoru - različne aplikacije uporabljajo različne prilastke (poštni strežnik npr. zanima prilastek MX)
  • DNS imeniška storitev ne izkorišča pojem dedovanja

Standard X.500

  • standard definira imenski prostor v katerem se nahajajo predmeti - vsak izmed predmetov je določen s svojim razločevalnim imenom
  • predmet ima lahko eno ali več (tudi ponavljajočih) vrednosti prilastkov
  • imeniška struktura sestoji iz enega samega imenika - posamezne dele imenika poslužujejo različni strežniki
  • uporablja se pri "Public Key Infrastructure"
  • X.509 je bil osnova za SPKI - določa kako si morajo slediti vrstice v neki datoteki, da le ta predstavlja veljaven certifikat
  • standard X.500 sestoji iz 4 protokolov za dostop do imeniške strukture, operacije nad strukturo (Bind za vzpostavitev komunikacije, Read, List, Search, Compare, Modify, Add, Delete, ModifyRDN)
  • za delovanje poštnega sistema v X.400 standardu je bila potrebna imeniška struktura - X.400 je zasnovan kot varen poštni protokol

LDAP - Lightweight Directory Access Protocol

  • definiran na podlagi X.500 standarda
  • protokol določa kako dostopamo do imeniške strukture - določa kako odjemalec vidi podatke pri strežniku (vseeno je kako strežnik hrani podatke)
  • zasnovan je na TCP - lahko omogočimo SSL
  • obstajata v2 in v3 različici protokola - bistvena razlika v varnosti (pri v3 se lahko sami odločimo za uporabo SSL)
  • LDAPS - v protokol je že vključen SSL
  • protokol:
  • odjemalec prične komunikacijo (vzpostavi sejo) na vratih 389 (LDAP) oz. 636 (LDAPS)
  • na voljo ima nekaj ukazov:
  • start TLS - preklop na SSL način komunikacije,
  • bind - želja po avtentikaciji in ostalih možnih parametrih komunikacije,
  • unbind - zaključek komunikacije,
  • search - iskanje posameznih predmetov v bazi, prikaz le teh je lahko odvisen od tega ali je odjemalec avtenticiran ali ne
  • compare - možnost primerjave vrednosti predmeta -> ni potrebno razkriti prave vrednosti predmeta, samo preverjamo enakost (primerno za gesla) -> dobimo samo odgovor "yes" v primeru ujemanja
  • add -  dodajanje predmeta v bazo
  • delete - brisanje elementa iz baze
  • modify -  spremenimo vrednosti prilastkov predmeta, ki niso del razločevalnega imena - za spremembo razločevalnega imena uporabimo ukaz modify DN
  • abandon - prekine izvajanje zahteve, ki smo jo poslali (iskanje, primerjanje, popravki baze)
  • extended - generična možnost poljubnega dodatnega ukaza
  • LDAP sheme, razredi in prilastki
  • shema združuje različne predmete in prilastke
  • prilastki so združeni v razrede - "objectClass"
  • razredi so opisani z zapisom ASN.1
  • so del hierarhije in dedujejo lastnosti starša
  • določajo obvezne in neobvezne prilastke
  • prilastki opisujejo lastnosti
  • opisani z zapisom ASN.1
  • na nek način predstavljajo definicijo tipa
  • udejanjenje prilastkov hrani vrednost
  • opisujejo še sintakso, način primerjave ipd.
  • za prenašanje podatkov med LDAP strežniki je definiran format LDIF
  • RADIUS uporablja LDAP strežnik za avtentikacijo

 

IEEE 802


9.predavanje

 

IEEE 802

Ieee 802 je skupina protokololov pod isto oznako.

Od kje 802? Ko so se začeli razvijati protokoli, so rekli da bodo definirali standarde. Internet ingeneering task force --> rfc, jih pišejo. Zakaj rabimo standard? Da se z različno opremo med seboj znamo pogovarjati.

Primrer semafor:

Evropa: Siemens postavlja semaforje, nobeni drugi niso kompatibilni z njihovimi. Niso standardizirani.
ZDA: So standardizirani. Se znajo pogovarjati tudi s semaforji drugih proizvajalcev.

 

INSTUTUTE of ELECTRICAL and ELECTRONIC ENGINEERS. IEEE -definirajo standarde. To so večinoma "prostovoljci", večinoma izobraženci. Podpirajo jih tudi velike koorporacije. Leta 1980, ustanovljeno prvo delovno telo s tega področja, ki so se pogovarjali o standardizacji.
 

Arhitektura IEEE 802

Razdeljena na 2 dela. Mrežna, tretja plast je prepuščena ietf, drugo so razdelili na LLC in MAC. Ključen je ločen dostop do medija in naslavljanje. LLC - logična povezava med dvema enotoama.

 

 

Naprave na različnih medijih lahko tudi komunicirajo med seboj. 802 pokrije ožičeno in ne ožičeno. Wifi + ožičene naprave znajo komunicirati med seboj.

 

 

Družina 802 je sestavljena iz poddružin.  - OPIS JE NA PROSOJNICAH

povzetek: 

  • 802.3 opisuje ožičena omrežja, ethernet, ki je definiran približno tako. Na začetku gre za pretvorbo niz bitov v en bit in obratno. Ena od stvari je tudi, da ko pride to collisna, obe strani nekaj časa čakata.
  • Začne se z enicami .... i.t.d   -  vse to je standrad, definiran v  802.3.
  • 802.1: kaj s prejšnjim narediti (mostički in upravljanje omrežji).
  • 8024:  žetonski obroči
  • 802.5: mac plast v obročih.

Imamo 3 - 802  brezžična pomembna omrežja.
.11 - wifi
.15 - pan, bluetooth
.14 - kabelski modemi ki so šli v pozabo
.16 - usmerjeno brezžično omrežje

okvir

IEEE OKVIR. različne družine imajo lahko različno število naslovov.

 

Kako je standardizirano razpošiljanje v IEEE

Kdorkoli je na mediju, vsi slišijo kar oddaja. Kaj narediti z okvirjem ko ga dobiš? Pri usmerjevalnikih se ve.
Ko A in B dobita okvirje, se razpošljejo vsem, ker ne vejo kaj z njimi narediti.
 

Primer pošiljanja okvirja namenjeno "H" na sliki. (Obvezno glej sliko)!!:

 

B dobi okvir in ko B pošilje A, le ta ne ve kaj s tem okvijrjem počet. B potem pošlje naprej. C spet ne ve kaj narest,
Pošlje D, do konca in na vsa vozličša vmes.
Ko je srednji dobil je vedel od kje je prišlo. A se odloči, da bo B-ju poslal okvir, ta  pošlje ga vsem na istem omrežju, ker pa serdnji ve, kje je, pač da ni na zgoraj desno, se vzpostavi mostiček (Da nastavimo mostiček moramo ponavadi kje obkljukati checkbox). Torej E v drugem pošiljanju okvirja ne dobi več. 
Ne sme priti do ciklov, potrebno jih je prepoznati in jih ukiniti.

 IEEE 802.1 POD-DRUŽINA

802.1b: upravljanje LAN/MAN (umaknjeno)
802.1d: mostički na MAC plasti
802.1e - 802.1g: umaknjeno
802.1h: Ethernet MAC mostički
802.1q: navidezni LAN(VLAN)
802.1x: nadzor priključitve na mrežo (Port Based Network Access Control) -> Pomemben za nas
802.1ab: postaje in nadzor dostopa do medija ter iskanje povezljivosti
802.1ae: varnost na MAC plasti
802.1ar: varno identificiranje enot
802.1as: časovno usklajevanje in časovno občutljive aplikacije v mrežah z mostički
802.1ax: združevanje povezav (link aggregation)
802.1ba: audio/video sistemi z mostički

Celotna poddružina je narejena tako da deluje na LLC plasti.

NADZOR PRIKLJUČITVE V MREŽO (IEEE 802.1X)

Nadzor priključitve v mrežo je priklop v katerokoli mrežo definirano v družini IEEE 802.1x. Ta družina najbolje deluje v brezžičnih omrežjih, lahko pa se uporabi tudi v ožičenih omrežjih vendar je tukaj problem priklopa z žico.

Dostop v mrežo je neka storitev, ki omogoča uporabo drugih storitev, npr: dostop do medmrežja, brezžičnega omrežja,...
Raba te storitve je lahko prosta ali nadzorovana. 
Za nadzorovano rabo storitve potrebujemo ugotoviti, kdo je morebitni uporabnik in ali ima pravico rabe storitve. 
Zato moramo v našo mrežo vpeljati AAA da bo nekdo lahko varno nudil svoje omrežje nekemu odjemalcu.

Mreža bo skrbela za to da bo prestavljala okvirje -> poslala vsem, ki so priključeni na lokalni mreži. V vsebini paketa je lahko IP Paket ali karkoli drugega.

Samo avtorizirani uporabniki se lahko povežejo na omrežje. 
Omejitev dostopa o omrežja preprečitve: Hudobneži, premala pasovna širina

Rabimo ključ da ga nebo vsak na svetu vedel, vedeti hočemo kdo je tisti ki se priključi na naše omrežje:

IEEE 802.1x ARHITEKTURA

Imamo 3 gradnike:
- odjemalec (supplicant)
- avtentikator (autenthicator)
- avtentikacijski strežnik (authentication server)

Odjemalec se prijavi avtentikatorju, ki pri avtentikacijskem strežniku preveri njegovo avtentiteto in ali je avtoriziran za dostop do mreže.

Odjemalec in avtentikator se morata pogovarjati na tak način da tisti ki prisluškuje ne razume kaj se pogovarjata.

Protokol za dostop v omrežje RADIUS. RADIUS jim je uspelo spraviti na 2 plast -> omogočili so nekomu ki nudi dostop do mreže da lahko svoje storitve ponudi clientu.

IEEE 802.1x EAPOL

EAP -> Odjemalec se na različne načine avtenticira pri avtentikatorju, njegova vsebina pa se neodvisno prenaša po povezavni plasti.

Standard IEEE 802.1x definira EAP na povezavni plasti - EAP over LAN -> EAPOL protokol

Kasneje je bil EAPOL uporabljen še v drugih podružnicah IEEE 802.1x:

                                                  - 802.1ae: varnost na MAC plati
                                                  - 802.1ar: varno identificiranje enot

EAPOL je definiran tako, da se njegova vsebina prenaša neposredno v Ethernet okvirjih z vsebinsko značko 0x888E.

Ne bo prenašal vseh okvirjev ampak samo okvirje z protokolom za avtentikacijo. Ostale pa zavrže.

IEEE 802.1x DELOVANJE

INICIALIZACIJA: avtentikator zazna novega odjemalca -> omogoči mu samo IEEE 802.1x komunikacijo(od tu naprej deluje EAP protokol).

POVABILO: avtentiktor (periodično) pošlje odjemalcu, povabilo da naj se mu predstavi. Odjemalec se predstavi avtentikatorju -> RADIUS. Avtentikator je sedaj vmesni strežnik. Avtentikacijo izvede avtentikacijski strežnik. Med avtentikatorjem in avtentikacijskim strežnikom je pomembno zaupanje!!!

POGAJANJE: se izvaja med odjemalcem in avtentikatorjem v skladu z EAP protokolom: kateri avtentikacijski protokol, izziv-odgovor.

AVTENTIKACIJA: sama avtentikacija odjemalca.

Avtentikacija - > ko je strežnik avtenticiran se omogoči dostop do mreže.

EDUORAM

Avtentikacija se dogaja na uporabnikovi domači univerzi in tako dobi dostop do našega omrežja zaradi avtentikacije na njihovem domačem omrežju (dogovor med univerzami)

 

VABLJENA PREDAVANJA


10.predavanje

 

INFORMACIJSKA VARNOST.ZIP

Vsebina:
-> NSA zgodba
-> Tehnologija zaščite
-> Revizija varnosti
-> Varnost v razvoju programskih rešitev
-> Postavitev in upravljanje varnostnih rešitev
(Kako se varujemo, kaj in kako se dela, kaj je treba upoštevat, pregled)
-> Postavljamo, gledamo
-> Etični hekerji
-> Pregled slovenskih firm

OPERACIJA RDEČI OKTOBER
-> Rusi v ozadju
-> STUXNET - vsilen vdor (kako virus preneseš preko dveh usb-jev)
-> Bogatenje urana (IRAN) - vdor ZDA
-> kako spravti skozi dve ločeni coni virus, daš na usb in daš nekomu, da nese ta usb v prvo cono
in še nekomu, ki ima dostop do druge (notranje) cone
-> ciljno usmerjen virus
-> operacija naj bi bila ruska, a izdelovalci kitajci

Najlažje vdreš, če človeka prosiš če te spusti noter.
Veliko virusov v priponkah elektronskih pošt.
Obstaja tržišče za izdelavo takega softwera.
Podpora za malware (kjer ti ponujajo tudi garancijo, če nisi zadovoljen)
Več mehanizmov varnosti.

NSA ZGODBA
Kaj vemo? Prisluškujejo vsemu internetu. 20 miljard dogodkov dnevno. Dosegljivost podatkov
NAS analtikiom v 60 minutah. Razbili večino šifriranj. Imajo zalogo ranljivosti, ki jih
uporabljajo, če želijo vdreti (nam se ni treba bati, ker ne predstavljamo nevarnosti, vdirajo
v ciljne računalnike). Veliko firm počne slabe stvari za NSA (microsoft,...). NSA deli tehnologijo
z drugimi državami. Imenujejo se "FIVE EYES". Članice te skupine so ZDA, Kanada, Velika Britanija,
Avstralija, Nova Zelandija.

ZMOŽNOSTI NSA
Razbita večina šifriranj na Internetu. Dogovor za prisluškovanje s Telco operaterji v ZDA in Angliji.
Mrežne naprave z vključenim prisluškovanjem. Backdoor in oslabljena implementacija šifriranja (DES dolžina
ključa, CryptoAG (NSA pomagal razbiti), LOTUS (prva polovica fiksna, druga polovica spremenljiva),
_NSAKEY v Windows NT, SHA-3 (tekmovanje, dejansko slabši), ...). Napad na Tor omrežje, tor omrežje, omogoča
anonimno brskanje po internetu. (iskanje Tor uporabnikov, kdo so tor uporabniki
-> Firefox ranljivosti -> FOXACID). Hecking, npr. NSA+UK (evropske inštitucije, fizični vdor, postavl naprave)
-> BelgaCom (EU institucije). FOXACID: bogata zbirka za izrabo ranljivosti, uporabijo če je kdo zanimiv za njih,
imajo heke, ki še niso znani. NSA lahko naredi marsikaj.

ŠIFRIRANJE DELA - (odvisno od) IMPLEMENTACIJE

Men-in-the-middle: QUANTIM, ko je uporabnik hotel na google, je bil NSA v ozdaju (lažna predstava).

Šifriranje je samo po sebi varno. Odvisno pa je kako si jih firme implementirale.
Vsi veliki telekomi sodelujejo z NSA.

KAJ PA MI
Ni razloga za preplah, NSA nima časa za vsakega od nas.
Kako se zavarujemo oziroma kako ostanemo varni pred NSA (Bruce Schneier):
-> Skrij se v mreži (TOR)
-> Šifriraj vse svoje komunikacije (zbirajo, ne razbijajo)
-> Boj se komercialnih izdelkov
-> Zaupaj
-> Bolje simetrična kriptografija
-> Diskretne log datoteke

TEHNOLOGIJA ZAŠČITE
INFORMACIJSKA ZAŠČITA:
VČASIH (Trdnjava) -> dobro definirana varnostna področja, močna aščita med posameznimi področji, definirani ozki in dobro
nadzorovani prehodi, majhna prepustnost prehodov, zaupanje notranjosti, nezaupanje zunanjosti
DANES (Letališče, sodoben IT) -> različne vrste uporabnikov, različne pravice in dostopi, velik pretok uporabnikov,
različne vrste storitev, velika varnostna izpostavljenost, zagotovitev varsnoti: različne varnostne cone in tokovi potnikov

ŠIFRIRANJE (preskočili, to bomo obdelali na rednih predavanjih)

UPORABNIŠKA GESLA
Namenjena so za zaščito podatkov. Kako izbrati geslo. Dost velika dolžina in kompleksnost. Kje se gesla uporabljajo oziroma
uporaba gesel. Za shranjevanje, različno namenska gesla (doma, služba, banka, socialno omrežje). Postopki ob izgubi gesla. 
Skupinska gesla. Gesla, ki so pogosta v Sloveniji (123456, 111111, geslo, slovenija, 654321, adidas, lasko, ...). Najbolj 
pogosta gesla na googlu (ime hišnega ljubljenčka, pomembni datumi, datum rojstva bližnje osebe, ime otroka, rojstni kraj, ...).

REVIZIJA VARNOSTI
Računalniški sistemi v Sloveniji.
Tipične ranljivosti v IKT infrastrukturi.
1.) Nepodprti strežniški opreacijski sistemi, vdor v XP je lahek
2.) Niso naredili patcha (ni bila storejna nadgradnja) programske opreme
3.) Sistemi za upravljanje vsebin (CMS) ni nadgrajen (če želiš vdreti, se fokusiraš na to točko)
4.) Nepotrebne storitve (NTP, FTP, RDP, VNC, DB,...), vklopljene, ampak jih ne uporablja
5.) Dosegljivi testni/razvojni strežniki
6.) Privzeta gesla za administracijo oz. uporabo storitev

Glavne ranljivosti pri varnostnih pregledih v Sloveniji (aplikacije)
1.) Nepravilna avtorizacija dostopov do podatkov (slabo narejena avtorizacija)
2.) Neustrezna avtentikacija uporabnika (kako se uporablja gesla)
3.) XXS (crso-site scripting)
4.) Neoptimalno upravljanje uporabniške seje
5.) Konfiguracija in posodobljenost HTTP strežnika

MAN-IN-THE MIDLE NAPAD (uporablja NSA)
-> ARP spoofing (priklop na mrežo, preko ARP ukazov, da smo pravi, promet preko tebe)
-> Le client avtentikacija (problem)
-> Zasebna Wifi točka
-> Zasebna bazna postaja (najbližja, sam postaviš in vidiš vse)
Kako se zaščitimo, certifikati pomagajo. Problem certifikatov (obojestranska potrditev).

VARNOSTNI PREGLED (Etični heking)
-> Testiranje iz Interneta ali iz postaje
-> Testiranje zunanjega napadalca ali zaposlenega
-> Brezžične ali žične naprave
-> Mobilne naprave
-> Slepo ali znano okolje
-> Spletni strežnik? Aplikacija?
-> Izvorna koda
-> Denial of Service(Dos, DDos)
-> Socialni inženiring

OSNOVNI PRINCIPI VARNOSTI
Deminov krog, zaupnost, celovitost, razpoložljivost. Pri varnosti je zelo pomembno ali stvar dela.
Delitev odgovornosti (ena oseba ne sme narediti do konca, mora biti več oseb, pregled, odobritev).
Princip štirih oči. Princip najmanjšega privilegija (ravno toliko pravic, da lahko opravlja svoje delo).
Princip čebule-Globinska obramba -> več varnostnih mehanizmov, več nivojev. Najšibkješi člen. Umri varno.
Varnostne cone.

 

ARNES Praktični vidiki upravljanja

Praktični vidiki upravljanja

Izobraževalna omrežja
+- Namen
 +- Osnovne storitve
 +- Inovativne TK
 
Storitve Arnes
+- IPv4, IPv6, multicast, namenske povezave
+- Eduroam
+- Multimedija
 +- VoD
+- Gostovanje
 +- E-pošta, CMS, virtualni stržniki
+- NGI: Nacionalna Grid Iniciativa
 +- Grid computing za upoorabnike
+- Si-Cert, digitalna strežniška potrdila
+- Dodatne storitve
 +- Filesender
  +- Velike datoteke
 +- Planer
 +- NTP
 +- FTP
 +- usenet
 +- IRC
+- SIX
+- Registrcija domen + DNS
+- Podpora

Eduroam
+- Varnost
 +- Varovanje gesel
  +- TTLS tunel
  +- Le domača organizacija (fakulteta) vidi gesla
+- Spremljanje prometa
+- AAA

AAI
+- Prijava pri domači organizaciji

Hierarhija organizacij
+- Géant - evropsko omrežje
 +- 500gbs do Hrvaške in Avstrije
 +- CERN Atlas - 15 milijonov GB na leto
 
Omrežje ARNES
+- Prenos IP
 +- IPv4, IPv6 + QoS
+- Povezave točka-točka
 +- zahtevni projekti
 +- redundanca
 +- Oddaljeni koncerti
 
xWDM
+- Multimode vlakno
+- Multiplekserji
 +- Različne barve - različne povezave
 
+- DWDM za večje kraje
 +- Dražji
+- CWDM za manjše kraje
 +- Cenejši
 
Upravljanje
+- Nekaj tisoč naprav
+- Velika raznolikost
+- Upravljanje do usmerjevalnika organizacije
 +- QoS
 +- Varnost
 
+- Področja upravljanja
 +- Konfiguracija
 +- Stabilnost
 +- Varnost
 +- Zmogljivost
 +- Beleženje
+- Orodja
 +- Shranjevanje/spreminjanje konfiguracije
  +- Spreminjanje na večih mestih
 +- Zbiranje podatkov
  +- Topologija omrežja
 +- Zaznavanje problemov
 +- Odkrivanje vzrokov
 
 +- Ping, traceroute
 +- ssh, telnet
 +- SNMP
 +- Syslog
 
 +- Prosto dostopno programje
  +- Rancid
  +- SmokePing
  +- Cacti
  +- ...
 +- Lastne skripte
 
Upravljanje varnosti
+- Zaščita naprav
 +- ACL, požarni zidovi
+- Zaščita omrežij
+- Dnevniški zapisi
 +- Syslog, Netflow
 
 
Diagnosticiranje
+- ID-10T error
+- OS
+- Aplikacija
+- Omrežje
 +- Lokalizacija
+- Ping in traceroute nista dovolj
 +- Strežniki lahko ping ignorirajo
+- QoS
 +- Ali deluje na vseh stopnjah
+- VEČ PODATKOV
 +- Pasivne/aktivne meritve
+- Meritve na različni segmentih
 +- Znotraj domene
 +- Znotraj organizacije
 +- Med vozlišči
+- Problematika večoperaterskega okolja
 +- Različni operaterji slabo sodelujejo
 
+- Perfsonar
 +- Za akademska omrežja
 +- Periodične meritve shranjene v bazah
 +- Dostopno vsem
 +- Tudi testni promet
 
Kadri
+- Telekomunikacije
 +- Internetne komunikacije
 +- Optične komunikacije
 +- Omrežne tehnologije
 +- Nadzor in upravljanje omrežij
+- Računalništvo
 +- Sistemska podpora
 +- Programiranje (Java, PHP, Perl)
+- Vodenje projektov, tinsko delo
+- Angleščina
+- "Common sense"