ARP-спуфинг
ARP-спуфинг (англ. ARP spoofing, также ARP-кеш-отравление) — это вид атаки на компьютерные сети, при которой злоумышленник отправляет поддельные (сфабрикованные) протоколы разрешения адресов (ARP) в локальную сеть. Целью атаки является ассоциирование MAC-адреса злоумышленника с IP-адресом другого узла сети (например, шлюза или хоста жертвы), что приводит к перехвату, изменению или блокировке трафика между легитимными узлами. ARP-спуфинг относится к атакам типа «человек посередине» (Man-in-the-Middle, MITM) и эксплуатирует недостатки протокола ARP, не имеющего механизмов аутентификации.
Принцип работы
Протокол ARP используется в сетях Ethernet для сопоставления IP-адресов сетевого уровня с MAC-адресами канального уровня. Когда устройству необходимо отправить пакет на другой IP-адрес в одной подсети, оно отправляет широковещательный ARP-запрос («кто имеет IP X?»). Устройство с соответствующим IP-адресом отвечает ARP-ответом, содержащим свой MAC-адрес. Результат сохраняется в ARP-кеше узла для дальнейшего использования.
При ARP-спуфинге злоумышленник (устройство с MAC-адресом Attacker) отправляет поддельные ARP-ответы жертве (устройству Victim) и целевому узлу (например, шлюзу Router). В этих ответах утверждается, что IP-адрес шлюза соответствует MAC-адресу злоумышленника (для жертвы) и что IP-адрес жертвы соответствует MAC-адресу злоумышленника (для шлюза). В результате ARP-кеши жертвы и шлюза отравляются: жертва направляет трафик на MAC-адрес злоумышленника, думая, что это шлюз, а шлюз направляет трафик жертвы также на злоумышленника.
После установления таких поддельных записей злоумышленник может:
- Перехватывать пакеты, проходящие между жертвой и шлюзом.
- Модифицировать содержимое пакетов (например, внедрять вредоносные скрипты, заменять ссылки на фишинговые).
- Проводить атаки типа «отказ в обслуживании» (DoS), просто блокируя пересылку трафика.
- Собирать учётные данные и другую конфиденциальную информацию (пароли, номера кредитных карт, сессии веб-приложений).
История
Протокол ARP был разработан в 1982 году (RFC 826) для использования в локальных сетях Ethernet. В то время безопасность сетей не была приоритетом, и протокол не предусматривал криптографических проверок. Первые упоминания об атаках на ARP появились в середине 1990-х годов. В 1995 году специалист по компьютерной безопасности Стив Белловин (Steve Bellovin) описал технику ARP-спуфинга в контексте атак на TCP/IP.
С развитием беспроводных сетей и ростом числа общественных Wi-Fi-точек ARP-спуфинг стал одним из распространённых методов атак в локальных сетях. В 2006 году был опубликован знаменитый инструмент «Ettercap», который автоматизировал проведение ARP-спуфинга и атак MITM. Позднее появились и другие инструменты, такие как «arpspoof» из пакета dsniff, а также встроенные возможности в Cain & Abel и BetterCap.
Классификация и виды
По целевому объекту
- Однонаправленный спуфинг — злоумышленник отравляет ARP-кеш только жертвы, подменяя MAC-адрес шлюза. Трафик от жертвы идёт через атакующего, но ответный трафик может идти напрямую, если кеш шлюза не затронут.
- Двунаправленный спуфинг — злоумышленник отравляет ARP-кеши как жертвы, так и шлюза (или другого узла). Весь двунаправленный трафик проходит через атакующего, что позволяет полностью контролировать соединение.
По способу реализации
- Активный спуфинг — злоумышленник постоянно отправляет поддельные ARP-ответы (часто в виде широковещательных или направленных пакетов) для поддержания отравления кеша. Эта техника требует непрерывного фонового процесса.
- Пассивный спуфинг — злоумышленник ждёт, пока легитимные ARP-запросы будут обработаны, и лишь затем отправляет поддельный ответ. Такой метод менее заметен, но может быть менее надёжным.
По цели атаки
- Перехват трафика (MITM) — основная цель; злоумышленник становится посредником.
- Атака на отказ в обслуживании (DoS) — злоумышленник не пересылает пакеты, просто блокируя связь между узлами.
- Сбор MAC-адресов и сетевой разведки — подмена ARP может использоваться для сканирования сети и получения сведений о топологии.
Последствия и риски
ARP-спуфинг представляет серьёзную угрозу для локальных сетей, особенно в средах, где отсутствуют средства защиты канального уровня. Последствия могут включать:
- Утечка конфиденциальных данных — перехват паролей, сессионных куки, электронной почты.
- Нарушение целостности данных — злоумышленник может изменять пакеты на лету, внедрять вредоносный код (например, в HTTP-страницы).
- Потеря доступности сервисов — при DoS-вариации атаки.
- Компрометация сессий — атаки на протоколы аутентификации, такие как HTTP-сессии без HTTPS.
Атака особенно эффективна в общественных сетях (Wi-Fi в кафе, аэропортах, гостиницах), где все устройства находятся в одном широковещательном домене.
Обнаружение и защита
Обнаружение
- Мониторинг ARP-трафика — инструменты вроде
arpwatch,Wiresharkили специализированные системы обнаружения вторжений (IDS) анализируют несоответствия в ARP-пакетах (например, когда один IP-адрес постоянно меняет MAC-адрес). - Проверка статических ARP-записей — администраторы могут вручную проверять ARP-кеш узлов на предмет подозрительных пар.
- Сканирование дублирующихся IP-адресов — злоумышленник часто использует IP-адрес, уже занятый другим узлом; это может быть выявлено при разрешении конфликтов.
- Анализ сетевого трафика — аномалии в структуре пакетов или задержки могут указывать на MITM-атаку.
Защита
- Статические ARP-записи — на критически важных узлах (серверах, шлюзах) можно вручную задать постоянные ARP-записи. Однако это не масштабируется для больших сетей.
- ARP-спуфинг-защита на уровне коммутаторов — некоторые управляемые коммутаторы поддерживают функции Dynamic ARP Inspection (DAI), которые проверяют валидность ARP-пакетов на основе привязки IP–MAC (например, через DHCP snooping). Невалидные ARP-ответы блокируются.
- Шифрование на сетевом уровне — использование VPN (например, IPsec) или протоколов с шифрованием (HTTPS, SSH, WPA2-Enterprise) защищает содержимое трафика, даже если он перехвачен.
- Изолированные VLAN — сегментация сети снижает поверхность атаки, ограничивая ARP-спуфинг пределами одного VLAN.
- Специализированные утилиты — на пользовательских устройствах можно использовать брандмауэры или инструменты обнаружения спуфинга (например, анти-ARP на Windows или модуль arpwatch на Linux).
Известные инструменты
Для проведения ARP-спуфинга существует множество инструментов как легитимного использования (тестирование на проникновение, обучение), так и вредоносного:
- Ettercap — комплексный инструмент для MITM-атак, включая ARP-спуфинг, перехват паролей, внедрение контента.
- arpspoof (из пакета dsniff) — простая утилита для одностороннего и двустороннего отравления ARP-кеша.
- BetterCap — современная платформа, основанная на Ruby, с широкими возможностями мониторинга и атак.
- Cain & Abel (для Windows) — содержит модуль ARP-спуфинга, а также функции для взлома паролей.
- Scapy — библиотека Python для создания и отправки произвольных пакетов, позволяющая реализовать ARP-спуфинг вручную.
Правовой статус
Проведение ARP-спуфинга без явного согласия владельцев сети является незаконным в большинстве стран, так как квалифицируется как несанкционированный доступ к компьютерной информации и нарушение тайны переписки. В России ответственность за подобные действия предусмотрена статьёй 272 Уголовного кодекса («Неправомерный доступ к компьютерной информации») и статьёй 138 («Нарушение тайны переписки»). Использование этих инструментов для тестирования собственных сетей или при проведении authorised penetration testing (с разрешения) не является нарушением.
Источники
- RFC 826 — An Ethernet Address Resolution Protocol, 1982.
- Bellovin, S. M. (1995). «Security Problems in the TCP/IP Protocol Suite». Computer Communications Review.
- Wright, J. (2003). «Handbook of Information Security Management: ARP Spoofing Attacks».
- Официальная документация инструментов Ettercap и BetterCap.
- Материалы по Dynamic ARP Inspection (Cisco Systems, 2006).
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →