Co je ARP (Address Resolution Protocol)?

Možná znáte koncept IP adres. Každý počítač v síti má alespoň jeden. Při komunikaci mezi sítěmi tyto IP adresy jednoznačně identifikují zdroj a cíl síťového provozu, takže jej lze spolehlivě doručit a reagovat na něj. Při komunikaci se zařízením ve stejné síti počítač přímo nepoužívá IP adresu. Místo toho přeloží tuto IP adresu na MAC adresu. ARP je protokol pro správu překladů IP na MAC a jejich komunikaci po síti.

ARP je zkratka pro Address Resolution Protocol. Je to bezstavový protokol, který má komponenty broadcast a request-response. ARP se primárně používá v sítích IPv4, i když jej používají i jiné síťové systémy. Sítě IPv6 implementují funkcionalitu ARP a některé další funkce s NDP. Nebo Neighbor Discovery Protocol.

MAC adresy, které byly identifikovány, jsou uloženy v tabulce ARP na každém zařízení. Každý záznam v tabulce ARP pravidelně vyprší. Lze jej však pasivně aktualizovat, když je provoz ARP vysílán do sítě, čímž se minimalizuje celkové množství potřebného provozu ARP.

ARP sonda a odezva

Pokud počítač potřebuje přenést síťový paket, podívá se na cílovou IP adresu. Ví, že jej musí poslat do routeru pro zařízení v jiné síti. To pak může směrovat paket do správné sítě. Pokud je paket určen pro zařízení v místní síti, počítač potřebuje znát správnou MAC adresu, na kterou jej může odeslat.

Jako první port volání zkontroluje počítač svou tabulku ARP. Zde by měl být seznam všech známých zařízení v místní síti. Pokud je tam cílová IP a MAC adresa, použije ARP tabulku k dokončení a odeslání paketu. Pokud IP adresa nemá záznam v ARP tabulce, musí ji počítač zjistit pomocí ARP sondy.

Počítač vysílá do sítě sondu ARP s dotazem „kdo má “s nahradil příslušnou IP adresu. Každé zařízení v síti uvidí tuto zprávu, protože se jedná o vysílání. Většina to bude ignorovat, protože to není zaměřeno na ně. Ale zařízení, které má tuto IP adresu, odpoví další zprávou vysílání, která říká „ patří “ znovu s a nahrazeny jejich příslušnými hodnotami. Původní počítač poté aktualizuje svou tabulku ARP a odešle paket zamýšlenému příjemci.

Poznámka: Odpověď sondy ARP je také vysílání. To umožňuje všem ostatním síťovým zařízením aktualizovat své tabulky ARP, aniž by po nich bylo nutné vytvářet identické sondy ARP. To pomáhá minimalizovat provoz ARP.

Sonda ARP na připojení

Když se počítač připojí k síti, musí získat IP adresu. To lze zadat ručně, ale obvykle je dynamicky přidělováno serverem DHCP (Dynamic Host Control Protocol) server. Server DHCP je obecně funkcí síťového směrovače, ale může být provozován samostatným zařízením. Jakmile má nové zařízení IP adresu, buď pomocí ruční konfigurace nebo DHCP. Zařízení musí rychle ověřit, že tuto IP adresu již nepoužívá žádné jiné zařízení.

Za tímto účelem zařízení vysílá paket sondy ARP a žádá jakékoli zařízení, které používá svou nově přidělenou IP adresu, aby na něj odpovědělo. Očekávanou reakcí je ticho. Žádné jiné zařízení by nemělo reagovat, zejména v síti DHCP. Po krátkých prodlevách bude zařízení několikrát vysílat stejnou zprávu znovu. Toto opakování pomáhá v případech, kdy mohl být jeden paket zahozen na cestě do nebo ze zařízení s konfliktní IP adresou. Jakmile nedojde k žádné odpovědi na několik sond ARP, zařízení může začít používat svou novou IP adresu. K tomu potřebuje odeslat bezplatnou ARP.

Bezplatná ARP

Jakmile zařízení zjistí, že IP adresa, kterou chce použít, není používána, odešle bezplatnou ARP. To jednoduše zahrnuje vysílání do sítě “.“ To je obvykle naformátováno tak, jako by to byla odpověď na standardní sondu ARP, jen aniž by to sonda ARP někdy požadovala, odtud název „bezplatná ARP“.

Bezúplatné požadavky ARP jsou také pravidelně zasílány do sítě jako připomínka všem ostatním zařízením, že počítač je stále připojen, online a má svou IP adresu.

Spoofing ARP

ARP je bezstavový protokol, neexistuje žádné spojení a všechny zprávy jsou vysílány do sítě jako celku. Všechna zařízení naslouchají a ukládají odpovědi ARP do svých tabulek ARP. To však vede k zranitelnosti systému. Za předpokladu, že se útočník může fyzicky připojit k síti, může spustit software, který se zlými úmysly vysílá nesprávné bezdůvodné pakety ARP odpovědí. Každé zařízení v síti uvidí škodlivé pakety ARP, bude jim implicitně důvěřovat a aktualizuje své směrovací tabulky. Tyto nyní nesprávné tabulky ARP se označují jako „otrávené“.

To by mohlo být použito ke způsobení problémů se sítí nasměrováním provozu špatným směrem. Existuje však i horší scénář. Pokud útočník podvrhne pakety ARP pro IP adresu routeru a nasměruje je na své vlastní zařízení, obdrží a budou moci vidět veškerý síťový provoz. Za předpokladu, že zařízení má jiné síťové připojení k předávání provozu, může to vzít Muž uprostřed (MitM) pozici. To umožňuje útočníkovi provádět ošklivé útoky, jako je odstraňování HTTPS, což mu potenciálně umožňuje vidět a upravovat veškerý síťový provoz.

Poznámka: Existuje určitá ochrana proti útokům MitM. Útočník by nebyl schopen duplikovat certifikát HTTPS webové stránky. Každý uživatel, u kterého je provoz zachycen, by měl dostat chyby certifikátu prohlížeče.

Existuje však mnoho nezbytných a nešifrovaných komunikací, zejména v interní síti. V domácí síti to tak moc neplatí. Přesto jsou podnikové sítě postavené na Windows obzvláště zranitelné vůči ARP spoofingovým útokům.

Otrava ARP umožňuje útoky MitM – Zdroj: Wikipedie

Závěr

ARP je zkratka pro Address Resolution Protocol. Používá se v sítích IPv4 k překladu IP adres na MAC adresy, jak je potřeba v lokálních sítích. Skládá se z bezstavového vysílání požadavku a odpovědi. Odezvy nebo jejich absence umožňují zařízení určit, jaká MAC adresa je spojena s IP adresou nebo zda IP adresa není používána. Zařízení ukládají odpovědi ARP do mezipaměti, aby aktualizovala své tabulky ARP.

Zařízení mohou také pravidelně vysílat bezdůvodná oznámení, že jejich MAC adresa je spojena s jejich IP adresou. Absence mechanismu ověřování umožňuje uživateli se zlými úmysly vysílat falešné pakety ARP, aby otrávily tabulky ARP a směrovaly provoz na sebe, aby provedli analýzu provozu nebo útoky MitM.