Morda poznate koncept naslovov IP. Vsak računalnik v omrežju ima vsaj enega. Pri komunikaciji med omrežji ti naslovi IP enolično identificirajo vir in cilj omrežnega prometa, tako da ga je mogoče dostaviti in se nanj zanesljivo odzvati. Pri komunikaciji z napravo v istem omrežju računalnik ne uporablja neposredno naslova IP. Namesto tega prevede ta naslov IP v naslov MAC. ARP je protokol za upravljanje prevodov IP v MAC in sporočanje tega po omrežju.
ARP pomeni protokol za razrešitev naslovov. To je protokol brez stanja, ki ima komponente oddajanja in odziva na zahtevo. ARP se uporablja predvsem v omrežjih IPv4, čeprav ga uporabljajo tudi drugi omrežni sistemi. Omrežja IPv6 izvajajo funkcionalnost ARP in nekatere dodatne funkcije z NDP. Ali Neighbor Discovery Protocol.
Naslovi MAC, ki so bili identificirani, so shranjeni v tabeli ARP na vsaki napravi. Vsak vnos v tabeli ARP redno poteče. Lahko pa se posodablja pasivno, ko se promet ARP oddaja v omrežje, kar zmanjša skupno količino potrebnega prometa ARP.
ARP sonda in odziv
Če mora računalnik prenesti omrežni paket, pogleda ciljni naslov IP. Ve, da ga mora poslati usmerjevalniku za naprave v drugem omrežju. To lahko nato usmeri paket v pravo omrežje. Če je paket namenjen napravi v lokalnem omrežju, mora računalnik poznati pravi naslov MAC, na katerega ga lahko pošlje.
Kot prva vrata klica bo računalnik preveril svojo tabelo ARP. To bi moralo imeti seznam vseh znanih naprav v lokalnem omrežju. Če sta ciljni naslov IP in MAC tam, bo za dokončanje in pošiljanje paketa uporabil tabelo ARP. Če naslov IP nima vnosa v tabeli ARP, mora računalnik to ugotoviti prek sonde ARP.
Računalnik oddaja sondo ARP v omrežje z vprašanjem »kdo ima
Opomba: Odziv sonde ARP je tudi oddaja. To omogoča vsem drugim omrežnim napravam, da posodobijo svoje tabele ARP, ne da bi od njih zahtevale izdelavo identičnih sond ARP. To pomaga zmanjšati promet ARP.
ARP sonda ob povezavi
Ko se računalnik poveže v omrežje, mora dobiti naslov IP. To je mogoče določiti ročno, vendar ga običajno dinamično dodeli DHCP (Protokol dinamičnega nadzora gostitelja) strežnik. Strežnik DHCP je na splošno funkcija omrežnega usmerjevalnika, vendar ga lahko poganja ločena naprava. Ko ima nova naprava naslov IP, z ročno konfiguracijo ali DHCP. Naprava mora hitro preveriti, ali nobena druga naprava že ne uporablja tega naslova IP.
Da bi to naredila, naprava odda paket sonde ARP in zahteva, naj se katera koli naprava, ki uporablja njen na novo dodeljen naslov IP, odzove nanj. Pričakovan odgovor je tišina. Nobena druga naprava se ne bi smela odzvati, zlasti v omrežju DHCP. Po kratkih zamikih bo naprava nekajkrat znova oddala isto sporočilo. To ponavljanje pomaga v primerih, ko je en paket morda padel na poti do ali iz naprave z naslovom IP v nasprotju. Ko na nekaj sond ARP ni odgovorov, lahko naprava začne uporabljati svoj novi naslov IP. Za to mora poslati brezplačen ARP.
Brezplačni ARP
Ko naprava ugotovi, da se naslov IP, ki ga želi uporabiti, ne uporablja, pošlje brezplačni ARP. To preprosto vključuje oddajanje v omrežje "
Brezplačne zahteve ARP se prav tako redno pošiljajo v omrežje kot opomnike za vse druge naprave, da je računalnik še vedno povezan, na spletu in ima svoj naslov IP.
Prevara ARP
ARP je protokol brez stanja, ni povezave in vsa sporočila se oddajajo v celotno omrežje. Vse naprave poslušajo in predpomnijo odgovore ARP v svojih tabelah ARP. To pa vodi do ranljivosti v sistemu. Ob predpostavki, da se lahko napadalec fizično poveže z omrežjem, lahko zažene programsko opremo, ki zlonamerno oddaja nepravilne brezplačne odzivne pakete ARP. Vsaka naprava v omrežju bo videla zlonamerne pakete ARP, jim implicitno zaupala in posodobila svoje usmerjevalne tabele. Te zdaj nepravilne tabele ARP se imenujejo "zastrupljene".
To bi se lahko uporabilo le za povzročanje težav z omrežjem z usmerjanjem prometa v napačno smer. Obstaja pa še hujši scenarij. Če napadalec ponaredi pakete ARP za naslov IP usmerjevalnika in jih usmeri na lastno napravo, bi prejel in lahko videl ves omrežni promet. Ob predpostavki, da ima naprava drugo omrežno povezavo za posredovanje prometa, lahko potrebuje Man in the Middle (MitM) položaj. To napadalcu omogoča izvajanje zoprnih napadov, kot je odstranjevanje HTTPS, kar mu potencialno omogoča ogled in spreminjanje celotnega omrežnega prometa.
Opomba: Obstaja nekaj zaščit pred napadi MitM. Napadalec ne bi mogel podvojiti potrdila HTTPS spletnega mesta. Vsak uporabnik, ki ima prestrežen promet, bi moral dobiti napake potrdila brskalnika.
Obstaja pa veliko bistvenih in nešifriranih komunikacij, zlasti v notranjem omrežju. V domačem omrežju to ni tako. Kljub temu so poslovna omrežja, zgrajena na sistemu Windows, še posebej ranljiva za napade ponarejanja ARP.
Zaključek
ARP pomeni protokol za razrešitev naslovov. Uporablja se v omrežjih IPv4 za prevajanje naslovov IP v naslove MAC, kot je potrebno v lokalnih omrežjih. Sestavljen je iz oddajanja zahtev in odgovorov brez stanja. Odzivi ali pomanjkanje le-teh omogočajo napravi, da ugotovi, kateri naslov MAC je povezan z naslovom IP ali če je naslov IP neuporabljen. Naprave predpomnijo odgovore ARP, da posodobijo svoje tabele ARP.
Naprave lahko tudi redno oddajajo brezplačna obvestila, da je njihov naslov MAC povezan z njihovim naslovom IP. Pomanjkanje mehanizma za preverjanje pristnosti omogoča zlonamernemu uporabniku, da oddaja lažne pakete ARP, da zastrupi tabele ARP in usmeri promet k sebi, da izvede analizo prometa ali napade MitM.