ARP spoofing, także zatruwanie pamięci ARP () – atak sieciowy w sieci lokalnej polegający na rozsyłaniu sfałszowanych komunikatów protokołu ARP, które wiążą adres IP innego urządzenia z adresem MAC napastnika. W efekcie ruch kierowany do danego adresu IP trafia do atakującego, co umożliwia podsłuch, modyfikację lub blokowanie transmisji.

Atak wykorzystuje właściwość samego protokołu ARP, opisanego w 1982 roku w dokumencie RFC 826: jest on bezstanowy i nie przewiduje uwierzytelniania, przez co urządzenie przyjmuje i zapisuje w swojej pamięci podręcznej ARP odpowiedź nawet wtedy, gdy nie wysyłało odpowiadającego jej zapytania.

Mechanizm Aby urządzenia w sieci lokalnej mogły się komunikować, muszą znać adresy MAC odpowiadające adresom IP. Gdy urządzenie nie ma potrzebnego wpisu, rozgłasza zapytanie ARP z pytaniem, kto ma dany adres IP; właściciel tego adresu odpowiada swoim adresem MAC, a odpowiedź trafia do pamięci podręcznej ARP pytającego.

W ataku napastnik wysyła do pamięci podręcznej ARP ofiary sfałszowaną odpowiedź, w której własny adres MAC przypisuje adresowi IP innego urządzenia – zwykle bramy domyślnej. Może przy tym biernie czekać na zapytanie ofiary i odpowiedzieć szybciej niż prawowity właściciel adresu, albo rozesłać niezamówioną odpowiedź (tzw. gratuitous ARP), która ogłasza przypisanie adresu wszystkim urządzeniom w segmencie. Ponieważ protokół nie wymaga uwierzytelniania, zaatakowane urządzenie nadpisuje wpis w swojej pamięci podręcznej.

Skierowanie ataku jednocześnie na ofiarę i na bramę domyślną pozwala przejąć ruch w obu kierunkach. Jeżeli napastnik przekazuje przechwycone pakiety dalej do prawdziwego odbiorcy, uzyskuje pozycję człowieka pośrodku (man in the middle), umożliwiającą podsłuch i modyfikację transmisji; jeżeli pakiety porzuca, dochodzi do blokady usługi.

Sniffing w sieciach z przełącznikami Znaczenie ataku wiąże się ze sposobem działania przełączników. W dawnych sieciach opartych na koncentratorach (hubach) całe pasmo było współdzielone, a urządzenie rozsyłało każdą ramkę do wszystkich portów; do podsłuchania komunikacji wystarczyło przełączyć kartę sieciową w tryb odbioru wszystkich ramek (tryb mieszany, promiscuous) za pomocą programu zwanego snifferem. Przełącznik, w odróżnieniu od koncentratora, uczy się, za którym portem znajduje się dany adres MAC, i kieruje ramki wyłącznie do właściwego portu, co uniemożliwia bierny podsłuch.

ARP spoofing pozwala obejść to ograniczenie: przekierowując ruch ofiary na adres MAC napastnika, umożliwia przechwytywanie komunikacji także w sieci zbudowanej na przełącznikach.

Zabezpieczenia Do ograniczania ryzyka ataku stosuje się kilka metod: statyczne wpisy ARP – ręczne przypisanie adresów MAC do adresów IP uniemożliwia ich nadpisanie sfałszowaną odpowiedzią, jest jednak trudne do utrzymania w większych sieciach, ponieważ wymaga aktualizacji przy każdej zmianie adresów, inspekcja ARP na przełącznikach – mechanizmy takie jak Dynamic ARP Inspection, współpracujące z funkcją DHCP snooping, porównują komunikaty ARP z tablicą przypisań adresów IP do portów i odrzucają te niezgodne, szyfrowanie transmisji – nie zapobiega samemu atakowi, ale ogranicza jego skutki, ponieważ przechwycony ruch pozostaje nieczytelny, systemy wykrywania – narzędzia monitorujące pamięci podręczne ARP w sieci sygnalizują sytuacje podejrzane, na przykład przypisanie wielu adresów IP do jednego adresu MAC.

Zastosowanie w praktyce ARP spoofing bywa wykorzystywany w rzeczywistych atakach. Technika ta figuruje w katalogu MITRE ATT&CK jako podtechnika ataku typu człowiek pośrodku (T1557.002); posługiwały się nią m.in. grupy określane jako Cleaver i LuminousMoth, ta druga do przekierowania zainfekowanego komputera na stronę kontrolowaną przez napastnika.

Zobacz też IP spoofing

Przypisy

Kategoria:Cyberataki Kategoria:Bezpieczeństwo sieciowe