ARP-spoofing (ARP — poisoning) — разновидность сетевой атаки типа MITM (англ. Man in the middle), применяемая в сетях с использованием протокола ARP. В основном применяется в сетях Ethernet. Атака основана на недостатках протокола ARP.
При использовании в распределённой вычислительной сети алгоритмов удалённого поиска существует возможность осуществления в такой сети типовой удалённой атаки «ложный объект распределённой вычислительной системы». Анализ безопасности протокола ARP показывает, что, перехватив на атакующем узле внутри данного сегмента сети широковещательный ARP-запрос, можно послать ложный ARP-ответ, в котором объявить себя искомым узлом (например, маршрутизатором), и в дальнейшем активно контролировать сетевой трафик дезинформированного узла, воздействуя на него по схеме «ложный объект РВС».
Протокол ARP
правитьПротокол ARP (Address Resolution Protocol или протокол разрешения адреса) — сетевой протокол, использующийся для определения MAC-адреса узла в сети по IP-адресу, тем самым делая возможным связь между устройствами сетевого уровня локальной и глобальной сети.
Принцип работы
правитьПусть у нас есть две локальных сети Ethernet, соединенных маршрутизатором, и пусть узел первой локальной сети (узел A) хочет передать узлу второй локальной сети (узлу B) пакет. По протоколу IP определяется IP-адрес интерфейса маршрутизатора (IP1), к которому подключена локальная сеть 1, где находится узел А. Теперь, чтобы пакет инкапсулировал в кадр и передал на интерфейс маршрутизатора с адресом IP1, нужно знать MAC-адрес этого интерфейса. Далее начинается работа протокола ARP. Протокол ARP имеет на каждом сетевом интерфейсе компьютера или маршрутизатора свою ARP-таблицу, в которой записаны соответствия между IP-адресами и MAC-адресами сетевых устройств. Пусть вначале все ARP-таблицы пусты. Далее:
- Протокол IP запрашивает у протокола ARP MAC-адрес интерфейса с адресом IP1.
- Протокол ARP проверяет свою ARP-таблицу и не находит MAC-адреса, соответствующего адресу IP1
- Тогда протокол ARP формирует ARP-запрос (смысл запроса -узнать MAC-адрес интерфейса по его IP -адресу), вкладывает его в кадр Ethernet и рассылает данный кадр широковещательно в локальной сети 1.
- Каждый интерфейс локальной сети 1 получает ARP-запрос и направляет его своему протоколу ARP.
- Если протокол ARP интерфейса нашел совпадение IP-адреса интерфейса с IP1, то ARP генерирует ARP-ответ (в данной ситуации это ARP маршрутизатора), который направляется запрашивающему узлу. В ARP-ответе содержится MAC-адрес интерфейса, на который нужно отправить кадр (в данном случае это интерфейс маршрутизатора, подключенный к локальной сети 1).
- Далее узел A передает кадр с инкапсулированным пакетом на соответствующий интерфейс маршрутизатора.
Уязвимости ARP
правитьПротокол ARP является уязвимым — он не проверяет подлинности ARP-запросов и ARP-ответов. А так как сетевые интерфейсы на компьютерах поддерживают самопроизвольный ARP (ARP-ответ присылается на интерфейс устройства без необходимости), то как раз в таком случае возможна атака ARP-spoofing.
Атака ARP-spoofing
правитьОписание атаки
править- Два компьютера (узла) M и N в локальной сети Ethernet обмениваются сообщениями. Злоумышленник X, находящийся в этой же сети, хочет перехватывать сообщения между этими узлами. До применения атаки ARP-spoofing на сетевом интерфейсе узла M ARP-таблица содержит IP- и MAC-адреса узла N. Также на сетевом интерфейсе узла N ARP-таблица содержит IP- и MAC-адреса узла M.
- Во время атаки ARP-spoofing узел X (злоумышленник) отсылает два ARP-ответа (без запроса) — узлу M и узлу N. ARP-ответ узлу M содержит IP-адрес N и MAC-адрес X. ARP-ответ узлу N содержит IP-адрес M и MAC-адрес X.
- Так как компьютеры M и N поддерживают самопроизвольный ARP, то, после получения ARP-ответа, они изменяют свои ARP-таблицы, и теперь ARP-таблица M содержит MAC адрес X, привязанный к IP-адресу N, а ARP-таблица N содержит MAC адрес X, привязанный к IP-адресу M.
- Тем самым атака ARP-spoofing выполнена, и теперь все пакеты (трафик) между M и N проходят через X. К примеру, если M хочет передать пакет компьютеру N, то M смотрит в свою ARP-таблицу, находит запись с IP-адресом узла N, выбирает оттуда MAC-адрес (а там уже MAC-адрес узла X) и передает пакет. Пакет поступает на интерфейс X, анализируется им, после чего перенаправляется узлу N.
Инструменты для выполнения ARP-спуфинга
править- Ettercap
- Bettercap
- Cain & Abel
- dsniff
- arp-sk
- ARP Builder
- AyCarrumba
- Intercepter-NG[1]
- Simsang
- ARPoison
Обнаружение и предотвращение ARP-спуфинга
правитьЭти программы отслеживают ARP-активность на заданных интерфейсах. Могут обнаружить атаку ARP-spoofing, но не могут предотвратить её. Для предотвращения атаки требуется вмешательство администратора сети.
Если в локальной сети есть разделение на несколько VLAN, то атака ARP-spoofing может быть применена только к компьютерам, находящимся в одном VLAN. Идеальной ситуацией, с точки зрения безопасности, является наличие только одного компьютера и интерфейса маршрутизатора в одном VLAN. Атака ARP-spoofing для такого сегмента невозможна.
Использование статического ARP
правитьМожно избежать атаки ARP-spoofing путём настраивания ARP-таблицы вручную. Тогда злоумышленник не сможет обновлять ARP-таблицы путём посылки ARP-ответов на интерфейсы компьютеров.
Использование шифрования
правитьДля предотвращения атаки ARP-spoofing (как и любой атаки «человек посередине») в локальной сети можно использовать протоколы шифрования данных для защиты передаваемой информации от злоумышленника.
См. также
правитьПримечания
править- ↑ {Cite web|url=https://blog.dubkov.org/security/wi-fi/arp-spoofing-intercepter-ng/%7Ctitle=ARP-Spoofing с помощью Intercepter-NG|author=|website=|date=|publisher=Николай Дубков|accessdate=2016-04-06|archive-date=2019-07-21|archive rotation settings camera hive-url=https://web.archive.org/web/20190721093920/http://blog.dubkov.org/security/wi-fi/arp-spoofing-intercepter-ng/%7Cdeadlink=no}
Ссылки
править- ARP-spoofing на Xgu.ru
- книга "Компьютерные сети", авторы - В.Олифер, Н.Олифер
- Ложный ARP-сервер в сети Internet
- ARP-spoofing: старая песня на новый лад Архивная копия от 29 июля 2013 на Wayback Machine
- Реализация атаки ARP-spoofing в локальной сети с перехватом паролей