ARP spoofing е атака на ARP протокола, работещ на каналния слой от OSI модела, състояща се от изпращане на фалшиви („спууфнати“) ARP съобщения чрез локалната мрежа. Най-често целта е MAC адресът на атакуващия да бъде асоцииран с IP адреса на друг хост в ARP таблицата на жертвата, например гейтуей, и по този начин целият трафик на жертвата да се препраща към атакуващия (и като опция, атакуващият да го препраща на гейтуей-я, или друг сървър, и да го връща на жертвата, за да бъде осъществена комуникацията и жертвата да не се усъмни в сигурността на мрежата).
След като веднъж атакуващият има осигурен пряк канал за получаване на трафика на жертвата, той може да извършва с него почти всичко: инспекция на получените кадри (фреймове), анализиране на данни, променяне на пакети и изпращането им на легитимен получател от мрежата и т.н. Освен това тази атака е основа за осъществяването на други атаки, като Man-In-The-Middle (MiTM), DNS Spoofing, Session Hijacking и др.
Начин на действие
ARP протоколът осъществява връзка между каналния и мрежовия слой на OSI модела.
Когато биват изпращани IP фреймове от един хост към друг в локална мрежа, IP адресът на получателя трябва да бъде превърнат в MAC адрес, за да се осъществи предаване на информацията през каналния слой. Когато IP адресът на даден хост е известен и е нужен MAC адреса му, в локалната мрежа се изпраща broadcast пакет (обработва се от всяка една машина, и ако се отнася до нея – съответната изпраща отговор). Пакетът е известен като ARP заявка. Машината, чийто IP адрес е идентичен с посочения в ARP заявката, отговаря на получения пакет със своя MAC адрес – ARP отговор.
ARP е протокол, при който всяка една заявка няма явна връзка с предишните. Мрежовите хостове автоматично кешират всички ARP отговори, които получават, дори и да не са ги заявили чрез ARP заявка. Дори записи в ARP таблицата, които все още не са изтекли, ще бъдат презаписани при получаването на нов ARP пакетен отговор. В ARP протокола няма внедрена методика, позволяваща да бъде установен произхода на ARP пакетите. Това прави протокола уязвим за спууфинг атаки.