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.

Bezpečnosť na LAN pod lupou: Úvod a útok ARP cache poisoning

V tejto sérií článkov sa podrobne zameriame na útoky, ktoré sa často vyskytujú na lokálnych sieťach (LAN). Nevyhýbajú sa žiadnej oblasti ich využitia, a tak sa stávajú nebezpečnými pre firemné prostredie, domáce siete, ale aj pre lokálnych poskytovateľov internetu. Mnohí odborníci považujú hrozby rôznych útokov v rámci LAN sieti za oveľa vážnejšie a častejšie, ako hrozby prichádzajúce z internetu. V lokálnom prostredí sa nezriedka nájde aj vážnejší motív spejúci k útoku a jeho realizácia je zvyčajne oveľa jednoduchšia, než v prípade útoku prostredníctvom internetu. Lokálna sieť tak robí útočníka z kohokoľvek zdatnejšieho v oblasti informačných technológií, či už ide o suseda, alebo nespokojného zamestnanca. Avšak je dôležité, uvedomiť si rozdielnosť pri rizikách na firemnej a domácej lokálnej sieti. Popularitu týchto útokov potvrdzujú aj rôzne štatistiky, a preto by ich na ľahkú váhu nemal brať žiadny správca siete.

Upozornenie: Všetky publikované informácie a postupy slúžia výhradne na študijné účely, prevádzané len na sieťach, ktoré patria pod vaše vlastníctvo, ak týmto konaním priamo, či nepriamo nezasiahnete ich používateľov. Vykonávanie týchto postupov na sieťach s reálnou prevádzkou môže byť ilegálne a v každom prípade ide o amorálne počínanie. Autor článku nenesie žiadnu zodpovednosť za škody, ktoré môžu vzniknúť v dôsledku realizácie týchto postupov.

K všeobecnej ochrane v rámci firemnej LAN je pre administrátorov veľmi dôležité zabrániť niektorým typom útokov, zakázaním promiskuitného režimu na počítačoch svojich pracovníkov. 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 sieťových ú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ť. Toto opatrenie je vhodné aj pre firmy, pretože často sa medzi zamestnancami nájdu aj tí IT zdatnejší a spomínané obmedzenie prekonajú s neveľkou námahou.

Prakticky možno vždy odporúčať administrátorom kombináciu niekoľkých metód zabezpečenia lokálnej siete. Ideálne je aplikovať bezpečnostné mechanizmy aj lokálne, (na počítačoch používateľov, pokiaľ je to možné), ale aj globálne na aktívnych sieťových prvkoch (v LAN sieti na prepínačoch). Okrem toho nemožno podceňovať ani analýzu sieťovej prevádzky, ktorá umožňuje odhalenie niektorých útokov, či príležitostný, (v rámci možností aj automatizovaný) pokročilejší monitoring sieťovej aktivity.

Tieto články sa budú postupne zaoberať najrozšírenejšími útokmi v rámci LAN, no aj útokmi na proprietárne protokoly spoločnosti Cisco. Ďalej sa venujú ochrane voči týmto útokom a možnostiam, ktoré v tomto smere ponúkajú manažovateľné tzv. L3 prepínače. Keďže ide o rozsiahlu problematiku obsah bude publikovaný vo viacerých častiach.

Na úvod potrebná teória

Prepínač (switch) nahradil v súčasnosti, v drvivej väčšine lokálnych sieti, v minulosti často používaný HUB (rozbočovač). Väčšina klasických, bežne dostupných prepínačov pracuje na druhej - linkovej vrstve OSI modelu. Tieto prepínače, na rozdiel od rozbočovačov, odosielajú rámce iba jednotlivým uzlom na základe ich MAC adries. Môžu tiež vykonávať určité druhy filtrácie. Hlavne vo firemnom prostredí, pri väčších sieťach sa zvyknú používať aj prepínače pracujúce na tretej - sieťovej vrstve tzv. L3 switche. Tieto prepínače sú manažovateľné, umožňujú administrátorovi podrobnú konfiguráciu, tvorbu virtuálnych LAN sieti, či podrobné nastavenie filtrácie rámcov. Veľmi často sa pri prepínaní využívajú aj špecifické linkové protokoly, ktoré tento proces uľahčujú.


Jednoduchá topológia siete s prepínačom.
Jednoduchá topológia siete s prepínačom.

Rozbočovač (HUB) na LAN odosiela rámce všetkým uzlom, teda aj tým, pre ktoré vôbec nie sú určené, okrem portu z ktorého rámec prijal. Nevykonáva žiadnu filtráciu, a tak nemožno pri ňom o pojme bezpečnosť ani len hovoriť. Pre útočníka 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. Túto prevádzku môže následne analyzovať a získavať tak citlivé, či cenné dáta. Okrem obrovského bezpečnostného rizika sme sa pri rozbočovačoch stretávali aj s ďalšími problémami. Jedným z najzávažnejších problémov je vysoká pravdepodobnosť vzniku kolízií. HUB takisto obmedzuje šírku pásma pre komunikáciu jednotlivých uzlov. Rozbočovače sa v súčasnosti už takmer vôbec nepoužívajú, plne ich nahradili cenovo dostupné prepínače (switch-e). Tie zdvihli úroveň lokálnych sietí, ale aj bezpečnostný štandard na poznateľne vyššiu úroveň.


Jednoduchá topológia siete s rozbočovačom.
Jednoduchá topológia siete s rozbočovačom.

Princíp práce prepínača

Medzi každým portom prepínača a uzlom, ktorý je k nemu pripojený ide o point-to-point spojenie. Každý port tak predstavuje samostatnú kolíznu doménu. Uzol má pre seba celú šírku pásma. Prepínač vo všeobecnosti odosiela rámce z portu, na ktorom ich prijal, na porty, pre ktoré sú určené.

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 CAM tabuľku, kde prepája MAC adresu uzlu 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. Keď 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. Každý prepínač môže mať tento čas stanovený inak.


Ukážka simulácie CAM tabuľky.
Ukážka simulácie CAM tabuľky.

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ý (teda v tomto prípade sa správa dočasne ako HUB). K zaplavovaniu dochádza aj pri špeciálnych typoch rámcov zaslaných na broadcastovú MAC adresu. Pri L3 prepínačoch (pracujúcich aj na tretej vrstve OSI modelu - sieťovej) môžeme nakonfigurovať rôzne druhy filtrovania. Blokovať možno isté porty, typy rámcov, či konfigurovať určité bezpečnostné opatrenia.

Protokoly v lokálnej sieti a ich bezpečnosť

V tejto časti objasníme princíp práce linkových a sieťových protokolov využívaných v rámci lokálnej siete. Medzi základné sieťové protokoly, ktoré sa v súčasnosti využívajú vo všetkých ethernetových sieťach patrí rozhodne ARP. Na linkovej vrstve sú z pohľadu útočníka, ale aj ochrancu zaujímavé hlavne proprietárne protokoly spoločnosti Cisco. Vo všeobecnosti platí pravidlo, že kvalitne chrániť, či útočiť možno na daný objekt až po tom, ako človek spozná všetky jeho parametre, či úskalia.

Protokoly ARP, RARP a ich riziká

Address Resolution Protocol (ARP) je protokol, ktorý zabezpečuje preklad lokálnych IP adries na MAC adresy sieťových uzlov. Každý rámec odosielaný na cieľový uzol, či už v LAN alebo WAN sieti 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. Medzi IP a MAC adresou neexistuje žiadna matematická spojitosť. Pri určovaní sa najskôr opiera o záznamy vo svojej ARP tabuľke - ARP cache. V operačnom systéme Windows ju môžeme vypísať cez príkazový riadok príkazom arp -a. V systéme Linux prostredníctvom konzoly s príkazom arp.

Proces určovania MAC adresy

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 tabuľke - 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. 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 paket ARP request - žiadosť o MAC adresu prislúchajúcu k určitej IP adrese. Po obdržaní odpovede - paketu ARP reply od stanice, ktorá má hľadanú IP adresu a je aktívna, si údaj uloží do ARP cache. Záznamy v ARP tabuľke vydržia len určitú dobu, pokiaľ nedôjde k ich obnoveniu. Táto doba závisí od použitia konkrétneho operačného systému.

Príklad:

Naša IP adresa je 192.168.1.1, sieťová maska je 255.255.255.0 (/24), chceme komunikovať s IP adresou 192.168.1.2. Logický súčin našej IP adresy a masky po prevode do dvojkovej sústavy vychádza 192.168.1.0. To znamená, že stanica sa nachádza na rovnakej sieti ako my a môžeme s ňou priamo komunikovať, po zistení jej MAC adresy.

Ak je naša IP adresa naďalej 192.168.1.2 a maska 255.255.255.0 (/24) a chceme komunikovať s IP adresou 89.37.12.6, operačný systém prevedie logický súčin s touto IP adresou a našou maskou v binárnej sústave. Výsledkom je 89.37.12.0, čo jasne ukazuje, že sa daná stanica nachádza mimo našu lokálnu sieť. V tomto prípade s ňou nemôžeme priamo komunikovať, a tak sa použije MAC adresa našej brány do siete WAN resp. internetu. Najčastejšie je ňou náš smerovač.

Ako už bolo spomenuté vyššie, pokiaľ sa MAC adresa prislúchajúca lokálnej IP adrese, či adresa brány, nenachádza v ARP cache nášho počítača, vyšle PC ARP paket. Ten sa dožaduje MAC adresy pre IP adresu s ktorou chce komunikovať (cieľová stanica). Znie asi takto: „Ak máš túto IP adresu, ozvi sa mi a daj mi vedieť tvoju MAC adresu...“ Pošle ho na broadcastovú linkovú (MAC) adresu. Čiže zo sieťového hľadiska vyzerá ARP request (dotaz) takto:



ARP request Ethernet ARP paket
MAC adresa MAC adresa IP adresa
Odosielateľ 000D-BD7B-5EEB 000D-BD7B-5EEB 192.168.1.1
Prijímateľ broadcast ff:ff:ff:ff:ff:ff 00:00:00:00:00:00 192.168.1.2

Ak je cieľová stanica aktívna resp. dostupná na sieti a pokiaľ nevykonáva nejakú špecifickú filtráciu protokolu ARP, odpovie paketom ARP reply (odpoveď): „Cieľová IP je - nasleduje jej MAC adresa.“ Zo sieťového hľadiska vyzerá takto:



ARP reply Ethernet ARP paket
MAC adresa MAC adresa IP adresa
Odosielateľ 000D-BD53-849D 000D-BD53-849D 192.168.1.2
Prijímateľ 000D-BD7B-5EEB 000D-BD7B-5EEB 192.168.1.1

Protokol ARP využíva pre svoju funkčnosť útok ARP Cache poisoning. Avšak ARP protokol môže byť využívaný prípadným útočníkom aj na zisťovanie prítomnosti určitých staníc v rámci LAN siete. Toto zisťovanie sa realizuje veľmi jednoducho ARP pingom. ARP ping zväčša dosiahneme aj bežným pingom napr. cez príkazový riadok v operačnom systéme Windows. ARP ping nie je nič iné ako odoslanie ARP requestu a očakávanie ARP reply, a teda vykoná sa vždy pri požiadavke komunikácie, pokiaľ sa patričný záznam nenachádza v ARP cache. Tým dá stanica vedieť, že je na lokálnej sieti „živá“. Útočníkovi tak veľmi uľahčí objavenie potenciálnej obete. V súčasnosti však už väčšina sieťových firewallov dokáže filtrovať ARP protokol a brániť tak možným útokom.


ARP request zachytený pomocou programu Wireshark.
ARP request zachytený pomocou programu Wireshark.

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 praxi to boli napr. jednoduché, jednoúčelové prístroje. V pamäti mali uloženú len svoju MAC adresu a pokiaľ sa museli pripojiť do siete napr. kvôli aktualizácií firmwaru, jedinou možnosťou bolo dotazovať sa na svoju IP adresu reverzne protokolom RARP. Čiže prekladom MAC adresy na IP adresu. Na ich požiadavku im odpovedal napr. smerovač podporujúci protokol RARP, čo im následne umožnilo komunikáciu. V súčasnosti sa však už protokol RARP takmer nepoužíva, pridelenie IP adresy sa rieši inými protokolmi, najčastejšie je to aplikačný protokol DHCP, ktorý je dnes podporovaný všetkými smerovačmi.

IPv6 v budúcnosti už protokol ARP nebude potrebovať (resp. v súčasnosti 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í slabín protokolu ARP k získaniu dátovej prevádzky, ktorá v skutočnosti nepatrí útočníkovi. Vo svojom princípe nevyžaduje, aby mal útočník sieťovú kartu v promiskuitnom režime. ARP cache poisoning patrí do skupiny tzv. MITM útokov - Man in the middle, v preklade „človek uprostred.“ Cieľom týchto útokov je umiestniť pri legitímnej komunikačnej ceste prostredníka medzi obeť a cieľ. Prostredník komunikáciu zachytáva, analyzuje, prípadne pozmeňuje a mal by ju samozrejme odoslať aj ďalej, skutočnému adresátovi.

Útok je realizovateľný na sieti, kde sa používa prepínač (switch). Predpokladáme, že nejde o switch na ktorom sú aktívne bezpečnostné opatrenia ako Dynamic ARP inspection. Aby bol útok plnohodnotný predpokladá sa aj pokus o kompromitáciu smerovača resp. brány pre prístup do WAN siete, alebo internetu.

Princíp


Princíp MITM útokov.
Princíp MITM útokov.

Zmyslom útoku je prinútiť obeť myslieť si, že komunikuje v skutočnosti s bránou resp. smerovačom, no v skutočnosti bude komunikovať s útočníkom. Ak chceme zachytávať obojsmernú prevádzku je nutné presvedčiť aj smerovač o tom, že komunikuje s obeťou, avšak aj on bude v skutočnosti komunikovať s útočníkom. Útočník bude tak tvoriť akéhosi prostredníka cez ktorého bude putovať dátový tok medzi obeťou a bránou a to ideálne v oboch smeroch.

Príklad


Príklad znázornenia topológie siete, v ktorej prebieha útok.
Príklad znázornenia topológie siete, v ktorej prebieha útok.

Predstavme si lokálnu sieť na ktorej sú tri zariadenia: PC1 - útočník, IP1, MAC1; PC2 - obeť, IP2, MAC2; R1 - router (smerovač), IP3, MAC3 a SW1- bežný prepínač (switch) . Útočník PC1 chce zachytiť obojsmernú prevádzku medzi PC2 a R1. Jeho úlohou je teda oklamať obeť - PC2, že IP adrese smerovača (brány) IP3 patrí jeho MAC adresa - MAC1 a nie legitímna MAC adresa smerovača - MAC3. Pokiaľ chce odchytávať obojsmernú komunikáciu musí ďalej presvedčiť smerovač - R1 (bránu) o tom, že obeti PC2 patrí jeho MAC adresa - MAC1 a nie legitímna adresa MAC2.

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. Zariadenia si tak nesprávne poopravia ARP cache. Paket obsahuje pre obeť nesprávnu MAC adresu brány, ktorá je v skutočnosti jeho MAC adresa, klamlivo patriaca IP adrese smerovača. 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.

Celý bezpečnostný problém spočíva v tom, že ARP reply paket môže pozmeniť záznam v ARP cache počítača aj bez toho, aby tento počítač inicializoval paket ARP request. (Za predpokladu, že počítač nepoužíva firewall.) Jednou podmienkou je, že záznam v ARP cache už musí existovať pred pokusom o jeho zmenu. Z technického hľadiska sa však dá táto podmienka splniť ľahko, postačuje klasický ping na IP adresu.

Pokiaľ chce útočník vykonať hromadné otrávenie ARP cache viacerých aktívnych staníc na lokálnej sieti, použije tzv. ARP Gratuitous Reply - zbytočné ARP odpovede. Ide o klasický ARP reply paket, ktorému nepredchádzal ARP dotaz - ARP reply, no MAC adresa príjemcu je nastavená na broadcastovú adresu FF:FF:FF:FF:FF:FF. Príjmu ho teda všetky stanice a pokiaľ už poznajú daný záznam a nefiltrujú ARP pakety, poopravia si patričné MAC adresy na podvrhnuté.

Ak sa to útočníkovi podarí, získa kompletnú obojsmernú komunikáciu, ktorú si môže prezerať, analyzovať, či upravovať a následne poslať na správne MAC adresy, aby nevzbudil podozrenie.

Detekcia

Detekcia je možná buď na prepínači alebo na strane používateľa. Detekciu na prepínači umožňujú zväčša iba manažovateľné typy. V tomto prípade je pomerne ľahké odhaliť útok z tabuľky, kde je prepojená MAC adresa, IP adresa a port. Pri Cisco prepínačoch sú to tabuľky: ARP table, prípadne Port Status Summary Table.

U používateľa detekcia spadá pod funkcionalitu lokálneho firewallu alebo analýzu lokálnej ARP cache.

V súčasti už takmer každý personálny firewall dokáže filtrovať ARP pakety a spravovať tento protokol. Faktorov, ktoré určujú, že ide s vysokou pravdepodobnosťou o útok je hneď niekoľko. Jedným z nich je prichádzajúci ARP reply paket, ktorý nebol inicializovaný žiadnou predchádzajúcou požiadavkou ARP request. Firewall v tomto prípade paket zvyčajne zahodí. Firewall môže taktiež ako útok vyhodnotiť veľmi vysokú intenzitu ARP reply paketov.

Pre operačné systémy Windows i Linux je dostupných niekoľko aplikácií ktoré ARP tabuľku monitorujú a pri zmene sú schopné upozorniť používateľa. Pre Windows je to napr. program XARP, pre Linux, okrem neho aj ARP Watch. Programy hneď po spustení načítajú aktuálnu verziu tabuľky a porovnávajú ju v určitých časových intervaloch s jej zmenami. Pokiaľ pribudne nová IP adresa s MAC adresou program si ju zapamätá, ak sa však zmení MAC adresa pre už existujúcu IP adresu vygeneruje varovanie. Problém tu nastáva pri používaní DHCP servera.


Program XARP pre Windows.
Program XARP pre Windows. Dostupná je okrem 32 bit. aj verzia pre 64 bit. systémy.

Pre sieťových administrátorov je vhodná aj aktívna detekcia. Pokiaľ administrátor vyšle ARP request a obdrží viac odpovedí, alebo po odpovedi vidí v ARP cache odlišnú MAC adresu indikuje to prebiehajúci útok. Avšak situácia je komplikovanejšia pokiaľ sa útočník zameriava len na jeden počítač v rámci LAN. V takomto prípade je spoľahlivá detekcia možná iba pomocou manažovateľného prepínača alebo lokálne na postihnutom počítači.

Obrana

Voči tomuto útoku existuje obrana na niekoľkých úrovniach.

Lokálne

Ako bolo spomenuté vyššie pomocou personálneho firewallu, ten okrem detekcie dokáže zablokovaním podvodných ARP reply paketov útoku aj zabrániť. Avšak nie vždy. Občas je totiž veľmi ťažké rozlíšiť legitímne použitie ARP protokolu od toho škodlivého.

Ďalej je možné používať statické záznamy v ARP cache. Na statické záznamy nemá tento útok vplyv. Sú zadané zvyčajne manuálne a majú neobmedzenú životnosť pokiaľ je počítač zapnutý. Samozrejme po jeho vypnutí sa statické záznamy stratia. Jednou z možností je vytvorenie dávkového súboru, kde sa budú nachádzať vopred definované statické údaje. Pokiaľ donútite pri každom spustení počítač vymazať ARP cache a použiť definované statické položky (hlavne položku brány) ste v relatívnom bezpečí. Použiť možno aj zmienené aplikácie, ktoré zvládajú okrem detekcie aj čiastočnú ochranu. Avšak toto nie je riešenie pre väčšie siete resp. väčšie spoločnosti. Obzvlášť, ak je nutné používať DHCP server, ktorý preberá automatickú deľbu IP adries. V tomto prípade je vhodné investovať do drahšieho manažovateľného prepínača, ktorý umožňuje inšpekciu ARP paketov.

Na smerovači

Pri použití niektorých smerovačov sa dá čiastočne brániť pevným prepojením IP a MAC adresy v ich ARP cache. Zabránime tak odosielaniu rámcov zo smerovača na podvodné MAC adresy. Touto funkcionalitou však nedisponujú všetky bežne dostupné smerovače.

Na prepínači

Drahšie L3 prepínače umožňujú inšpekciu ARP paketov. Táto ochrana je najkvalitnejšia.

Spoločnosť Cisco implementovala v rámci bezpečnostných opatrení do svojich prepínačov nástroj Dynamic ARP Inspection - DAI. Ide o bezpečnostnú funkciu, ktorá zabraňuje posielaniu neplatných dotazov a odpovedí na ostatné porty prepínača v rovnakej VLAN sieti. Bezpečnostná funkcia vyžaduje, aby sa na prepínači využíval DHCP Snooping a vytvárala sa DHCP snooping binding databáza, ktorá definuje priradenie MAC a IP adries, alebo aby sa vyžilo ARP ACL, kde sa prepojenie MAC a IP adresy zadáva manuálne.

Funkciou DAI je kontrolovať všetku ARP prevádzku, ktorá prichádza na port a zahadzovať rámce, kde informácie nezodpovedajú definovaným prepojeniam daných adries. Okrem toho plní aj funkciu rate-limiting (obmedzovanie množstva ARP paketov). Ide o prevenciu pred DoS útokmi. Základný stav je 15 ARP paketov za sekundu. Ak sa prekročí, port sa prepne do error-disabled stavu.

DAI rozoznáva dva stavy rozhrania, trusted (dôveryhodný), kde sa kontrola neprevádza a untrusted (nedôveryhodný) kontrolujú sa tu všetky ARP pakety.

Kontrola pomocou DAI funguje len na vstupe (ingress) a môže sa jednať o prístupové, trunk alebo EtherChannel porty. DAI je vhodné nakonfigurovať na všetkých prístupových (koncových) portoch ako nedôveryhodné a na trunk portoch medzi prepínačmi ako dôveryhodné. Vykonávať možno aj kontrolu prichádzajúcich ARP paketov, či súhlasí zdrojová MAC adresa odosielateľa s odosielateľovou MAC adresou v tele ARP paketov, u ARP dotazov a pri odpovediach, alebo cieľová MAC v pakete u odpovedí. Prípadne je možné vykonávať aj kontrolu IP adries.

Praktické prevedenie

Útočník potrebuje k praktickému prevedeniu špecifické nástroje. Ako operačný systém sa zväčša používa niektorá z Linuxových distribúcií. Linux v tomto smere poskytuje niekoľko výhod. Hlavnou je, že pre túto platformu existuje široké spektrum sieťových, či penetračných nástrojov. Toto sa nedá povedať o systéme Windows. Okrem toho prekonáva isté systémovo-sieťové obmedzenia, ktoré pri penetračnom testovaní komplikujú život používateľovi systému Windows.

Bezpochyby jedným z najznámejších nástrojov na realizáciu jednotlivých útokov v rámci LAN siete je nástroj Ettercap. Okrem prevedenia útokov umožňuje mnohé ďalšie funkcie. Ettercap je LAN sniffer, dokáže vykonať hneď niekoľko sieťových útokov. Okrem tejto funkcionality pridáva aj filtráciu získavaných dát a mnoho pluginov s ďalšími špeciálnymi možnosťami.

Na začiatku je dôležité poznať správnu sieťovú masku, na základe ktorej Ettercap vykoná skenovanie siete a vyhľadá aktívne stanice. Nasledujúci postup je rovnaký aj pri vykonávaní ďalších útokov cez tento nástroj. Líši sa až v závere spustením samotného, konkrétneho typu sieťového útoku.


Grafické rozhranie programu Ettercap.
Grafické rozhranie programu Ettercap.

Po spustení je ideálne aktivovať promiskuitný mód, samozrejme ak ho podporuje vaša sieťová karta. (Options - Promisc mode). Ak by útočník vykonával sniffing priamo na bráne, napr. na počítači, ktorý slúži aj ako smerovač, zaškrtne možnosť Unoffensive. Ďalej pokračujeme na položku Sniff a vyberieme možnosť Unified sniffing. Program sa opýta na rozhranie, ktorým sme pripojený na sieť. Pre ethernetové pripojenie je to zväčša eth0, pre WiFi wlan0. Možnosť Bridged sniffing ponúka sniffovanie prevádzky z jedného rozhrania na druhé. V tomto prípade nemá pre nás zmysel. Pre vykonanie útoku potrebujeme poznať aké stanice sa na LAN sieti vyskytujú. Ich skenovanie prevedieme cez Hosts - Scan for hosts. Tento proces pridá aktívne stanice do Hosts listu (Hosts - Hosts list). V tomto zozname vidíme nájdené IP adresy spolu s ich MAC adresami.

Pred samotným zahájením útoku je nutné určiť IP adresu brány, zvyčajne teda smerovač. Často ju ľahko a logicky odvodíme od nájdených IP adries, prípadne ju zistíme z nášho systému. Ettercap poskytuje na jednoduchú identifikáciu aj plugin. Spustíme proces sniffingu (Start - Start sniffing). Potom vyhľadáme plugin gw_discover. (Plugins - Manage the plugins). Plugin gw_discover funguje na jednoduchej báze, vyžiada si od vás IP adresu a port (syntax: IPadresa:port). Brána bude v prípde úspechu vypísaná v dolnej časti okna.

Po identifikovaní brány je dôležité určiť zoznamy IP adries. Jednou z možností je automatika pomocou pluginu autoadd, program automaticky pridá novo pripojené stanice. Spolu s ním sa často používa aj plugin repoison_arp novo pridanú stanicu zapojí automaticky do útoku. Avšak najčastejšie sa útočník potrebuje zamerať iba na konkrétne počítače, a tak vytvorí zoznamy manuálne (Hosts - Hosts list), stanice, ktorých komunikáciu chceme sledovať pridáme do zoznamu Target 1, bránu pridáme do zoznamu Target 2. Jednoducho ich zobrazíme cez (Targets - Current targets). Nezabudneme spustiť už vyššie spomenutý proces sniffingu (Start - Start sniffing).

Pre vykonanie ARP Cache Poisoningu

Klikneme na ponuku Mitm - ARP Poisoning - Sniff remote conections. Pokiaľ by bol náš počítač bránou zaškrtli by sme voľbu Only poison one-way. Informácie o prebiehajúcom útoku sú vypisované v dolnej časti okna.
Počas útoku je možné prevádzať mnoho operácií, k dispozícií sú cez menu View rôzne štatistiky, profily a zoznamy spojení. Útočník má možnosť aplikovať rôzne filtre, či pluginy. Vždy sa dajú použiť pre konkrétne stanice, ktoré sú zaradené v zozname Target 1. Pre overenie úspešnosti vykonávaného útoku sa dá ľahko použiť plugin chk_poison.

Simulácia na virtuálnej sieti

Veľmi jednoducho a bezpečne je možné priebeh celého útoku odsimulovať pomocou virtualizačného softvéru. My sme pre ukážku zvolili nástroj VmWare Workstation spolu so softvérom GNS3, ktorý nám umožnil simuláciu virtuálneho prepínača.


Topológia virtuálnej siete, funkciu R1 preberá ďalej PC1.
Topológia virtuálnej siete, funkciu R1 preberá ďalej PC1.

Jedným virtuálnym počítačom je brána, zároveň bude slúžiť aj ako server. Pre účely ukážky sme na ňom spustili webovú aplikáciu a FTP server. Druhým počítačom je obeť. Tá bude pristupovať k administrácií webovej aplikácie, ale zároveň aj na FTP server. Tretím počítačom je útočník. Dôležitý je aj switch, v našom prípade simulovaný za pomoci GNS3. Počas simulácie útoku sa budeme držať vyššie popísaného návodu. Všetky MAC adresy použité pri realizácií útoku sú fiktívne, patriace virtuálnym počítačom. Prehľadné znázornenie v tabuľke:

Zariadenie IP adresa Systém Úloha Nástroje
Virtuálny prepínač - GNS3 switch v úlohe L2
PC1 192.168.1.1 Windows XP brána, server webová aplikácia, FTP server
PC2 192.168.1.2 Windows XP obeť prehliadač, FTP klient
PC3 192.168.1.3 BackTrack 5 útočník Ettercap, Wireshark

Keďže teoretický opis útoku je publikovaný vyššie, tu zmienime už len priebeh zo simulácie.
ARP cache PC1 pred útokom:


ARP cache PC1 pred útokom.

a po útoku:


ARP cache PC1 po útoku.

Ettercap rozdelil IP adresy do dvoch skupín:


Ettercap v akcii.
Ettercap v akcii.

Heslo určené pre prístup k FTP serveru je jednoducho zachytené na PC útočníka pomocou Wiresharku:


Heslo určené pre prístup k FTP serveru je jednoducho zachytené na PC útočníka pomocou Wiresharku.

Podobne je to aj s menom a heslom k webovej aplikácií:


Podobne je to aj s menom a heslom k webovej aplikácií.

Záver

Ako je možné vidieť, bezpečnosť na lokálnych sieťach nemožno pri akomkoľvek význame použitia podceňovať. Pokušenie pre využitie bezpečnostných slabín protokolov a zariadení môže byť často veľmi vysoké. Je preto nevyhnutné aplikovať bezpečnostné opatrenia, ktoré svojou mierou zamedzia realizácií útokov, čo najlepšie a najefektívnejšie. Dôležité je pripraviť sa na útok ešte pred tým ako k nemu dôjde. Uvedomiť si treba, že náklady na realizáciu bezpečnostných opatrní sú zvyčajne oveľa priaznivejšie, ako náklady, ktoré sa objavia po úspechu útočníka.


Podporte nás


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


Security-portal.cz Hoax.cz Soom.cz