Erinevus lehekülje "Kohtvõrgu kaitse" redaktsioonide vahel

Allikas: Kuutõrvaja
 
(Kohtvõrgu ühendamine Internetti)
 
(ei näidata 4 kasutaja 21 vahepealset redaktsiooni)
1. rida: 1. rida:
'''Võrgudiagnostika'''
+
===Kohtvõrk===
  
#Sissejuhatus
+
'''Kohtvõrguks''' (ingl. k. LAN - Local Area Network) nimetatakse sellist arvutivõrku, mis asub füüsiliselt piiratud alal ning mille võrguteenused on mõeldud kasutamiseks sama võrgu klientidele. Tüüpiliselt on kohtvõrgud ehitatud kasutades Etherneti tehnoloogiat, so arvutid on omavahel ühendatud koaksiaal- või keerupaari kaablitega. Kohtvõrk võib koosneda mitmest alamvõrgust, mis on omavahel ühendatud sobivate võrguseadmetega. Näiteks on koolimajasisene arvutivõrk kohtvõrk, serveriga on ühendatud kaks alamvõrku
#Ping
+
    ___________________________
#Traceroute
+
      _|_      _|_  _|_    |
#Tcpdump
+
      |___| ... |___||___|  |
#Nmap
+
                            | 
#Sissejuhatus
+
        raamatukogu        __|__
 +
                          |    |  server
 +
                          |    |
 +
                          |_____|
 +
                            |
 +
    ________________________|__
 +
      _|_      _|_  _|_           
 +
      |___| ... |___||___|         
 +
 +
        arvutiklass
  
Enamus võrku toetavaid operatsioonisüsteeme sisaldavad programme, millega saab uurida kas võrk töötab ning kui, siis kuidas see töötab. Näiteks hinnata andmevahetuskiirusi, kuulata Ethernetti pealt ja uurida millised pordid on serveritel lahti.  
+
Koolimaja serveris asuvad kasutajate kodukataloogid, sealt kontollitakse, millist printerit saab keegi kasutada ja server korraldab kohalikele kasutajatele e-posti vahetamist.
  
Ilmselt saab allpool esitatud õpetusi kasutada nii hea-kui kuritahtlikul eesmärgil, manitseme seda tegema mitte-kuritahtlikult. Tavaliselt on tuvastatav kust tehakse ping floodi või nmapiga masinad skanneeritakse.
+
===Kohtvõrgu ühendamine Internetti===
  
Näiteks toodud viiba järele saab teada, kas programm on kasutatav ka tavakasutaja (bash$) või ainult juurkasutaja (bash#) õigustes.  
+
Hiljem või varem nõuavad süsteemi kasutajad, lisaks kohtvõrgu teenustele, võimalust kasutada Internetis pakutavaid teenuseid - veeb, e-post, FTP arhiivid ja kõikvõimalikud nendest tuletatud teenused, näiteks veebipank.  
Ping
 
  
Programmiga Ping saadetakse näidatud IP aadressil asuvale masinale iga natukese aja järel IMCP sõnum, millele tavaliselt adressaat vastab sarnase vastus-sõnumiga.  
+
Tehniliselt on Internet '''laivõrk''' (ingl. k. WAN - Wide Area Network), koosnedes paljudest omavahel ühendatud kohtvõrkudest. Kohtvõrkude omavaheliseks ühendamiseks kasutatakse näiteks telefoniliine, raadiosidet, valguskaablit.  
  
Kui võrk toimib ning IP filtritega pole Pingi kasutatavad IMCP paketid keelatud, siis järgneb andmevahetus, millest annab tunnistust selline programmiväljund
+
Ühendades kohtvõrgu Internetti, saab lisaks väliste teenuste kasutamisele hakata kohtvõrgu seest pakkuma ka teistele, sh oma kasutajatele, väljapoole teenuseid, näiteks kohalik veebiserver ja e-post. Skeem kujutab Internetti ühendatud kohtvõrku
bash$ ping 193.40.10.11
+
                .. ^^  -- - )
PING www.zoo.edu.ee (193.40.0.11): 56 data bytes
+
            ((    INTERNET          )))
64 bytes from 193.40.10.11: icmp_seq=0 ttl=250 time=20.0 ms
+
        (               . . .           )
  64 bytes from 193.40.10.11: icmp_seq=1 ttl=250 time=43.2 ms
+
              ( .,,        ..-.-. )
  64 bytes from 193.40.10.11: icmp_seq=2 ttl=250 time=18.9 ms
+
                        |
  64 bytes from 193.40.10.11: icmp_seq=3 ttl=250 time=21.3 ms
+
                        |                           
  64 bytes from 193.40.10.11: icmp_seq=4 ttl=250 time=18.4 ms
+
                        |                             
64 bytes from 193.40.10.11: icmp_seq=5 ttl=250 time=21.2 ms
+
                        |         
 +
                        |         
 +
        ________________|__________
 +
          _|_      _|_ _|_    |
 +
          |___| ... |___||___|  |
 +
                                |  
 +
            raamatukogu        __|__
 +
                              |    | server
 +
                              |    |
 +
                              |_____|
 +
                                |
 +
        ________________________|__
 +
          _|_      _|_ _|_           
 +
          |___| ... |___||___|         
 
   
 
   
--- www.zoo.edu.ee ping statistics ---
+
            arvutiklass
6 packets transmitted, 6 packets received, 0% packet loss
+
 
round-trip min/avg/max = 18.4/23.8/43.2 ms
+
Toodud skeem toimib, kuid allpool näeme, miks see ei ole alati parim lahendus.  
 +
 
 +
Kohtvõrgu ühendamisest Internetti tulenevad turvaprobleemid, nimelt kujutab Internet potensiaalselt ohtu kohtvõrgule ja vastupidi. Mõlemad vajavad kaitset.
 +
Kohtvõrku ja selle kasutajaid tuleb kaitsta võimalike väljast-sisse tulevate rünnakute eest. Internetti tuleb kaitsta võimalike seest-välja minevate rünnakute eest. Kohtvõrku tuleb kaitsta seestpoolt tulevate selle sama kohtvõrgu ja tema kasutajate vastu suunatud rünnakute eest.
 +
 
 +
Töötavas süsteemis peab lisaks nimetatud kaitsete realiseerimisele jääma kasutajatele võimalus süsteemi tarvitada. Mida turvalisem on süsteem, seda ebamugavam on ta reeglina kasutaja jaoks. Oskuslikul konfigureerimisel tunnevad kasutajad end suhteliselt normaalselt ning ka süsteem on suhteliselt turvaline. Sõltuvalt pakutavatest ja tarvitatavatest teenustest võib olla selle saavutamine lihtsam või keerulisem.
 +
 
 +
===Rünnakud===
 +
 
 +
 
 +
Tänapäeval on tundlikku informatsiooni sisalduvad serverid piisavalt hästi kaitstud ja seega on põhiline ründaja motivatsioon sportlik huvi või lihsalt soov segadust tekitada. Eristakse kolme rünnaku eesmärki, üks võib tuua kaasa teise
  
Kui mingil põhjusel võrguühendus kõnealuse masinaga ei toimi, siis on Pingi väljud teistsugune :)
+
'''sissetung''' - tulemusena saab ründaja süsteemi kasutaja või administraatori õigused ning kontrollib süsteemi
  
Kasutades võtit -n ei püüa Ping lahendada nimesid, tihti seisneb võrgu nö mitte-töötamine valesti konfigureeritud nimeserveris või nimeserveri mittekasutamises.
+
'''DoS''' (ingl. k. Denial of Service) - näiteks "uputab" keegi teie süsteemi saates sinna suurtes kogustes e-posti; tulemusena ei saa ründaja küll midagi olulist kätte, va süsteemi töö halvamine
Traceroute
 
  
Programmiga Traceroute on võimalik jälgida milliseid marsruutereid teie poolt lähetatud IP paketid sihtpunkti jõudmiseks läbivad. Selle abil saab teha kindlaks, kus on võrgus rike.
+
'''info vargus''' - näiteks ühendatakse andmeliinile füüsiliselt külge pealtkuulamisseade, so vastavalt konfigureeritud arvuti, ning salvestatakse kõik või teatud tunnustega andmed; tüüpiliselt kasutatakse saadud andmeid edasiseks sissetungiks
bash$ traceroute 193.40.10.11
 
traceroute to www.zoo.edu.ee (193.40.10.11), 30 hops max, 40 byte packets
 
  1  tlk.mac.ee (193.40.61.129)  0.576 ms  0.452 ms  0.461 ms
 
  2  triibud.act.ee (193.45.13.145)  1.78 ms  30.71 ms  1.724 ms
 
  3  cache.eau.ee (193.40.25.251)  17.924 ms  25.529 ms  30.807 ms
 
  4  b1.eenet.ee (193.40.10.129)  18.58 ms  19.024 ms  31.599 ms
 
  5  kontor-gw.sebra.ee (193.40.10.45)  31 ms  35.796 ms  73.801 ms
 
  6  www.zoo.edu.ee (193.40.10.11)  18.283 ms  31.499 ms  19.611 ms
 
  
Kasutades võtit -n ei püüa Traceroute nimesid lahendada.  
+
Kõige primitiivsemaks sissetungi mooduseks on püüda aimata ära mõne süsteemi legaalse kasutaja kasutajanimi ja parool ning sisse logida. Teine populaarne sissetungi viis on kasutada ära mõne kohtvõrgu avaliku serveri programmivigu, mida tõenäoliselt igasugune tarkvara sisaldab. Näiteks e-posti serverina kasutatav programm Sendmail peab tavaliselt olema nõus suhtlema igasuguste "külalistega". Sendmail võimaldab kliendil anda protokolliga ettenähtud korraldusi ning seejärel täidab neid. Eeldatavasti ei kujuta see ohtu süsteemile ja äärmisel juhul lihtsalt toimib DoS-ina. Teatud puhkudel saab serveri protokolli ja selle realiseerimise piiril tegutsedes keelitada süsteemi tegema midagi, mida ta teha ei tohiks. Näiteks saatma e-postiga välja kohaliku süsteemi kasutajate paroolifaili. Seda omades on aga sissetungijal juba hõlpsam edasi tegutseda.  
Tcpdump
 
  
Programmiga Tcpdump saab jälgida nende Etherneti meediumite peal toimuvat andmeliiklust, kuhu on arvuti otse võrguseadme abil külge ühendatud.  
+
Kõige raskem on süsteemi kaitsta seestpoolt tulevate rünnakute eest, mis on ka kõige sagedasemad. Süsteemi on seestpoolt rünnata lihsam juba seetõttu, et ollakse süsteemi kasutaja ning omatakse ligipääsu, sh füüsilist ligipääsu. Tegemist võib olla tõeliselt pahatahtlike kohalike kasutajatega või lihtsalt teadmatusega. Näiteks valivad kasutajad endale liiga kergesti äraaimatava parooli või ei hoia seda endateada.
  
Näiteks kuvame masinaga www.zoo.edu.ee toimuvasse andmeliiklusse kuuluvate pakketide kohta käiva info kui parasjagu pingib teda kalake.zoo.tartu.ee
+
===Kaitse===
  
bash# tcpdump -i eth1 host www.zoo.edu.ee -a
 
tcpdump: listening on eth1
 
15:31:22.753413 kalake.zoo.tartu.ee > www.zoo.edu.ee: icmp: echo request
 
15:31:22.772729 www.zoo.edu.ee > kalake.zoo.tartu.ee: icmp: echo reply
 
15:31:23.750527 kalake.zoo.tartu.ee > www.zoo.edu.ee: icmp: echo request
 
15:31:23.769159 www.zoo.edu.ee > kalake.zoo.tartu.ee: icmp: echo reply
 
  
Kasutatud võtmed
+
Kaitse eemärk on väärata väljast sisse tulevad nii serveri kui üksikute kohtvõrgu arvutite vastu suunatud rünnakud. Samuti kaitsta seest lähtuvate võimalike rünnakute eest kohalikke ja väljaspool asuvaid masinaid.  
-i eth1 - millise meediumi peal toimuvat liiklust jälgida
 
host www.zoo.edu.ee - millise masinaga seotud pakette kuulata
 
-a - kirjutada aadressid ja pordid täheliselt välja
 
  
Tavaliselt peab Tcpdumpi kasutamiseks omama juurkasutaja õigusi.  
+
Kasutades eelmisel skeemil toodud arvutite paigutust, tuleks vähemalt kõiki raamatukogu arvuteid ja serverit eraldi kindlustada. See vastab masina taseme kaitsele (ingl. k. host-level security) ja on suheliselt töömahukas.
Nmap
+
 
 +
Kasutades samu riistvaralisi vahendeid saab kaitse realiseerimist oluliselt lihtsustada, paigutades kohtvõrgu arvutid selliselt
 +
 
 +
                ..  ^^  -- - )
 +
            ((    INTERNET          )))
 +
        (                . . .            )
 +
              ( .,,        ..-.-. )
 +
                        |
 +
                        _|__
 +
                      |    | server
 +
                      |    |
 +
                      |____|
 +
                        |  |__________________________
 +
                        |          _|_      _|_  _|_
 +
                        |        |___| ... |___||___|
 +
      __________________|           
 +
      _|_      _|_  _|_            raamatukogu
 +
    |___| ... |___||___|
 +
 +
      arvutiklass
 +
 
 +
Antud juhul liiguvad andmed kohtvõrgu arvutite ja välismaailma vahel mõlemas suunas läbi ühe sõlmpunkti (ingl. k. choke point), so antud juhul serveri. Kuna sõlmpunktiks olev arvuti saab seda liiklust kontrollida ja otsustada milliseid ühendusi lubatakse, siis selliselt tööle seatud arvutit nimetatakse tulemüüriks. Selline skeem vastab võrgutaseme kaitsele (ingl. k. network-level security), kuivõrd ühe arvutiga on kaitstud terve arvutivõrk, antud juhul isegi kaks.
 +
 
 +
Ennekõike peab tulemüür olema ise võimalikult raskesti sissetungitav. Näiteks kui pahalane on saanud haarata tulemüüris juurkasutaja õigused, saab ta antud juhul kuulata pealt kõike alamvõrkudes toimuvat.
 +
 
 +
Kaitse algab sellest, et teadvustatakse endale ohud ning otsustatakse kuidas neile vastu seista. Kaitse peab muuseas võimaldama võimalikult vara aru saada, et keegi tunneb teie süsteemi vastu kahtlast huvi. Näiteks saab enamuse serverid konfigureerida nii, et nad logivad teatud tunnustega pöördumisi.
 +
 
 +
===Tulemüür===
 +
 
 +
 
 +
Tulemüüri konfigureerimisel soovitatakse lähtuda sellest, et keelatud on kõik, va see, mis on lubatud. Näiteks soovides lubada välismaailmal külastada vaid veebiserverit, tuleb keelata kõik sissetulevad ühenduse loomise katsed ja lubada ligipääs ainult sellele pordile, millele vastab veebiserver.
 +
 
 +
Tulemüür töötab tavaliselt kahel tasemel:
 +
 
 +
* võrgutase - kontrollitakse IP-pakettide liiklust, näiteks IP-filter
 +
* rakendustase - kontrollitakse erinevate rakenduste protokollide tasemel andmevahetust, näiteks vahendusservereid (ingl. k. Proxy)
 +
 
 +
===IP filter===
 +
 
 +
 
 +
Tüüpiliselt kasutatakse tulemüüris andmete liikumise kontrollimiseks IP-filtrit. IP-filtri abil saab hõlpsasti reguleerida IP-pakettide liiklust vastavalt IP-paketi päises olevate andmetele, näiteks lähte- ja sihtaadressi ja vastavate portide järgi.
 +
 
 +
IP-filtri kasutamise eelised on:
 +
ühte kohta saab luua sõlmpunkti, mis reguleerib liiklust kahe või enama alamvõrgu vahel, näiteks kahe alamvõrgu ja Interneti vahel
 +
tulemüür on kasutajale nähtamatu - kui vastavaid pakette lubatakse läbi, siis ühendus toimub, kui mitte, siis ühendust ei toimu; kasutaja ei pea omama tööjaamas spetsiaalset tarkvara ega tarvitama standardset tarkvara erilisel viisil.
 +
 
 +
IP-filtri kasutamise puuduseks on see, et kuna filter toimib nii madalal tasemel (IP-tasemel), siis on raske kontrollida mis sisuga ühendusi peetakse. Logimisel ei saa olulist infot.
 +
 
 +
===Vahendusserver===
 +
 
 +
 
 +
Äärmuslikul juhul saab rakendada tulemüüris IP-filtrit selliselt, et IP-paketid ei saagi otse tulemüürist läbi. Tulemüür eraldab kohtvõrgud Internetist. Et siiski kohtvõrgu kliendid saaksid väliseid teenuseid pruukida, kasutatakse tulemüüris vahendusserverid, mis on olemas enamusele olulistele teenustele.
 +
 
 +
Kui klient soovib näiteks külastada välist veebiserverit, siis esitab ta vastava päringu HTTP vahendusserverile ning too võtab omakorda ühendust välise veebiserveriga. Väline veebiserver saadab andmed vahendusserverile ning too omakorda kliendile.  
 +
    klient                                    server
 +
      ____                                      ____
 +
    |    |                                    |    |
 +
    |____|                                    |____|
 +
 +
          \                                  /
 +
            \                            /
 +
                \                      /
 +
                  \                /
 +
                      \          /
 +
                          ____
 +
                tulemüür  |    |  HTTP vahendusserver
 +
                          |____|
 +
  
Nmap on mõeldud masina poolt pakutavate portide skaneerimiseks eesmärgiga veenduda, et enda server on nii turvaline kui seda on kavatsetud. Programm püüab võtta ühendust kõigi näidatud masina TCP või UDP portide peal töötavate teenustega ning sel moel teha kindlaks millised teenused on vaatlusealuses masinas konfigureeritud. Traditsiooniliselt vastab konkreetsele pordile kindel teenus.  
+
Kliendile jääb illusioon, et ta suhtleb otse välise severiga, kuid välisel serveril jääb mulje, et temaga suhtlevaks kliendiks ongi vahendusserver ise.  
  
Näiteks teeme kindlaks milliseid teenuseid pakub www.zoo.edu.ee TCP portide peal
+
Nii toimivat vahendusserverit nimetatakse '''rakendustaseme vahendusserveriks''' (ingl. k. application-level proxy) ning tema eeliseks on, et lisaks vahendustegevusele on võimalik tulemüüris sekkuda andmevahetusse, sh logida suhteliselt põhjalikult, kuna tegutsetakse kõrgel tasemel (protokolli tasemel).  
  
bash$ nmap www.zoo.edu.ee
+
Tavaliselt saab rakendustaseme vahendusserveri kasutamisel tarvitada neid samu klientprogramme, mida tavaliselt, kuid nad tuleb vastavalt konfigureerida või kasutamise käigus näidata, millise vahendusserveri kaudu toimetatakse (ingl. k. custom user procedures for proxying). Näiteks tuleb Lynxi jaoks väärtustada keskkonnamuutuja HTTP_PROXY masina nime ja pordi numbriga, kus HTTP vahendusserver töötab.  
starting nmap V. 2.12 by Fyodor (fyodor@dhp.com, www.insecure.org/nmap/)
 
Interesting ports on www.zoo.edu.ee (193.40.10.11):
 
(Not showing ports in state: filtered)
 
Port    State      Protocol  Service
 
21      open        tcp        ftp           
 
22      open        tcp        ssh           
 
23      open        tcp        telnet         
 
25      open        tcp        smtp           
 
53      open        tcp        domain         
 
80      open        tcp        http           
 
110    open        tcp        pop-3         
 
113    open        tcp        auth           
 
143    open        tcp        imap2
 
  
Sellise käsuga saab teha kindlaks, milliseid teenuseid pakub www.zoo.edu.ee UDP portide peal
+
Praktiliselt võimaldavad vahendusserverid andmeid ka ladustada. Näiteks kui üks klient esitab HTTP vahendusserverile päringu, siis ta saadab talle vastuseks soovitud andmed ning salvestab need teatud ajaks ka endale lattu. Kui tuleb järgmine päring samale aadressile ning vahepeal pole möödunud liiga palju aega, siis ei pruugi vahendusserver enam neile andmetele uuesti järele minna, vaid annab pärijale andmed oma laost.
bash# nmap -sU www.zoo.edu.ee
 

Viimane redaktsioon: 21. november 2011, kell 21:49

Kohtvõrk

Kohtvõrguks (ingl. k. LAN - Local Area Network) nimetatakse sellist arvutivõrku, mis asub füüsiliselt piiratud alal ning mille võrguteenused on mõeldud kasutamiseks sama võrgu klientidele. Tüüpiliselt on kohtvõrgud ehitatud kasutades Etherneti tehnoloogiat, so arvutid on omavahel ühendatud koaksiaal- või keerupaari kaablitega. Kohtvõrk võib koosneda mitmest alamvõrgust, mis on omavahel ühendatud sobivate võrguseadmetega. Näiteks on koolimajasisene arvutivõrk kohtvõrk, serveriga on ühendatud kaks alamvõrku

    ___________________________
      _|_       _|_  _|_    |
     |___| ... |___||___|   |
                            |  
       raamatukogu        __|__
                         |     |  server
                         |     | 
                         |_____|
                            |	
    ________________________|__
      _|_       _|_  _|_            
     |___| ... |___||___|           

       arvutiklass

Koolimaja serveris asuvad kasutajate kodukataloogid, sealt kontollitakse, millist printerit saab keegi kasutada ja server korraldab kohalikele kasutajatele e-posti vahetamist.

Kohtvõrgu ühendamine Internetti

Hiljem või varem nõuavad süsteemi kasutajad, lisaks kohtvõrgu teenustele, võimalust kasutada Internetis pakutavaid teenuseid - veeb, e-post, FTP arhiivid ja kõikvõimalikud nendest tuletatud teenused, näiteks veebipank.

Tehniliselt on Internet laivõrk (ingl. k. WAN - Wide Area Network), koosnedes paljudest omavahel ühendatud kohtvõrkudest. Kohtvõrkude omavaheliseks ühendamiseks kasutatakse näiteks telefoniliine, raadiosidet, valguskaablit.

Ühendades kohtvõrgu Internetti, saab lisaks väliste teenuste kasutamisele hakata kohtvõrgu seest pakkuma ka teistele, sh oma kasutajatele, väljapoole teenuseid, näiteks kohalik veebiserver ja e-post. Skeem kujutab Internetti ühendatud kohtvõrku

               ..  ^^   -- - )
           ((     INTERNET           )))
       (                . . .            )
              ( .,,         ..-.-. )
                        |
                        |                             
                        |                              
                        |          
                        |          
        ________________|__________
          _|_       _|_  _|_    |
         |___| ... |___||___|   |
                                |  
           raamatukogu        __|__
                             |     |  server
                             |     |
                             |_____|
                                |	
        ________________________|__
          _|_       _|_  _|_            
         |___| ... |___||___|           

           arvutiklass

Toodud skeem toimib, kuid allpool näeme, miks see ei ole alati parim lahendus.

Kohtvõrgu ühendamisest Internetti tulenevad turvaprobleemid, nimelt kujutab Internet potensiaalselt ohtu kohtvõrgule ja vastupidi. Mõlemad vajavad kaitset. Kohtvõrku ja selle kasutajaid tuleb kaitsta võimalike väljast-sisse tulevate rünnakute eest. Internetti tuleb kaitsta võimalike seest-välja minevate rünnakute eest. Kohtvõrku tuleb kaitsta seestpoolt tulevate selle sama kohtvõrgu ja tema kasutajate vastu suunatud rünnakute eest.

Töötavas süsteemis peab lisaks nimetatud kaitsete realiseerimisele jääma kasutajatele võimalus süsteemi tarvitada. Mida turvalisem on süsteem, seda ebamugavam on ta reeglina kasutaja jaoks. Oskuslikul konfigureerimisel tunnevad kasutajad end suhteliselt normaalselt ning ka süsteem on suhteliselt turvaline. Sõltuvalt pakutavatest ja tarvitatavatest teenustest võib olla selle saavutamine lihtsam või keerulisem.

Rünnakud

Tänapäeval on tundlikku informatsiooni sisalduvad serverid piisavalt hästi kaitstud ja seega on põhiline ründaja motivatsioon sportlik huvi või lihsalt soov segadust tekitada. Eristakse kolme rünnaku eesmärki, üks võib tuua kaasa teise

sissetung - tulemusena saab ründaja süsteemi kasutaja või administraatori õigused ning kontrollib süsteemi

DoS (ingl. k. Denial of Service) - näiteks "uputab" keegi teie süsteemi saates sinna suurtes kogustes e-posti; tulemusena ei saa ründaja küll midagi olulist kätte, va süsteemi töö halvamine

info vargus - näiteks ühendatakse andmeliinile füüsiliselt külge pealtkuulamisseade, so vastavalt konfigureeritud arvuti, ning salvestatakse kõik või teatud tunnustega andmed; tüüpiliselt kasutatakse saadud andmeid edasiseks sissetungiks

Kõige primitiivsemaks sissetungi mooduseks on püüda aimata ära mõne süsteemi legaalse kasutaja kasutajanimi ja parool ning sisse logida. Teine populaarne sissetungi viis on kasutada ära mõne kohtvõrgu avaliku serveri programmivigu, mida tõenäoliselt igasugune tarkvara sisaldab. Näiteks e-posti serverina kasutatav programm Sendmail peab tavaliselt olema nõus suhtlema igasuguste "külalistega". Sendmail võimaldab kliendil anda protokolliga ettenähtud korraldusi ning seejärel täidab neid. Eeldatavasti ei kujuta see ohtu süsteemile ja äärmisel juhul lihtsalt toimib DoS-ina. Teatud puhkudel saab serveri protokolli ja selle realiseerimise piiril tegutsedes keelitada süsteemi tegema midagi, mida ta teha ei tohiks. Näiteks saatma e-postiga välja kohaliku süsteemi kasutajate paroolifaili. Seda omades on aga sissetungijal juba hõlpsam edasi tegutseda.

Kõige raskem on süsteemi kaitsta seestpoolt tulevate rünnakute eest, mis on ka kõige sagedasemad. Süsteemi on seestpoolt rünnata lihsam juba seetõttu, et ollakse süsteemi kasutaja ning omatakse ligipääsu, sh füüsilist ligipääsu. Tegemist võib olla tõeliselt pahatahtlike kohalike kasutajatega või lihtsalt teadmatusega. Näiteks valivad kasutajad endale liiga kergesti äraaimatava parooli või ei hoia seda endateada.

Kaitse

Kaitse eemärk on väärata väljast sisse tulevad nii serveri kui üksikute kohtvõrgu arvutite vastu suunatud rünnakud. Samuti kaitsta seest lähtuvate võimalike rünnakute eest kohalikke ja väljaspool asuvaid masinaid.

Kasutades eelmisel skeemil toodud arvutite paigutust, tuleks vähemalt kõiki raamatukogu arvuteid ja serverit eraldi kindlustada. See vastab masina taseme kaitsele (ingl. k. host-level security) ja on suheliselt töömahukas.

Kasutades samu riistvaralisi vahendeid saab kaitse realiseerimist oluliselt lihtsustada, paigutades kohtvõrgu arvutid selliselt

               ..  ^^   -- - )
           ((     INTERNET           )))
       (                . . .            )
              ( .,,         ..-.-. )
                        |
                       _|__
                      |    | server 
                      |    |
                      |____|
                       |  |__________________________
                       |          _|_       _|_  _|_ 
                       |         |___| ... |___||___|
     __________________|            
     _|_       _|_  _|_            raamatukogu
    |___| ... |___||___|

      arvutiklass

Antud juhul liiguvad andmed kohtvõrgu arvutite ja välismaailma vahel mõlemas suunas läbi ühe sõlmpunkti (ingl. k. choke point), so antud juhul serveri. Kuna sõlmpunktiks olev arvuti saab seda liiklust kontrollida ja otsustada milliseid ühendusi lubatakse, siis selliselt tööle seatud arvutit nimetatakse tulemüüriks. Selline skeem vastab võrgutaseme kaitsele (ingl. k. network-level security), kuivõrd ühe arvutiga on kaitstud terve arvutivõrk, antud juhul isegi kaks.

Ennekõike peab tulemüür olema ise võimalikult raskesti sissetungitav. Näiteks kui pahalane on saanud haarata tulemüüris juurkasutaja õigused, saab ta antud juhul kuulata pealt kõike alamvõrkudes toimuvat.

Kaitse algab sellest, et teadvustatakse endale ohud ning otsustatakse kuidas neile vastu seista. Kaitse peab muuseas võimaldama võimalikult vara aru saada, et keegi tunneb teie süsteemi vastu kahtlast huvi. Näiteks saab enamuse serverid konfigureerida nii, et nad logivad teatud tunnustega pöördumisi.

Tulemüür

Tulemüüri konfigureerimisel soovitatakse lähtuda sellest, et keelatud on kõik, va see, mis on lubatud. Näiteks soovides lubada välismaailmal külastada vaid veebiserverit, tuleb keelata kõik sissetulevad ühenduse loomise katsed ja lubada ligipääs ainult sellele pordile, millele vastab veebiserver.

Tulemüür töötab tavaliselt kahel tasemel:

  • võrgutase - kontrollitakse IP-pakettide liiklust, näiteks IP-filter
  • rakendustase - kontrollitakse erinevate rakenduste protokollide tasemel andmevahetust, näiteks vahendusservereid (ingl. k. Proxy)

IP filter

Tüüpiliselt kasutatakse tulemüüris andmete liikumise kontrollimiseks IP-filtrit. IP-filtri abil saab hõlpsasti reguleerida IP-pakettide liiklust vastavalt IP-paketi päises olevate andmetele, näiteks lähte- ja sihtaadressi ja vastavate portide järgi.

IP-filtri kasutamise eelised on: ühte kohta saab luua sõlmpunkti, mis reguleerib liiklust kahe või enama alamvõrgu vahel, näiteks kahe alamvõrgu ja Interneti vahel tulemüür on kasutajale nähtamatu - kui vastavaid pakette lubatakse läbi, siis ühendus toimub, kui mitte, siis ühendust ei toimu; kasutaja ei pea omama tööjaamas spetsiaalset tarkvara ega tarvitama standardset tarkvara erilisel viisil.

IP-filtri kasutamise puuduseks on see, et kuna filter toimib nii madalal tasemel (IP-tasemel), siis on raske kontrollida mis sisuga ühendusi peetakse. Logimisel ei saa olulist infot.

Vahendusserver

Äärmuslikul juhul saab rakendada tulemüüris IP-filtrit selliselt, et IP-paketid ei saagi otse tulemüürist läbi. Tulemüür eraldab kohtvõrgud Internetist. Et siiski kohtvõrgu kliendid saaksid väliseid teenuseid pruukida, kasutatakse tulemüüris vahendusserverid, mis on olemas enamusele olulistele teenustele.

Kui klient soovib näiteks külastada välist veebiserverit, siis esitab ta vastava päringu HTTP vahendusserverile ning too võtab omakorda ühendust välise veebiserveriga. Väline veebiserver saadab andmed vahendusserverile ning too omakorda kliendile.

   klient                                     server
     ____                                      ____
    |    |                                    |    |
    |____|                                    |____|

         \                                  /
            \                            /
               \                      /
                  \                /
                     \          /
                          ____
               tulemüür  |    |  HTTP vahendusserver
                         |____| 

Kliendile jääb illusioon, et ta suhtleb otse välise severiga, kuid välisel serveril jääb mulje, et temaga suhtlevaks kliendiks ongi vahendusserver ise.

Nii toimivat vahendusserverit nimetatakse rakendustaseme vahendusserveriks (ingl. k. application-level proxy) ning tema eeliseks on, et lisaks vahendustegevusele on võimalik tulemüüris sekkuda andmevahetusse, sh logida suhteliselt põhjalikult, kuna tegutsetakse kõrgel tasemel (protokolli tasemel).

Tavaliselt saab rakendustaseme vahendusserveri kasutamisel tarvitada neid samu klientprogramme, mida tavaliselt, kuid nad tuleb vastavalt konfigureerida või kasutamise käigus näidata, millise vahendusserveri kaudu toimetatakse (ingl. k. custom user procedures for proxying). Näiteks tuleb Lynxi jaoks väärtustada keskkonnamuutuja HTTP_PROXY masina nime ja pordi numbriga, kus HTTP vahendusserver töötab.

Praktiliselt võimaldavad vahendusserverid andmeid ka ladustada. Näiteks kui üks klient esitab HTTP vahendusserverile päringu, siis ta saadab talle vastuseks soovitud andmed ning salvestab need teatud ajaks ka endale lattu. Kui tuleb järgmine päring samale aadressile ning vahepeal pole möödunud liiga palju aega, siis ei pruugi vahendusserver enam neile andmetele uuesti järele minna, vaid annab pärijale andmed oma laost.