MAC Flooding & Port Security – útok na switch a ako sa brániť

MAC flooding je útok, ktorým sa dá manipulovať správanie switcha tak, aby bolo možné odpočúvať prevádzku, ktorá cez neho prechádza. V tomto článku si ukážeme, ako takýto útok vyzerá a ako sa proti nemu efektívne brániť.

MAC flooding macof

MAC flooding využíva zraniteľnosť, ktorá vyplýva zo základnej funkcionality switcha. Switch si zaznamenáva do tzv. CAM tabuľky MAC adresy zariadení, ktoré cez neho komunikujú a porty, z ktorých mu dané MAC adresy prichádzjú. Na základe tejto tabuľky sa switch rozhoduje, ktorým portom pošle prevádzku.

Zraniteľnosť spočíva v tom, že veľkosť tejto tabuľky je obmedzená. Akonáhle sa táto tabuľka naplní, nebude si mať kam zapisovať MAC adresy nových zariadení, ktoré sa pokúšajú o komunikáciu.

Následne sa switch začne voči tejto komunikácii správať ako ethernetový HUB, čiže ju začne preposielať na všetky fyzické porty. Útočník môže túto komunikáciu ľahko odchytiť a analyzovať jej obsah napríklad vo Wiresharku.

Na obrázku nižšie môžete vidieť, ako vyzerá CAM tabuľka switcha, do ktorého je pripojený jeden počítač. Posledná položka v tejto tabuľke hovorí, že zariadenie s MAC adresou 5c:26:0a:19:dc:c6, je dostupné cez port Fa0/1, patrí do Vlan1 a switch sa o tomto zariadení dozvedel dynamicky.

MAC flooding mac

Na ďalšom obrázku vidíme, že switch pozná 1 MAC adresu (naša útočná stanica), ktorú sa naučil dynamicky a že má kapacitu 8189 vstupov.

MAC flooding mac count

MAC flooding – zahájenie útoku

Na zahájenie útoku MAC flooding použijeme nástroj MACOF, ktorý je súčasťou balíčku DSNIFF. Jeho súčasťou je napríklad aj nástroj ARPSPOOF, ktorý sa používa pri útoku ARP spoofing. Použijeme útočnú stanicu s operačným systémom KALI Linux, rovnako, ako v ostatných návodoch, kde sme sa venovali penetračnému testovaniu a etickému hackingu.

Port switcha, kde je pripojený náš počítač, z ktorého zahájime útok, nemá nastavenú žiadnu ochranu.

MAC flooding interface

Útok spustíme nasledovným príkazom z CLI. Jediná premenná je názov portu, z ktorého budeme posielať útok. V našom prípade eth0.

#macof –i eth0

MAC flooding macof

Ako vidíme, zaplnili sme celú CAM tabuľku a switch si už nemá kam zapisovať nové vstupy.

MAC flooding macof count

Keď si pozrieme tabuľku s MAC adresami, môžeme vidieť množstvo podhodených vstupov, ktoré prišli z portu fa0/1 od našej útočnej stanice.

MAC flooding macof mac table

Ako sa brániť proti MAC flooding útoku

Ukážeme si, ako konfiguračne ošetriť port switcha proti útoku MAC flooding. Aby sme odstránili túto zraniteľnosť, mali by sme na všetky porty, kde to dáva zmysel, definovať, koľko MAC adries môže z daného portu prichádzať a čo sa má stať, keď bude tento prah prekročený. Tieto možnosti sa môžu medzi jednotlivými výrobcami líšiť.

Takto môže vyzerať konfigurácia portu na Cisco switchi, ktorý je ošetrený proti útoku MAC flooding. Definovali sme, že z portu Fa0/1 môže prichádzať maximálne 5 MAC adries a keď tento prah bude prekročený, začne zahadzovať neželanú prevádzku. Viac informácii ohľadne konfigurácie tejto ochrany na Cisco switchi nájdete tu.

MAC flooding interface

Ak vás tento článok zaujal a chcete dostávať mailovú notifikáciu, pri publikovaní podobných článkov o hackingu, sieťovej bezpečnosti, Linux serveroch, Cisco zariadeniach, či o programovaní, môžete sa prihlásiť na odber článkov.

Picture of Matej Šipkovský

Matej Šipkovský

Spoločnosť NETVEL s.r.o. založil Matej Šipkovský, ktorý sa venuje najmä implementácii sieťových riešení a sieťovej bezpečnosti pre firemných klientov. Študoval na Slovenskej Technickej Univerzite v Bratislave na Fakulte Elektrotechniky a Informatiky odbor Telekomunikácie, kde dokončil inžinierske štúdium. Počas školy získal certifikát Cisco CCNP Routing & Switching a neskôr pribudli certifikácie Cisco Certified Design Professional (CCDP), CCNA Security, AWS Certified Cloud Practitioner, ITILv4 Foundation a Fortinet Network Security Architect NSE7.
Picture of Matej Šipkovský

Matej Šipkovský

Spoločnosť NETVEL s.r.o. založil Matej Šipkovský, ktorý sa venuje najmä implementácii sieťových riešení a sieťovej bezpečnosti pre firemných klientov. Študoval na Slovenskej Technickej Univerzite v Bratislave na Fakulte Elektrotechniky a Informatiky odbor Telekomunikácie, kde dokončil inžinierske štúdium. Počas školy získal certifikát Cisco CCNP Routing & Switching a neskôr pribudli certifikácie Cisco Certified Design Professional (CCDP), CCNA Security, AWS Certified Cloud Practitioner, ITILv4 Foundation a Fortinet Network Security Architect NSE7.
Zdieľať príspevok:

Súvisiace príspevky