Počítačové siete a sieťové protokoly
Počítačové siete a sieťové protokoly
Úvod
Ethernet local area network (LAN),
sieťový štandard, ktorý používame doteraz, vznikol v roku 1973. Pri jeho vzniku nikto nemyslel na bezpečnosť, nevediac, že sa tento štandard
bude o pár desiatok rokov používať po celom svete. Téma sietí a predovšetkým ich bezpečnosti sa stáva s rozvojom internetu a jeho
rozšírením medzi laickú verejnosť čoraz aktuálnejšou. V médiách sa často dozvedáme o hackerských útokoch na štátne inštitúcie,
pojem hacker je v dnešnej spoločnosti maximálne mýtizovaný. Aby bolo možné účinne chrániť naše dáta, ktorých je na internete čoraz
viac, musíme najprv porozumieť tomu, ako sa s týmito dátami v počítačových sieťach vlastne pracuje. Budeme sa venovať spôsobu ukladania
informácií, spájaniu počítačov do sietí a protokolom ich komunikácie, vďaka čomu dokážeme lepšie odhaliť medzery v bezpečnosti
zapríčinené našou neznalosťou systému.
1 Zápis informácií
1.1 Binárny zápis, bajty
Všetky
informácie sú v počítačoch zapísané v dvojkovej sústave, teda len jednotkami a nulami. Jedna „cifra“ sa nazýva bit. Takýto zápis má
pre počítač viaceré výhody:
· Je jednoduché uložiť 0 a 1, ako nula poslúži nulový elektrický náboj, ako 1 akýkoľvek nenulový
elektrický náboj. Aj keby bolo možné rôznou veľkosťou náboja označovať rôzne hodnoty, je to veľmi nevýhodné.
· Logické operácie
je možné vykonávať pomocou tranzistorov tak, že ako výsledok opäť dostaneme 0 alebo 1.
· Logické operácie sú omnoho jednoduchšie,
aj keď je ich viac. Počítač však vie jednoduché operácie vykonávať na viacerých bitoch naraz (podľa toho aj delíme počítače, napr.
16-bitové, 32-bitové)
· Do takejto podoby vieme uložiť akékoľvek informácie. Podmienkou je, že dodržiavame určitý dopredu stanovený
systém prevodu
Bity sú v počítačoch uložené do bajtov (angl. byte). Jeden bajt je tvorený ôsmimi bitmi. Jeden bajt teda môže
nadobudnúť 28 = 256 hodnôt. Podľa toho, aké informácie sú v bajtoch uložené, majú jednotlivé bity rôzny význam. Najčastejšie bajt
reprezentuje znak alebo číslo (čísla sú ale často reprezentované viacerými bajtami). Ak je v bajte uložené číslo (časť čísla),
získame ho prevodom bajtu do desiatkovej sústavy. Príklad: 00101010 ––––> 42.
Ak je v bajte uložený znak, je to o čosi
komplikovanejšie. Pomôže nám ASCII tabuľka, čo je dohodnutá tabuľka znakov a ich bajtových reprezentácií. Podľa tabuľky teda môžeme
previesť čísla na znaky. Toto nazývame kódovanie znakov (character encoding). Príklad: 00101010 ––––> “*”. Znaky a reťazce
znakov sa zvyknú uvádzať v úvodzovkách.
1.2 Hexadecimálny zápis
Výpis bajtov po jednotlivých bitoch je
náročný na miesto, jednotlivé bity naviac často nemajú vlastný význam. Preto je výhodnejšie jednotlivé bajty zapisovať inak. Ako možnosť
sa ponúka zapisovať ich v desiatkovej sústave, to však nie je veľmi výhodné. Prepisom môžeme dostať až trojciferné číslo, nie každé
trojciferné desiatkové číslo ale vieme zapísať bajtom. Ako ideálna na zápis bajtov sa javí hexadecimálna (šestnástková) sústava. Štyri
bity tvoria jednu cifru šestnástkovej sústavy (od 0 po F), celý bajt je teda dvojciferné šestnástkové číslo. Naviac ak zoberieme
ľubovoľnú šestnástkovú cifru, prevodom dostaneme presne štyri bity.
00101010 ––––> 0x2A
Je zvykom pred šestnástkové
čísla písať „0x“, aby sa tak odlíšili od desiatkových čísel. Na zápis bajtového kódu sa používa takmer výlučne šestnástková
sústava.
1.3 Súbory, formáty dát
Lineárnu postupnosť bajtov o určitej dĺžke (počte bajtov) nazývame
súbor. Dáta môžu byť v súbore uložené rôznym spôsobom.
Binárne dátové formáty sú také, v ktorých sú časti dát kódované
pre priame spracovanie procesorom. Medzi takto reprezentované dáta patria číselné hodnoty, ukazovatele (pointers) a komprimované dáta
akéhokoľvek typu.
Textový dátový formát je taký, v ktorom sú dáta špecifikované v určitom kódovaní ako postupnosť znakov.
HTML, internetová pošta, a všetky formáty na báze xml sú textové. Na definíciu znakov v textových formátoch sa univerzálne stále
častejšie využíva kódovanie UNICODE.
2 Počítačové siete
2.1 Vrstvový model
Pre jednoduchšie
pochopenie sietí je sieť rozdelená do vrstiev. Každá vrstva má svoju funkciu a môže komunikovať iba s vrstvou na rovnakej úrovni. Pri
vysielaní aj prijímaní dát, tieto prechádzajú všetkými vrstvami, kde môžu byť mierne pozmenené (pridávaním hlavičky). Dáta smerujúce
von prechádzajú odhora nadol, prijímané dáta zdola nahor (obr. 1).
Medzi základné vrstvové modely sietí patria:
• RM OSI
Tento model je tvorený siedmimi vrstvami (fyzická, dátová, sieťová, transportná, relačná, prezentačná, aplikačná)
•
TCP/IP
Tento model je tvorený štyrmi vrstvami (sieťového rozhrania, sieťová, transportná, aplikačná). Tieto štyri vrstvy TCP/IP
pokrývajú celý rozsah funkcií RM OSI.
My sa pozrieme na často používaný model TCP/IP.
2.2 TCP/IP, IP a MAC
adresy
Model TCP/IP (obr. 2) je postavený na protokole IP (internet protocol), ktorý adresuje jednotlivé miesta sieti (počítače,
ale napr. aj sieťové tlačiarne alebo iné zariadenia) pomocou logických IP adries. Pojem logická znamená, že nejde o pevnú, fyzickú, adresu.
Fyzická adresa (označuje sa MAC - Media Access Control) je jedinečná pre každé zariadenie v sieti a má šesť bytov. Zapisuje sa ako
XX-XX-XX-XX-XX-XX, kde X je cifra hexadecimálneho čísla.
IP adresa má štyri bity a zapisujeme ju najčastejšie X.X.X.X, kde X je číslo
0-255. Každému zariadeniu je priradená IP adresa, ktorou sa na toto zariadenie odkazuje v sieti. Transportná vrstva (transport layer) sa stará
o prenos dát vytvorených vyššou, aplikačnou vrstvou (application layer). Sieťová vrstva (network layer) je zodpovedná za vytvorenie spojenia
so zariadením so zodpovedajúcou IP adresou, pričom ju už vôbec nezaujímajú posielané dáta. Vrstva sieťového rozhrania (network interface
layer) zodpovedá za vyhľadanie tohoto zariadenia v sieti pomocou ARP. Na to je ale potrebné, aby boli zariadenia (uzly) v jednej sieti. Práve
preto sa používajú IP adresy, ktorými je možné odkazovať na zariadenia mimo lokálnej siete, teda v internete.
2.3
Prepájanie
Na spojenie so správnym zariadením nám slúžia viaceré druhy prístrojov, ktoré patria rôznym vrstvám. Tie
základné sú
• opakovač (HUB)
Hub pracuje iba na prvej vrstve. Posiela všetky prijaté dáta všetkým pripojeným zariadeniam,
bez ohľadu na ich obsah alebo adresáta. Málo bezpečný, pretože každé pripojené zariadenie môže prijímať komunikáciu iných pripojených
zariadení.
• most (BRIDGE), prepínač (SWITCH)
Bridge a switch pracujú na druhej vrstve. Prijaté dáta smerujú iba na zariadenie
so zodpovedajúcou MAC adresou podľa hlavičky, bez ohľadu na IP adresu alebo obsah dát.
• smerovač (ROUTER)
pracuje na tretej
vrstve, používa už IP adresáciu. Pomocou ACL (Access Control List) vie priraďovať prístupové práva, kontrolovať a riadiť sieťovú
komunikáciu, prípadne filtrovať dáta.
• brána (GATEWAY)
Brána je vstupným bodom do lokálnej siete. Celý tok dát do siete aj
zo siete prechádza cez bránu.
2.4 URI, DNS
Pri používaní internetu však na odkazovanie na webové servery
ako uživatelia zriedka používame IP adresy. Namiesto toho používame URI (uniform resource identifier). Sú to triviálne názvy (aj keď majú
mnohé obmedzenia), ktoré väčšinou omnoho lepšie popisujú obsah, respektíve službu, ktorú poskytujú. Napríklad adresa X.X.X.X nám
o svojom obsahu mnoho nepovie, URI http://www.gjgt.sk/ nás na stránku Gymnázia Jozefa Gregora Tajovského dovedie rovnako dobre ako táto IP
adresa.
URI pozostáva zväčša z týchto častí: schéma (v našom prípade http:// - tu označuje protokol, ktorým je obsah dostupný),
doména (www.gjgt.sk) a cesta v strome súborov (v našom prípade implicitné /, označujúce koreňový adresár).
Aby však URI mala svoj
význam, musia existovať DNS (domain name server). Tieto zhromažďujú a ukladajú názvy domén a k nim prislúchajúcich IP. Keď sa chceme
pripojiť na doménu, spojíme sa najprv s DNS a vypýtame si od neho IP adresu cieľovej domény. DNS serverom môže byť akýkoľvek server. Ak
tento nepozná správnu IP adresu, žiada o pomoc iné DNS servery, čím zároveň rozširuje svoju databázu. Získanie IP patriace URI je
jednosmerné. Jednému webovému serveru môžu zodpovedať (a často aj zodpovedajú) viaceré URI.
3 Protokoly
3.1
Protokoly všeobecne
Na sieťovú komunikáciu sa používajú protokoly. Protokol je súhrn dohodnutých pravidiel, ktoré sa musia
dodržiavať, aby bola komunikácia úspešná. Všetky protokoly sú špecifikované oficiálnymi dokumentmi, podobne ako napríklad jednotky SI.
a rozdiel od nich však protokoly nie sú nemenné. Väčšina je navrhnutá tak, aby poskytovala čo najväčšiu spätnú kompatibilitu (možnosť
spolupracovať aj so systémami používajúcimi staršiu verziu), čo najjednoduchšiu rozširovateľnosť a hlavne čo možno najvyššiu
optimalizáciu činnosti. Preto sa na ich vývoji môže podieľať hocikto pripomienkami k stávajúcim štandardom na báze RFC (Request for
Comments). Protokoly podrobne popisujú činnosti, ktoré musia, môžu, mali by, alebo nesmú byť vykonané. Popis komplikovanejších protokolov,
ako je napríklad HTTP má aj stovky strán.
Protokoly sú súčasťou vrstvového modelu siete, preto sa nestarajú o vznik a kontrolu
spojenia - na to slúžia nižšie vrstvy. Protokoly predpokladajú, že spojenie existuje a že poslaná informácia dorazí správnemu
príjemcovi.
Všetky protokoly sú postavené na architektúre klient - server. Vždy spolu komunikujú dve zariadenia, z ktorých jeden kladie
požiadavky, prípadne vydáva príkazy (klient), druhé zariadenie tieto požiadavky (príkazy) spracúva a odpovedá na ne (server). Pri
niektorých protokoloch sa úloha zariadení môže vymeniť počas komunikácie (napr. SMTP, FTP), pri iných niečo také nemá význam (HTTP,
IMAP). Mnohé protokoly majú rozsiahle využitie, iné sa používajú len na jednu činnosť. Často sa však univerzálny protokol (akým je
napríklad aj HTTP) využíva aj na nové činnosti, pre ktoré nebol určený. My si stručne popíšeme najdôležitejšie protokoly ARP, SMTP,
IMAP, HTTP, FTP.
3.2 ARP (Address Resolution Protocol)
Ako bolo spomenuté, keď dáta z internetu prichádzajú
do lokálnej počítačovej siete (ethernetu), mieria na určitú IP adresu. Keď brána dostane takéto dáta, pošle ich ďalej správnej MAC
adrese. Ak však túto nepozná, pošle všetkým zariadeniam v sieti ARP požiadavku (ARP Request), ktorá vyzerá takto: "Ja som
XX-XX-XX-XX-XX-XX, kto má IP y.y.y.y?" Vždy, keď zariadenie dostane takúto správu a má IP adresu y.y.y.y, pošle zariadeniu
XX-XX-XX-XX-XX-XX ARP odpoveď (ARP reply): "Ja mám IP y.y.y.y, som ZZ-ZZ-ZZ-ZZ-ZZ-ZZ."
Každé zariadenie si ukladá výsledok
tohoto snaženia do svojej vyrovnávacej pamäte, preto ak znovu potrebuje poslať dáta IP adrese y.y.y.y, pozrie do tejto tabuľky, kde má už
uloženú hodnotu ZZ-ZZ-ZZ-ZZ-ZZ-ZZ.
Okrem ARP existuje ešte R-ARP (reverse-ARP), ktorý známej MAC adrese priradí IP adresu, ten však nie
je tak využívaný.
3.3 SMTP (Simple Mail Transfer Protocol)
Cieľom SMTP je prenášať poštu spoľahlivo
a efektívne, bez ohľadu na spôsob spojenia, sieť či zariadenie príjemcu a odosielateľa, službu, alebo obsah pošty. Príjemcom
a odosielateľom sú zvyčajne poštové servery. SMTP je postavený na nasledovnom modeli:
Na podnet uživateľa odosielateľ SMTP
(SMTP-sender, ďalej odosielateľ) vytvorí obojsmerný komunikačný kanál s príjemcom SMTP (receiver-SMTP, ďalej príjemca), ktorý môže byť
buď konečným príjemcom alebo prostredníkom. Odosielateľ vytvára príkazy (commands) a posiela ich príjemcovi. Ten na príkazy reaguje SMTP
odpoveďami (SMTP replies), ktoré posiela odosielateľovi.
Keď je vytvorený komunikačný kanál, odosielateľ pošle príkaz MAIL
označujúci odosielateľa pošty (nemusí byť rovnaký ako odosielateľ SMTP). Ak príjemca môže prijať poštu, odpovie SMTP odpoveďou OK.
Odosielateľ potom pošle príkaz RCPT identifikujúci adresáta pošty. Ak príjemca môže prijať poštu pre toho adresáta, odpovie OK; ak nie,
odpovie SMTP odpoveďou odmietajúcou takého adresáta. Takto sa odosielateľ a príjemca môžu naraz dohodnúť na viacerých príjemcoch. Po
takejto dohode odosielateľ pošle poštové dáta, ukončené špeciálnou sekvenciou znakov. Ak príjemca správne prevezme všetky tieto dáta,
odpovie OK. Táto procedúra prebieha vždy po krokoch, kedy jedna strana čaká na odozvu druhej. Po prijatí poslednej OK odpovede odosielateľ
považuje poštu za odoslanú. Aj keď príjemca nie je konečným príjemcom pošty a plní len funkciu prostredníka, je už jej doručenie iba na
ňom. K tomuto dochádza, ak sa odosielateľ nedokázal sám spojiť s konečným príjemcom (napríklad nepozná server na ktorý má poslať
poštu pre adresáta s takou doménou).
3.4 IMAP (Internet Message Access Protocol)
IMAP je metóda prístupu
k elektronickej pošte (alebo iným podobným dátam), ktoré sú uložené na (pravdepodobne zdieľanom) poštovom serveri. Napríklad e-mailom
uloženým na IMAP serveri môžeme manipulovať z počítača doma, z iného počítača v práci a z notebooku na cestách, bez toho aby sme
museli presúvať správy alebo súbory medzi týmito počítačmi. Na rozdiel od protokolu POP (Post Office Protocol), ktorý je vhodný, len keď
pracujeme z jedného počítača, IMAP obsahuje podporu mnohých operácií spravujúcich poštovú schránku, módov prístupu, nastavenia
príznakov (flags), selektívneho sťahovania parametrov správ (napr. predmet, text, a p.), pričom správa zostáva na mailovom serveri.
3.5 HTTP (HyperText Transfer Protocol)
HTTP je aplikačný protokol pre najrôznejšie distribuované informačné
systémy, je všeobecne použiteľný pre veľké množstvo úloh iných ako hypertext pomocou rozšírení metód požiadaviek (requests), chybových
kódov (error codes) alebo hlavičiek (headers). HTTP pracuje pomocou správ (message). Správy sa delia na požiadavky (request) a odpovede
(response). Každá HTTP správa sa skladá z prvého riadku (jeho tvar závisí od toho, či je to požiadavka alebo odpoveď), hlavičiek (HTTP
headers) a tela (HTTP body).
Hlavičiek býva často viac, hlavičku v správe nazývame pole (field),
rozoznávame pritom viac
typov (napr. všeobecné hlavičky, hlavičky požiadavky, hlavičky odpovede, hlavičky entity). Všetky majú tvar
[názov] : [hodnota] CRLF (CRLF označuje koniec riadku). Polia obsahujú informácie, čas a dátum, kódovanie obsahu, použitá
metóda, dĺžka tela. Telo správy nasleduje za prvým prázdnym riadkom (CRLF CRLF) správy a je tvorené entitou (entity). Tou môžu byť
akékoľvek dáta (ich typ je určený v hlavičke Content-Type), najčastejšie je to HTML súbor, prípadne dáta poslané metódou POST.
Požiadavka začína riadkom v tvare [metóda] SP [URI] SP [verzia] CRLF (SP je označenie pre medzeru). Metóda označuje spôsob
prístupu k dátam (najčastejšie POST alebo GET), URI je umiestnenie dát, ku ktorým chceme pristúpiť (URI môže obsahovať parametre, ak
posielame formuláre pomocou metódy GET), verzia označuje použitú verziu HTTP (v súčasnosti aktuálna je HTTP/1.1). Požiadavka v hlavičke
špecifikuje napríklad to, aký obsah klient očakáva (pomocou poľa Accept), prípadne použitú aplikáciu (pole User-Agent).
Odpoveď
začína riadkom v tvare [verzia] SP [kód] SP [fráza] CRLF. Kód (Status-Code) je trojciferným číslom a oznamuje výsledok
operácie, pričom prvá cifra reprezentuje triedu odpovede. 1xx je informačná (požiadavka bola prijatá, v procese sa pokračuje), 2xx znamená
úspech, 3xx presmerovanie (pre dokončenie sa musia vykonať ďalšie akcie), 4xx chybu na strane klienta (zlá požiadavka, ako napr. známa 404-Not
Found chyba značiaca chybný URI smerujúci na neexistujúce dáta), 5xx chybu na strane servera (požiadavka bola v poriadku, server ju však
nemôže spracovať). Fráza (Reason Phrase) je krátky text slovne opisujúci výsledok operácie, zodpovedajúci kódu, ako napríklad OK (200),
Accepted (202), Forbidden (403), Internal Server Error (500).
3.6 FTP (File Trasfer Protocol)
FTP je určené na
prenos súborov a pracuje na modeli znázornenom v obr. 3 s tým, že dátové spojenie môže prebiehať v oboch smeroch a nemusí existovať po
celý čas. PI znamená Protocol Interpreter a je zodpovedný za tvorbu príkazov na strane jednej a na strane druhej ich preklad a plnenie. DTP
znamená Data Transfer Process a je zodpovedný za vytvorenie a udržiavanie dátového toku.
Na modeli z obr. 3 PI uživateľa
vytvorí ovládacie spojenie (control connection) podľa protokolu Telnet (popis protokolu Telnet je nad rámec tejto projektovej práce, pre nás je
dôležité, že podporuje prihlásenie uživateľa a jeho identifikáciu heslom). Na popud uživateľa PI uživateľa vytvára štandardné príkazy
FTP a posiela ich serveru cez ovládacie spojenie. PI servera posiela naspäť cez ovládacie spojenie štandardné odpovede (standard replies -
odpovede oznamujúce úspešnosť príkazu, podobne ako pri HTML odpovedi). FTP príkazy udajú parametre pre dátové spojenie (ako napr. port, mód
prenosu) a typ operácie (uloženie, načítanie, zmazanie, atď.). Užívateľské DTP čaká na danom porte na dátové spojenie (data connection),
ktoré vytvorí server. Súbory sa môžu prenášať len týmto spojením, ale môže byť použité na simultánne posielanie aj prijímanie.
Prenos súborov môže prebiehať vo viacerých módoch. Najjednoduchší je prúd (stream mode), pri ktorom sa posielajú dáta
neprerušovane ako postupnosť bajtov, ukončená dvojbajtovou ukončovacou sekvenciou (escape sequence). Blokový prenos (block mode) je prenos dát
po častiach - blokoch. Každý blok začína trojbajtovou hlavičkou, pričom prvý bajt oznamuje stav prenosu (štandardne je nastavený na nulu,
mení sa pri poslednom bloku dát, prípadne ak sa musí začať odznova) a zvyšné dva počet nasledujúcich bajtov, ktoré tvoria dáta. Bajty
po tomto počte sú hlavičkou ďalšieho bloku (ak nešlo predtým o posledný blok). Posledným módom je komprimovaný prenos (compressed mode),
ktorý umožňuje bezstratovo zmenšiť veľkosť súborov (závisí však od vnútornej stavby súboru - redukuje len viacnásobne za sebou sa
opakujúce bajty). Hlavička je jednobajtová, pričom prvé bity (0, 10 alebo 11) udávajú typ nasledujúcich bajtov (nezmenené dáta, výskyt
opakovaného znaku, výskyt tzv. "filler bajtov") a zvyšné počet. Počet reprezentuje pri nezmenených dátach počet nasledujúcich
bajtov, ktoré reprezentujú tieto dáta v komprimovanom súbore (najviac 128, bezprostredne za nimi nasleduje hlavička), pri opakovanom znaku
počet výskytu znaku bezprostredne za hlavičkou v originálnom súbore a pri "filler" bajte ich počet v originálnom súbore
("filler" bajt je bajt, čo sa často opakuje v danom type súboru, v textových je to medzera, v bitových nulový bajt).
4 Bezpečnosť
Pokiaľ manipulujeme s citlivými dátami v sieťovom prostredí (internete), vždy existuje riziko,
že tieto dáta sa dostanú do nepovolaných rúk. Neexistuje absolútne zabezpečenie dát, tak ako neexistuje neprelomiteľná šifra. Za bezpečný
preto považujeme taký systém, pri ktorom úsilie a prostriedky potrebné na jeho prelomenie značne prevyšujú najvyššiu možnú hodnotu
týchto informácií. Aby sme považovali za bezpečný mail, v ktorom pozdravujeme priateľa, stačí nám zaistiť, aby ho dostal (pretože nám
nezáleží na tom, či si ho prečíta niekto iný - snahe útočníka zachytiť takýto mail sa môžeme len zasmiať). Ak chceme bezpečne
nakupovať v internetovom obchode pomocou kreditnej karty, mali by sme si overiť, či spojenie s internetovým obchodom je bezpečné.
K úniku dát môže dôjsť na všetkých vrstvách sieťového modelu. Na najvyššej, aplikačnej úrovni môže dôjsť k úniku, ak útočník
napadne systém klienta alebo servera, k útoku môže dôjsť pred, počas, aj po posielaní dát (pred posielaním poškodením softvéru, po
posielaní napríklad výpisom z pamäte počítačov). Do tejto kategórie patria aj nespoľahlivé internetové obchody (napríklad keď je
internetový obchod prevádzkovaný samotným útočníkom). Pri úniku na nižších vrstvách (extrém je priame pripojenie na kábel, ktorým sa
pripájame - najnižšia vrstva) musí útočník zároveň prekonať aj zabezpečenie vyšších úrovní, na čo už ale zväčša nepotrebuje
napádať tieto vrstvy na zariadeniach obete. Napríklad ak zachytí na nižšej vrstve HTTP správu, v ktorej posielame serveru heslo na
prihlásenie, musí útočník urobiť ešte rozbor HTTP a nájsť heslo v tele správy. Na tento rozbor mu však postačí aj vlastný počítač.
Všimnime si, že pokiaľ sú dáta šifrované spoľahlivou metódou, môžeme ich považovať za úplne bezpečne chránené, pokiaľ je bezpečne
chránený dešifrovací kľúč.
Diskusia
Internetový vek so sebou prináša mnohé úskalia. Vďaka tomu, že
v súčasnosti prevažnú väčšinu jeho používateľov tvorí laická verejnosť, nerozumejúca fungovaniu tohoto systému, dochádza k vzniku
mnohých problémov, z ktorých väčšina sa týka bezpečnosti informácií. Zatiaľ čo používanie "bezpečných" protokolov, ako
napríklad telnet alebo ssh neprináša podstatné riziko, mnohé informácie, predovšetkým posielané cez nezašifrované HTTP spojenie, sú aj pre
neskúsených útočníkov ľahkým cieľom.
Všetky medzery v bezpečnosti, ktoré títo útočníci tak jednoducho využívajú, sú
spôsobené ľudskou chybou. Táto mohla vzniknúť buď pri tvorbe softvéru (v niektorých prípadoch aj hardvéru) nedostatočným zabezpečením
najrôznejších mechanizmov (zneužitie takejto chyby sa nazýva exploit), alebo pri jeho nesprávnom používaní a to predovšetkým používaním
nevhodného softvéru alebo nedodržiavaním pravidiel bezpečnosti. Najjednoduchším spôsobom útoku na informácie je to keď sa útočník
vydáva za osobu s plným právom prístupu k týmto informáciám, najčastejšie získaním hesla, alebo dokonca čísla kreditnej karty
a prístupového kódu (toto je typický prípad toho, keď môže mať strata informácií aj podstatné materiálne dôsledky).
Jednotlivých
metód, akými sa dá napríklad také heslo získať, je mnoho a ich popis je ďaleko nad rámec aj zámer tejto projektovej práce. Počas
študovania tejto práce však určite čitateľa napadne viacero možností, ako by takéto metódy mohli pracovať. Uvediem jednoduchý príklad:
Využitím ARP protokolu sa útočník v sieti tvári, že má IP brány a presmeruje tak celú internetovú komunikáciu v sieti cez svoj
počítač v tejto sieti. Prečítaním požiadaviek HTTP (konkrétne parametrov poslaných metódou POST) ľahko zistí prihlasovacie meno aj heslo
hociktorého uživateľa, ktorý sa v čase útoku pokúša dostať do svojej poštovej schránky cez nezašifrované pripojenie.
Záver
Popísali sme si spôsoby fungovania sietí a to ako sa v nich prenášajú informácie. Všetky dáta sú prevedené do
binárneho kódu, ktorý počítač dokáže spracovať a následne dáta sprístupniť užívateľovi. Spojenie viacerých zariadení (počítačov)
tvorí sieť. Jednotlivé zariadenia medzi sebou komunikujú pomocou univerzálnych protokolov, ktoré sú presne vymedzené. Protokoly sú postupy,
ktoré zariadenia musia dodržiavať a pracujú na rôznych vrstvách siete, jeden protokol vždy však len na jednej, majúc len časť podielu na
celkovom prenose informácie. Práve tento model zaručuje, že budú spolupracovať aj zariadenia s rôznym spôsobom implementovania jednotlivých
vrstiev, pokiaľ dodržiavajú protokol. Žiadny prenos dát nemôžeme považovať za absolútne bezpečný.
Zones.sk – Zóny pre každého študenta