Открыть сервис

DHCP-спуфинг

DHCP-спуфинг — это сетевая атака, основанная на подмене (спуфинге) DHCP-сервера, целью которой является перехват или перенаправление сетевого трафика клиентов. В ходе атаки злоумышленник развёртывает в сети поддельный (rogue) DHCP-сервер, который отвечает на широковещательные запросы клиентов быстрее легитимного сервера, навязывая им ложные сетевые настройки: IP-адрес шлюза по умолчанию, DNS-сервера и другие параметры. Это позволяет атакующему реализовать атаки типа «человек посередине» (Man-in-the-Middle, MITM), перенаправлять трафик на вредоносные ресурсы или блокировать доступ в сеть.

Принцип работы

DHCP (Dynamic Host Configuration Protocol) — это протокол прикладного уровня, используемый для автоматической выдачи IP-адресов и других параметров конфигурации сетевым устройствам (клиентам). В нормальном режиме клиент отправляет широковещательный запрос (DHCPDISCOVER), на который отвечает легитимный DHCP-сервер, предлагая адрес (DHCPOFFER). Клиент выбирает предложение (DHCPREQUEST), и сервер подтверждает аренду (DHCPACK).

При DHCP-спуфинге злоумышленник подключает к сети устройство (например, ноутбук с установленным программным обеспечением для DHCP-сервера) и запускает поддельный сервер. Поскольку широковещательный запрос клиента получают все устройства в сегменте сети, поддельный сервер отвечает первым, часто быстрее легитимного. Клиент принимает первое поступившее предложение, после чего его сетевые настройки оказываются под контролем атакующего.

Типы атак с использованием DHCP-спуфинга

Атака «человек посередине» (MITM)

Наиболее распространённый сценарий. Атакующий в качестве шлюза по умолчанию (default gateway) указывает IP-адрес своего устройства. Весь трафик клиента, предназначенный для внешних сетей, направляется через атакующее устройство. Злоумышленник может перехватывать, модифицировать или блокировать пакеты данных, включая незашифрованные пароли, содержимое сессий и файлы.

Перенаправление DNS-запросов

Вместо или вместе с подменой шлюза атакующий может навязать клиенту ложный DNS-сервер. При попытке пользователя открыть легитимный сайт, DNS-запрос направляется на сервер злоумышленника, который возвращает IP-адрес фишинговой страницы. Это позволяет проводить атаки на кражу учётных данных (phishing) без необходимости подмены шлюза.

Отказ в обслуживании (DoS)

Атакующий может выдать клиенту нерабочие сетевые настройки: несуществующий шлюз, неправильную маску подсети или адрес, конфликтующий с другими устройствами. В результате клиент теряет сетевое соединение или не может корректно взаимодействовать с другими узлами сети.

Атака на аренду адресов (DHCP Starvation)

Часто используется как подготовительный этап для спуфинга. Злоумышленник отправляет большое количество запросов на легитимный DHCP-сервер с поддельными MAC-адресами, исчерпывая пул доступных адресов. После этого новые клиенты не могут получить адрес от легитимного сервера и вынуждены принимать предложение от поддельного.

Условия и уязвимости

DHCP-спуфинг возможен в сетях, где отсутствует или недостаточно настроена сегментация и контроль доступа. Основные факторы, способствующие атаке:

  • Отсутствие аутентификации DHCP-сообщений. Протокол DHCP изначально не предусматривает механизмов проверки подлинности сервера. Любое устройство в широковещательном домене может выступать в роли сервера.
  • Открытые порты и доступ к сети. Если злоумышленник имеет физический или удалённый доступ к локальной сети (например, через незащищённую точку доступа Wi-Fi или подключение к коммутатору), он может запустить поддельный DHCP-сервер.
  • Неиспользование DHCP Snooping. Функция DHCP Snooping на управляемых коммутаторах позволяет фильтровать DHCP-трафик, блокируя ответы от недоверенных портов.

Методы защиты

DHCP Snooping

Технология, реализуемая на уровне коммутаторов. Коммутатор анализирует DHCP-сообщения и блокирует ответы (DHCPOFFER, DHCPACK), поступившие с портов, не настроенных как доверенные (trusted). Доверенным считается порт, к которому подключён легитимный DHCP-сервер. Все остальные порты считаются недоверенными, и DHCP-ответы с них отбрасываются. DHCP Snooping также ведёт базу соответствия MAC-адресов и выданных IP-адресов (DHCP Binding Table), что помогает предотвращать атаки типа IP Source Guard.

Сегментация сети

Разделение сети на VLAN (Virtual Local Area Network) ограничивает широковещательный домен. DHCP-спуфинг возможен только в пределах одного VLAN. Если критически важные серверы и клиенты находятся в разных VLAN, атака на один сегмент не затронет другой.

Использование 802.1X

Протокол аутентификации на уровне порта коммутатора. Перед предоставлением доступа к сети устройство пользователя должно пройти аутентификацию (например, по имени и паролю или сертификату). Это предотвращает подключение неавторизованных устройств, которые могут стать источником поддельного DHCP-сервера.

Контроль доступа на основе MAC-адресов

Фильтрация MAC-адресов на коммутаторах позволяет разрешить подключение только известным устройствам. Однако этот метод не является надёжным, так как MAC-адрес может быть подменён (MAC spoofing).

Статическое назначение IP-адресов

В небольших или высокозащищённых сетях администраторы могут отказаться от DHCP и вручную назначить каждому устройству статический IP-адрес. Это полностью исключает возможность DHCP-спуфинга, но увеличивает нагрузку на администрирование и не масштабируется.

Пример реализации атаки

Для демонстрации DHCP-спуфинга в лабораторных условиях часто используется инструмент Yersinia (работает в Linux) или Ettercap. Злоумышленник подключается к сети, запускает Yersinia в режиме DHCP-сервера и задаёт параметры: IP-адрес шлюза (свой собственный), DNS-сервер (свой или публичный) и пул адресов для выдачи клиентам. После этого все новые запросы DHCP от клиентов будут обрабатываться поддельным сервером.

Правовые аспекты

В Российской Федерации DHCP-спуфинг, как и любая несанкционированная активность в компьютерных сетях, подпадает под действие статей Уголовного кодекса РФ, в частности статьи 272 «Неправомерный доступ к компьютерной информации» и статьи 273 «Создание, использование и распространение вредоносных компьютерных программ». Проведение таких атак без разрешения владельца сети является уголовно наказуемым деянием.

Источники

  • RFC 2131 — Dynamic Host Configuration Protocol
  • RFC 2132 — DHCP Options and BOOTP Vendor Extensions
  • Cisco Systems. «DHCP Snooping» — документация по настройке коммутаторов
  • Столлингс В. «Компьютерные сети, протоколы и технологии» — глава о DHCP и безопасности
  • Уголовный кодекс Российской Федерации, статьи 272, 273

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →