ARP

From Helionica



ARP (Address Resolution Protocol) - protokół komunikacyjny przekształcania 32-bitowych adresów IP (ustalanych autorytarnie przez użytkownika/administratora) na fizyczne, 48-bitowe adresy MAC (przypisane fizycznie m.in. do kart sieciowych) w komputerowych sieciach lokalnych typu Ethernet.

Każdy komputer w sieci powinien posiadać tzw. tablicę ARP. Znajduje się w niej adres IP i przypisany do niego adres MAC. Dzięki temu komputery mogą się ze sobą komunikować za pośrednictwem adresu MAC, ale tylko w obrębie danej sieci LAN. Jeśli jakieś informacje mają być przesłane do innej sieci (lub podsieci w sieci złożonej, sieci oddzielonej routerem, itp.), to adres MAC musi być zastąpiony adresem IP.

ARP jest protokołem pracującym na drugiej warstwie modelu ISO/OSI, czyli warstwie łącza danych, ponieważ pracuje ona na ramkach i może je analizować tzn. np. sprawdzać ich poprawność.

Protokół ARP jest zdefiniowany w dyrektywie RFC 826.

Ataki z wykorzystaniem ARP

Protokół ARP można wykorzystać do ataku na sieci Ethernet wykorzystujące switche. Kiedy sieci lokalne oparte były na hubach, wystarczyło przestawić kartę sieciową w tryb odbioru wszystkich pakietów, aby podsłuchać całą komunikację. Potrafiły to programy nazywanie snifferami. Podsłuch był możliwy dzięki temu, że hub wysyłał wszystkie pakiety do każdego urządzenia sieciowego niezależnie od ich adresu MAC.

Kiedy pojawiły się inteligentne switche, możliwość ta została zablokowana. Switch wysyła pakiet Ethernetowy tylko do właściwej karty sieciowej, a nie do wszystkich. Aby podsłuchiwać sieć opartą na tej technologii, można wykorzystać dynamiczne tablice ARP (ang. ARP cache).

Gdy użytkownik chce przesłać dane do komputera o adresie IP 192.168.1.34, to:

  1. Karta sieciowa w komputerze źródłowym wysyła zapytanie ARP: kto ma adres IP 192.168.1.34?
  2. Karta sieciowa w komputerze docelowym o adresie MAC 00:07:95:03:1A:7E wysyła odpowiedź: Hej to ja!!!
  3. W komputerze nadawcy zostaje do dynamicznej tablicy ARP dodany wpis: IP 192.168.1.34 -> MAC 00:07:95:03:1A:7E.
  4. Wszystkie pakiety z docelowym adresem IP 192.168.1.34 są przez warstwę łącza danych tłumaczone na pakiety z docelowym adresem MAC 00:07:95:03:1A:7E.

W każdym komputerze powstaje w ten sposób dynamiczna tablica ARP, w której przechowywane są pary adresów MAC oraz IP.

Jednakże na jednym z urządzeń haker może uruchomić program, który oszukuje karty sieciowe. Sniffer tego typu działa w następujący sposób:

  1. Karta sieciowa w komputerze źródłowym wysyła zapytanie ARP: Kto ma adres IP 192.168.1.34?
  2. Karta sieciowa w komputerze hackera o adresie MAC 00:C0:DF:01:AE:43 wysyła odpowiedź: Hej to ja!!!
  3. W komputerze nadawcy do dynamicznej tablicy ARP trafia wpis: IP 192.168.1.34 -> MAC 00:C0:DF:01:AE:43.
  4. Wszystkie pakiety z docelowym adresem IP 192.168.1.34 są przez warstwę łącza danych tłumaczone na pakiety z docelowym adresem MAC 00:C0:DF:01:AE:43 i trafiają do komputera hackera.
  5. Karta sieciowa w komputerze hackera wysyła pytanie: Kto ma adres IP 192.168.1.34, żeby wiedzieć kto naprawdę powinien dostać przechwycone pakiety.
  6. Karta sieciowa w komputerze docelowym o adresie MAC 00:07:95:03:1A:7E wysyła odpowiedź: Hej to ja!!!
  7. Wszystkie pakiety z docelowym adresem IP 192.168.1.34 hacker wysyła do ich prawdziwego odbiorcy z adresem MAC 00:C0:DF:01:AE:43.

Tego typu technika sniffingu określana jest jako zatruwanie tablicy ARP przez człowieka w środku (ang. the ARP poisoning mitm attack). Dzięki jej wykorzystaniu można podsłuchiwać ruch w sieciach, ze switchami. Nieszyfrowana komunikacja bez podpisów cyfrowych w sieci Ethernet zawsze narażona jest na atak i nigdy nie powinno się wykorzystywać jej do przesyłania tajnych informacji.

Zobacz też

Linki zewnętrzne

  • RFC 826 - specyfikacja protokołu ARP


Komplet protokołów sieci Internet

Warstwa aplikacji: FTP, HTTP, IRC, SMTP, SNMP, SSH ...
Warstwa transportowa: RTP, TCP, UDP ...
Warstwa sieciowa: ARP, IPv4, IPv6, IPX ...
Warstwa dostępu do sieci: 802.11 WiFi, Ethernet, FDDI, Token Ring ...

Artykuł zawiera udostępnione na licencji GNU FDL treści pochodzące w pierwotnej wersji z artykułu ARP w polskiej Wikipedii. Lista autorów.



Bestsellery informatyki