Sociálne siete

SecIT.sk na Facebooku SecIT.sk na Google+ SecIT.sk na Twitteri

Podporte nás


V prípade, že Vám obsah nášho portálu niekedy nejakým spôsobom pomohol, či bol pre Vás prínosom prosím podporte jeho chod ľubovoľnou čiastkou. Ďakujeme!

Štítky

Vyhľadávanie

You are here

Domov
Upozornenie: Obsah je licenčne chránený a bez písomných súhlasov autora článku a vlastníka webovej stránky nesmie byť v žiadnej forme ďalej kopírovaný a šírený v pôvodnom, či v akokoľvek upravenom stave.

Sieťové riziká a útoky na lokálnej sieti

V tomto článku sa zameriame na riziká a útoky, ktoré môžu hroziť v rámci lokálnej siete (LAN). Oblasť lokálnej siete netreba mylne považovať za bezpečnú, ani vo firemnom, ani v domácom prostredí. Niektorí odborníci považujú hrozby rôznych útokov v rámci LAN za omnoho vážnejšie a častejšie ako hrozby z WAN resp. internetu. Za pravdu im dávajú aj niektoré štatistiky. Vo firemnom prostredí môže ísť potencionálnym útočníkom o získanie pre nich nedostupných, zaujímavých, či zneužiteľných informácií. V domácom prostredí, napríklad pri zdieľaní internetu, môže ísť o túžbu zistiť o čo sa zaujíma na internete sused, ale vylúčený nemôže byť ani záujem o e-maily, rôzne prihlasovacie heslá, či správy v rámci IM programov.

Upozorniť musím všetkých čitateľov, že článok slúži výhradne na štúdijné účely a autor nenesie žiadnu zodpovednosť za škody, alebo právne problémy, ktoré vám môžu vzniknúť jeho aplikovaním na reálnych sieťach. Využitie ďalej zmienených útokov môže byť ilegálne, či porušovať etické princípy, preto ich využívajte len na štúdijné a testovacie účely, výhradne na vašich testovacích sieťach. Všetky tu uvedené postupy vykonávate na vlastné riziko.

Na úvod je dôležité ozrejmiť si, akých aktívnych zariadení a akých typov sietí sa táto problematika týka.
Pokiaľ používate na sieti HUB (rozbočovač), čo je dnes vysoko nepravdepodobné vzhľadom na jeho neefektívnosť, zastaranosť, vysokú pravdepodobnosť kolízií a hlavne obrovské bezpečnostné riziko, o pojme bezpečnosť nemá zmysel hovoriť. HUB odosiela rámce na všetky porty okrem toho, z ktorého rámec prišiel bez akejkoľvek filtrácie. Takže môžeme hovoriť o zdieľanom médiu. Pre útočníka teda nie je nič ľahšie, ako prepnúť svoju sieťovú kartu do promiskuitného módu a zachytávať všetku sieťovú prevádzku. HUBy sa v súčastnosti už takmer vôbec nepoužívajú, plne ich nahradili cenovo dostupné prepínače (switch-e). Switch zdvihol úroveň lokálnych sietí, ale aj bezpečnostný štandard na poznateľne vyššiu úroveň.



Fyzická topológia prvého obrázku poukazuje na použitie HUB-u. Logická topológia druhého znázorňuje toto použitie pomocou zbernice, resp. zdieľaného média. Na treťom sa nachádza switch (prepínač).

Ako pracuje switch?

Switch (prepínač) vo všeobecnosti odosiela rámce z portu, na ktorom ich prijal, na porty, pre ktoré sú určené. Môžeme teda povedať, že medzi portom prepínača a uzlom, ktorý je k nemu pripojený ide o point-to-point spojenie. Každý port predstavuje samostatnú kolíznu doménu. Preposielanie rámcov cieľovým uzlom funguje na základe cieľovej MAC adresy. Každý switch si udržiava vo svojej pamäti tabuľku (CAM tabuľka), kde prepája MAC adresu stanice s portom, ktorým je daná stanica k nemu pripojená. Ak príde rámec, jeho cieľová MAC adresa je porovnaná so zoznamom MAC adries v CAM tabuľke. Ak je nájdená zhoda, je použitý pre odoslanie rámca port prislúchajúci cieľovej MAC adrese. Switch sa však musí naučiť akému uzlu, (ktorej MAC adrese) prislúcha niektorý z jeho portov. Proces učenia prebieha v reálnej prevádzke, ak neexistuje pre zdrojovú MAC adresu žiadny záznam, switch si ju do tabuľky doplní spolu s číslom portu, z ktorého rámec prijal. Tento záznam vydrží v CAM tabuľke len istý čas, ak nedôjde k jeho obnoveniu. Ak switch nevie na aký cieľový port má rámec odoslať, (nenastane zhoda cieľovej MAC adresy so žiadnym záznamom v CAM tabuľke), dochádza zvyčajne k zaplavovaniu, rámec je odoslaný na všetky porty okrem toho, z ktorého bol prijatý. K zaplavovaniu dochádza aj pri špeciálnych typoch rámcov zaslaných na broadcastovú MAC adresu. Pri manažovateľných prepínačoch (pracujúcich aj na tretej vrstve OSI modelu - sieťovej, bežné prepínače pracujú len na druhej vrstve OSI modelu - linkovej), môžeme nakonfigurovať rôzne druhy filtrovania. Blokovať možno isté porty, typy rámcov, či nastaviť určité bezpečnostné opatrenia.

Riziká Address Resolution Protocol - ARP protokolu

Každý rámec odoslaný na cieľový uzol (či už v LAN alebo WAN) musí obsahovať linkové adresy, aby linková vrstva vedela paket uložený v rámci doručiť správnemu adresátovi. V ethernetových lokálnych sieťach sa stará o pridelenie a prepojenie IP a MAC adresy ARP protokol. Ide o protokol tretej (sieťovej) vrstvy OSI modelu. Ak chce zariadenie komunikovať, či už v rámci LAN alebo WAN, musí určiť cieľovú MAC adresu podľa cieľovej IP adresy. Pri určovaní sa najskôr opiera a záznamy vo svojej ARP tabuľke (ARP cache). V operačnom systéme Windows ju môžeme vypísať príkazom arp -a. Počítač vykoná logický súčin AND, to znamená vynásobí cieľovú IP adresu a vašu masku siete, aby zistil, či sa daná stanica nachádza na LAN, alebo mimo LAN. Ak sa logickým súčinom zistí, že stanica sa nachádza v rovnakej sieti, teda na LAN, počítač hľadá vo svojej ARP cache prislúchajúcu MAC adresu. Ak súčin zistí, že sa cieľová adresa nachádza v inej sieti ako je tá vaša, teda mimo LAN, cieľová MAC adresa bude adresa vašej brány, ktorá slúži pre pripojenie do WAN resp. internetu a opäť ju vyhľadá v ARP cache. Pokiaľ sa však v ARP cache nenachádza príslušný záznam pre danú IP adresu (prepojenie IP adresy a MAC adresy), počítač vyšle ARP request - žiadosť o MAC adresu prislúchajúcu k určitej IP adrese. Po obdržaní odpovede - ARP reply od stanice, ktorá má hľadanú IP adresu, si údaj uloží do ARP cache. Záznamy v ARP tabuľke vydržia len určitú dobu, pokiaľ nedôjde k ich obnoveniu.
Hlavne v minulosti sme sa mohli stretnúť aj s protokolom RARP, ktorý sa staral o získanie IP adresy, keď zariadenie poznalo len svoju MAC adresu. V súčastnosti sa však už takmer nepoužíva, pridelenie IP adresy sa rieši inými protokolmi.

IPv6 v budúcnosti už protokol ARP nebude potrebovať (resp. v súčastnosti už ani nepotrebuje, ak sa používa), získavanie MAC adresy rieši paketmi servisného protokolu ICMPv6.

ARP cache poisoning (ARP spoofing)

Tento útok spočíva v zneužívaní protokolu ARP k získaniu dát, ktoré v skutočnosti nepatria útočníkovi. Na sieti, kde sa používa switch a smerovač (router) pre prístup na internet, môže útočník podstrčiť obeti jeho MAC adresu namiesto MAC adresy brány obete (resp. MAC adresy smerovača). Útočník musí oklamať aj smerovač (ak má záujem o sledovanie obojsmernej komunikácie). Smerovaču musí podsunúť svoju MAC adresu namiesto MAC adresy obete. Ak sa to útočníkovi podarí, získa kompletnú obojsmernú komunikáciu, ktorú si môže prezerať, či analyzovať a následne poslať na správne MAC adresy, aby nevzbudil podozrenie. To, aby obeť považovala MAC adresu útočníka za MAC adresu brány a smerovač MAC adresu útočníka za MAC adresu obete, docieli útočník odoslaním falošného ARP reply paketu. Ten obsahuje pre obeť nesprávnu MAC adresu brány, ktorá je v skutočnosti jeho MAC adresa klamlivo patriaca IP adrese brány. Bráne odošle ARP reply paket obsahujúci IP adresu obete, ale opäť svoju MAC adresu namiesto tej korektnej, patriacej v skutočnosti obeti. V súčasnosti však mnohé firewally dokážu tento útok detegovať. Existuje niekoľko možností, ako sa spoľahlivo chrániť. V prvom rade je možná ochrana na switchi, ale túto možnosť ponúkajú len drahšie manažovateľné modely. Na počítači by sme mohli filtrovať ARP pakety, čo však prináša hlavne pre bežných používateľov problémy (i keď niektoré firewally filtráciu zvládajú). Na počítači je teda najjednoduchšia ochrana v podobe nastavenia statických položiek v ARP cache. V operačnom systéme Windows pridáme statickú položku jednoducho príkazom arp -s IP adresa, MAC adresa. Najskôr je však potrebné zistiť korektnú IP adresu a MAC adresu napr. vašej brány. Na smerovači môžeme vo väčšine prípadov zvoliť pri ARP cache pevné prepojenie IP a MAC adries, a tak zabrániť odosielaniu rámcov zo smerovača na podvodné MAC adresy.

Port stealing

Tento útok útočníci vykonávajú za rovnakým účelom, a to zachytávaním paketov, ktoré im nepatria.
Útok spočíva v ukradnutí portu obete na switchi. Útočník musí poznať MAC adresu obete, čo nie je ťažké na LAN sieti zistiť. Potom útočník začne posielať rámce, ktoré budú mať cieľovú MAC adresu zhodnú s jeho MAC adresou a zdrojová MAC adresa bude MAC adresa obete. Switch logicky podľa zdrojovej MAC adresy poopraví svoju CAM tabuľku. A ďalej si myslí, že je obeť na porte, ktorý v skutočnosti využíva útočník. Ak príde na switch nejaký rámec pre obeť bude poslaný na PC útočníka. Útočník si môže rámec prezrieť, analyzovať a mal by ho doručiť obeti. Na to však musí opäť pozmeniť CAM tabuľku switcha. Pozmenenie útočník dosiahne tým, že prestane posielať rámce s upravenými MAC adresami a odošle paket ARP request, obeť odpovie paketom ARP reply a switch upraví CAM tabuľku. Tak môže útočník poslať rámec obeti. Pokiaľ obeť pošle akýkoľvek rámec počas útoku CAM, tabuľka sa pozmení, takže rámce s pozmenenými MAC adresami musí útočník posielať v krátkych časových intervaloch.
Proti útoku sa dá žiaľ brániť len použitím manažovateľného L3 switcha. Detegovať ho možno pri sledovaní sieťovej prevádzky veľkým množstvom ARP request paketov.

MAC Flooding

Spočíva v účelovom zaplnení CAM tabuľky switcha. Útočník musí najskôr zaplniť CAM tabuľku prepínača, takže musí posielať obrovské množstvo rámcov, pretože CAM tabuľka zvyčajne obsahuje miesto pre tisíce položiek. Po zaplnení CAM tabuľky sa najčastejšie switch prepne do stavu, v ktorom sa správa ako HUB. Začne preposielať rámce na všetky porty, okrem tých z ktorých prišli. Stať sa však môže prípad, ak sa už nachádza v CAM tabuľke správny záznam pre istú MAC adresu, v tomto prípade rámce určené pre túto MAC adresu poputujú len na jeden správny port. Po istom čase sa však položky z CAM tabuľky mažú. Toto miesto musí zaplniť práve útočník. Vždy je však aj možnosť, že toto miesto zaberie iný počítač a útočník tak môže stratiť komunikáciu smerom k nemu. Na to, aby mohol útočník rámce zachytávať na svojom počítači, musí sieťovú kartu prepnúť do promiskuitného režimu.
Útok spoznáme väčšinou ľahko tým, že k nám začnú prichádzať rámce určené iným MAC adresám, ale až keď je už CAM tabuľka switcha zaplnená.

Väčší problém je s obranou proti tomuto útoku, tá je možná len na switchi a to nie na bežných, ale opäť len na manažovateľných citeľne drahších modeloch.

DHCP spoofing

Tento útok v podstate nepotrebuje k svojej aplikácií switch, i keď switch alebo router obsahujúci prepínač dnes nájdeme v drvivej väčšine sieti. Umožní útočníkovi vydávať sa za bránu resp. router a presmerovať tak sieťovú prevádzku obete, ktorá by mala napríklad putovať na internet, na počítač útočníka. Ten ju následne môže poslať na skutočnú IP adresu brány. Princípom je zneužitie procesu prideľovania sieťových informácií DHCP protokolom. Na jednej sieti môže byť DHCP serverov niekoľko. Každá stanica, ktorá je do siete pripojená prvýkrát, vyšle DHCP discover paket, čím dá o sebe vedieť a čaká na odpoveď DHCP servera. Ak je DHCP serverov viac, rozhoduje rýchlosť a teoreticky to, či niektorý server nevyčerpal všetky IP adresy, ktoré môže priradiť. DHCP server reaguje paketom DHCP offer, ktorým ponúka potrebné sieťové údaje. Klient opäť pokračuje odoslaním paketu DHCP request a žiada tieto údaje. Server ukončuje získanie údajov paketom DHCP ack. Klient tým obdrží všetky potrebné sieťové údaje. IP adresa však ostáva pridelená stanici len istý čas, potom je nútená predĺžiť si jej prenájom, ak k tomu nedôjde, DHCP server ju považuje za voľnú a znova ju môže poskytnúť iným staniciam. Pokiaľ už bol počítač v sieti niekedy pripojený, žiada konkrétny DHCP server o poslednú adresu, ktorú mu pridelil, paketom DHCP request. Server mu buď vyhovie, alebo pošle novú IP adresu, prípadne nemusí zareagovať (ak má už vyčerpané IP adresy na pridelenie). Celý postup sa tak začína nanovo.

Útočník musí dosiahnuť to, aby klient dostal sieťové údaje od jeho DHCP servera a nie korektné od toho skutočného. Jednou z možností je byť najrýchlejší, na čo sa však nedá spoľahnúť a obzvlášť nie, ak už počítač v sieti bol niekedy pripojený. A tak je jedinou jeho možnosťou zámerne vyčerpať všetky IP adresy, ktoré ponúka legitímny DHCP server, ten potom už na požiadavky od klientov nereaguje. Tak môže bez problémov útočníkov falošný DHCP server poskytnúť klientom podvrhnutú IP adresu brány. Niekedy je potrebné, aby útočník počkal ešte na uplynutie času prenájmu istých, už pridelených IP adries. Útok má nevýhodu, že útočník môže kontrolovať len pakety smerujúce na bránu (router) a nie z routera na počítač.

Obrana môže byť jednoduchá v podobe nepoužívania DHCP servera a spoliehania sa len na statickú konfiguráciu, čo však nie je vždy riešenie. Pokiaľ je DHCP server nevyhnutný, je dobré nastaviť dobu prenájmu IP adries na čo najdlhší čas, to útočníkovi dostatočne sťaží situáciu.

Výskyt falošného DHCP servera môže administrátor sledovať odposluchom sieťovej prevádzky a kontrolovaním paketov DHCP offer. Môže ich byť viac, alebo môžu mať odlišnú IP a MAC adresu, ako skutočný DHCP server. Test sa dá spraviť aj zaslaním paketu DHCP discover a sledovať odpovede DHCP offer, prípadne tento test vykonávať v pravidelných intervaloch. To však môže útočník zistiť a zablokovať administrátorskú IP a MAC adresu na jeho falošnom DHCP serveri. Jeho dotazy budú tak ignorované, čím sa mu značne sťaží práca.



Ďalšie útoky

DNS spoofing - je jedeným z najzávažnejších sieťových rizík, ktoré hrozia na LAN. Samozrejme tento útok sa nemusí obmedzovať len na LAN siete, ale v tomto článku sa budeme venovať len možnostiam zneužitia na LAN. DNS protokol je veľmi zložitý, tak ako aj problematika jeho zneužitia. Jeho hlavnou úlohou je preklad doménových názvov na IP adresy. Útočník ho môže zneužiť na presmerovanie obete na podvodnú stránku na LAN, či mimo LAN. Táto stránka môže obsahovať malware a tak infikovať obeť a pritom môže byť na nepoznanie od legitímnej stránky. Sfalšovať útočník môže napríklad aj stránku banky a tým sa mu otvára priestor na zachytenie prihlasovacích údajov obete. Možností je veľa, záleží na zručnostiach útočníka pri používaní techník sociálneho inžinierstva.

Na počítači klienta sa stará o DNS preklad DNS klient. Ten je súčasťou operačného systému. DNS klient položí dotaz DNS serveru, ktorý zistí zo základných sieťových nastavení (môže byť získaný DHCP protokolom a už vtedy podvrhnutý, ako sme spomínali vyššie, teraz však predpokladáme, že ide o korektný DNS server). Odpoveď, ktorú obdrží si uloží v DNS cache na dobu akú udáva v odpovedi DNS server. Po uplynutí doby sa pýta DNS servera znova.

Útočníkovi sa naskytá na LAN možnosť odoslať DNS odpoveď rýchlejšie, ako legitímny server, a tak ovplyvniť klienta, ktorý ďalšiu odpoveď už ignoruje. DNS server môže útočník spomaliť, alebo zneprístupniť napríklad DoS útokom. Ale bez ohľadu na rýchlosť sfalšovanie odpovede nie je pre útočníka v súčastnosti jednoduchá záležitosť. DNS protokol štandardne využíva na transportnej vrstve UDP protokol, pokiaľ je odpoveď väčšia, vyhne sa fragmentácii použitím TCP protokolu. Útočník musí predpokladať štandardné použitie UDP. Potrebuje poznať IP adresu DNS servera, čo je najčastejšie IP adresa smerovača (routera). Musí vedieť aký doménový názov chce útočník preložiť, port z akého pochádza dotaz a ID dotazu slúžiace na spárovanie dotazu a následnej odpovede DNS servera. Zistiť tieto údaje je v súčastnosti väčšinou možné už len použitím niektorého z útokov na LAN, ktoré sme si spomenuli vyššie a počúvaním sieťovej prevádzky. Časy, keď mnohé verzie operačných systémov obsahovali chyby, ktoré sa dali zneužiť, či už na strane klienta alebo servera sú preč. I keď využitie nejakej zraniteľnosti nie je úplne vylúčené. Keď tieto údaje útočník zistí, sfalšuje ich pomerne jednoducho.

Možnosti obrany na strane klienta spočívajú v používaní aktuálnych verzií operačných systémov a taktiež má možnosť používať DNS servery podporujúce isté bezpečnostné technológie ako DNSSEC. Administrátor môže útok detegovať tým, že deteguje iný útok ktorý by pravdepodobne DNS spoofingu predchádzal. V prípade, že by útočník hádal, pri zostavovaní odpovede na DNS dotaz, na sieti by videl množstvo DNS odpovedí. Navyše DNS odpoveď bez dotazu je nezmyselná, a tak sa dá s istotou povedať, že ide o útok. Na strane DNS serveru sa dá brániť v prvom rade používaním najaktuálnejšej verzie a nasadením bezpečnostných technológií, ako DNSSEC, kde sú všetky odpovede digitálne podpísané a klient si ich tak môže spoľahlivo overiť.

Dávnejšie existovala možnosť zneužiť protokol ICMP, konkrétne ICMP správy typu 5 na útok ICMP redirect. Táto správa slúži na zmenu smerovania (redirect) a obsahuje kódy 0, 1, 2 a 3. Z toho sa dá jednoducho zneužiť správa s kódom 1 - zmena smerovania pre uzol. Táto servisná správa slúži na zmenu smerovania, teda zmenu informácií v smerovacej tabuľke. Môže ju odoslať smerovač, ktorý zistí, že je lepšie smerovať dané pakety cez iný smerovač. Útočník tu môže jednoducho zneužiť situáciu a posielať stanici falošné ICMP redirect pakety a zmeniť tak smerovanie paketov obete cez svoj počítač. V súčastnosti to však už nemá žiaden význam, nakoľko Microsoft od Servis packu 2 pre Windows XP tieto pakety automaticky blokuje (dá sa to však manuálne vypnúť) a taktiež ich blokujú všetky súčasné firewally. Nehovoriac o tom, že protokol ICMP je považovaný ako taký za nebezpečný, a tak mnohé jeho servisné správy (pakety) administrátori v sieti blokujú úplne. Sieť si bez nich vystačí. Nie je nutný a efektívny vzhľadom na bezpečnostné riziko, ktoré predstavuje aj kvôli ostatným typom servisných paketov.

Okrem týchto útokov existujú aj mnohé ďalšie, ktoré sa však zakladajú na použití už vyššie spomínaných útokov a týkajú sa zneužitia protokolov vyšších vrstiev. Zabudnúť nemôžeme ani útoky využívajúce špecifické protokoly použité v LAN ako VTP pri použití VLAN, DTP a pod... Tieto protokoly pochádzajú zväčša z produkcie spoločnosti Cisco, a preto sa im budem venovať osobite niekedy nabudúce.

K všeobecnej ochrane je pre administrátorov veľmi dôležité zabrániť niektorým útokom, zakázaním promiskuitného režimu na počítačoch svojich zamestnancov. To docielia zriadením účtov s obmedzenými oprávneniami, čím zabránia aj prípadnej inštalácií špecifických nástrojov potrebných na realizáciu útokov. V domácej sieti, alebo napr. pri lokálnych poskytovateľoch internetu však takéto niečo nie je možné, preto sa oplatí investovať do drahších aktívnych zariadení, ktoré dokážu týmto útokom efektívne zabrániť. To isté je samozrejme dôležité okrem iných opatrení aj vo firemnom prostredí. Najpoužívanejšie aktívne zariadenia sú zariadenia spoločnosti Cisco, preto sa budem v niektorom z ďalších článkov venovať práve bezpečnostnej politike na týchto zariadeniach.

Nástroje používané na realizáciu sieťových útokov

Na odpočúvanie sieťovej prevádzky je neoceniteľným pomocníkom opensource program Wireshark pre Windows i Linux, vo Windowse potrebuje pre správnu funkčnosť ovládač Winpcap. Automaticky sa pokúsi prepnúť vašu sieťovú kartu do promiskuitného režimu. K realizácií jednotlivých popísaných útokov je potrebné siahnuť skôr po operačnom systéme Linux, i keď verzie niektorých program existujú aj pre Windows. V tejto oblasti je veľmi populárny program Ettercap, existuje aj vo verzii pre Windows, dokáže zrealizovať mnohé zo spomínaných útokov. Pre Windows sa dá použiť k realizácií niektorých útokov aj program Cain & Abel. Zaujímavé aplikácie poskytuje aj balík Dsniff určený len pre Linux, využiť sa dá napríklad pri MAC floodingu.

Záver

Cieľom tohto článku bolo poukázať na možné riziká LAN sietí a popísať jednotlivé útoky. Ideálne je, si ich použitím nástrojov na to určených, odskúšať na testovacej sieti a pokúsiť sa svoju sieť zabezpečiť, ako najlepšie to ide. Na LAN môžu hroziť aj ďalšie útoky, ako som už spomenul vyššie - na ne sa zameriam nabudúce.


Podporte nás


Páčil sa Vám tento článok? Ak áno, prosím podporte nás ľubovoľnou čiastkou. Ďakujeme!


ITC manažer Security-portal.cz Soom.cz
Hoax.cz Crypto-world.info