Защита своей территории — один из сильнейших природных инстинктов. Крупные хищники используют для этого когти и клыки, скунсы — пахучие железы в основании хвоста, а сисадмины — правильную настройку софта и железа для предотвращения сетевых атак. Сегодня мы рассмотрим наиболее популярные виды таких вторжений и разберем методы защиты от них на примере операционной системы Cisco IOS. В этой статье мы затронем наиболее популярные сетевые атаки, относящиеся к DHCP, VLAN, STP и Switch table.
В теории обеспечения информационной безопасности есть такое понятие, как глубоко эшелонированная оборона (Defense in depth). Этим мудреным термином называют концепцию, в которой весь корпоративный ИТ-ландшафт делится на несколько уровней контроля безопасности и защиты. Причем один уровень, или, как его еще называют, рубеж защиты, не зависит от остальных и является самостоятельной единицей.
К примеру, на границе внутренней локальной сети и интернета стоят периметровые средства защиты, такие как Firewall, IDS/IPS, NGFW (Next-Generation_Firewall) или UTM-шлюзы. Далее вся сеть мониторится на предмет выявления аномальной активности и инцидентов ИБ, к примеру с помощью SIEM-системы. Состояние ПО контролируется с помощью сканеров безопасности.
На следующем уровне задействованы средства защиты прикладного ПО, к примеру WAF для веб-сервера или DAM для СУБД. Ну а на конечных узлах применяются уже endpoint средства защиты — AV, SSO, DLP и другие страшные аббревиатуры, которыми обозначают штатные механизмы безопасности ОС, системы разделения прав доступа и полномочий пользователей, шифрование на лету и прочее.
В сегодняшней статье мы разберем только одну часть этой схемы, а именно защиту сетевого периметра корпоративного ИТ-ландшафта на примере коммутаторов и маршрутизаторов компании Cisco.
Чтобы провернуть все описанные в этой статье атаки на практике, не нужно много. Вполне хватит, к примеру, такой утилиты, как Yersinia. Она доступна для установки на любую Linux-систему и входит в сборку дистрибутива Kali Linux.
Перед тем как мы приступим к практической части, посвященной безопасной настройке сетевого оборудования, рассмотрим типовые атаки, которые с высокой вероятностью будут использоваться против твоей сети злоумышленниками. Ну или экспертами ИБ при проведении пентестов.
Цель этой атаки — подмена легитимного сервера DHCP сервером злоумышленника. Суть угрозы заключается в том, что, когда в сети одновременно находятся два сервера DHCP, один из которых «вражеский» (Rogue DHCP Server), часть клиентов автоматически сконфигурирует у себя неправильные адреса и прочие сетевые настройки. Далее в результате подмены умолчательного шлюза неавторизованный сервер DHCP сможет прослушивать весь трафик клиентов, при этом еще имея возможность форвардить все пакеты по своему усмотрению.
Однако чаще всего атака с подменой сервера DHCP не является атакой как таковой, а скорее служит неким плацдармом для дальнейшего углубления злодеев в атакуемую сеть.
Еще одна простая и популярная атака, выполняемая при помощи протокола DHCP. Суть ее заключается в том, что пул DHCP, из которого все корпоративные клиенты получают IP-адреса, изначально ограничен доступным диапазоном. Например, это может быть 253 адреса при использовании маски 255.255.255.0. Для нормальной работы сети этого должно хватить всем клиентам за глаза, однако «атака резервации» (DHCP starvation) стремится исчерпать этот пул и таким образом вывести легитимный сервер DHCP из игры.
Если воспроизвести действия злодеев по шагам, то вот как происходит такая атака:
Возможны два следствия, в зависимости от того, чего добиваются атакующие:
У операционной системы IOS есть несколько режимов работы (конфигурирования):
>
) позволяет только просмотреть базовые настройки сетевого устройства;#
) — для полноценной настройки всех функций;(config)#
), в котором выполняются глобальные настройки.Помимо этого, для настройки каждого отдельного интерфейса есть режим специфической конфигурации (Router(config-subif)#
).
Атака CAM table overflow, или переполнение локальной таблицы MAC-адресов, реализуется, когда таблица коммутации заполняется и после этого коммутатор работает в режиме хаба. Иными словами, подключившись к любому порту коммутатора после успешной атаки, можно перехватывать весь трафик в пределах широковещательного домена, которому принадлежит этот порт. Атаку можно выполнить, например, с помощью утилиты macof, которая входит в dsniff.
Чтобы понять, как работает эта атака, необходимо знать принципы работы современного коммутатора. Давай представим себе коммутатор с именем SW, к которому подключены два равнозначных хоста PC1 (MAC 0000.1111.1111) и PC2 (MAC 0000.2222.2222). На них уже настроены IP-адреса (10.0.0.1 и 10.0.0.2), и эти хосты хотят общаться друг с другом, как разнополые подростки в пубертатный период.
Так как хосты располагаются в одной подсети, маршрутизатор для этого не требуется и весь обмен пакетами будет происходить с помощью коммутатора в несколько этапов.
0000.1111.1111
) и порта. Теперь все пакеты, адресованные данному получателю, он будет пересылать адресату, а не во все доступные интерфейсы подряд.интерфейс gig1/2 - MAC 0000.2222.2222)
. Теперь, когда компьютеры начнут обмениваться информацией, будут использоваться только два порта, за которыми они расположены. На другие порты информация пересылаться не будет.Основной смысл рассказанной выше романтической истории общения двух устройств заключается в том, что, если коммутатор видит адрес получателя в своей CAM-таблице, он пересылает этот пакет на конкретный порт. Если не видит — устраивает широковещательную рассылку в надежде, что пакет все-таки найдет своего адресата в подконтрольной сети. Дело в том, что размер таблицы MAC-адресов у любого коммутатора ограничен. И при переполнении этой таблицы новые адреса реальных клиентов уже не смогут быть записаны в нее.
Таким образом, хакеру необходимо всего лишь сгенерировать большое количество ложных адресов и заставить коммутатор записать их в свою таблицу, чтобы реальные адреса реальных устройств постепенно были оттуда вытеснены.
Коммутатор начнет рассылать кадры, адресованные конкретному получателю, на все порты, находящиеся в том же VLAN. Следовательно, у атакующего устройства появится возможность перехватить и прочитать их.
А еще все коммутаторы, подключенные к атакованному, тоже подхватят фейковые MAC-адреса и начнут вести широковещательную рассылку по всей корпоративной сети, умножая угрозу.
Следующая атака базируется на возможности коммутаторов автоматически согласовывать тип своего порта — access
или trunk
. В двух словах расскажу о том, чем порт access
отличается от trunk
. Наберись терпения!
Как известно, протокол 802.1Q используется во всех современных сетях. Хитрая особенность этого протокола состоит в том, что он слегка расширяет ethernet-кадр, добавляя туда несколько полей (в частности, поле VLAN Identifier, VID). На основании этого поля коммутатор способен определить, какой группе портов адресован тот или иной кадр.
Благодаря полю VID к одному коммутатору можно подключить клиенты из нескольких подсетей, тем самым ограничив широковещательный домен. Также появляется возможность объединить подключенные к разным коммутаторам клиенты в одну логическую сеть.
Рассмотрим передачу кадра в сети с протоколом 802.1Q.
fa0/1
коммутатора SW1 в VLAN c порядковым номером 10. Это означает, что при попадании кадра на порт коммутатора в него будет добавлен 802.1Q-header с информацией о принадлежности к VLAN10.При этом можно выделить следующие особенности:
А теперь перейдем к самой атаке. Как уже было сказано, VLAN hopping основан на том, что коммутаторы имеют возможность автоматически согласовывать тип порта. Используется для этого проприетарный протокол компании Cisco под названием DTP. При его использовании (а он включен по умолчанию) возможны следующие состояния порта: dynamic auto
, dynamic desirable
, static access
, static trunk
.
Как мы видим, при определенных условиях, а именно в режимах dynamic auto
и dynamic desirable
, порт коммутатора может согласовать свою работу в режиме trunk
. Это значит, что, если атакующее устройство будет вести себя как порт в режиме desirable
, оно согласует на себя trunk-порт и получит доступ к трафику всех виртуальных сетей, которыми оперирует коммутатор.
Основная проблема заключается в том, что на коммутаторах Cisco все порты по умолчанию находятся в режиме auto
. Поэтому, даже если порт настроен в режиме access/auto
, при получении запроса на согласование его состояние может измениться на trunk/auto
.
Что ж, а вот теперь пришло время засучить рукава и приступить к укреплению нашего корпоративного бастиона. Ниже мы рассмотрим настройку функций и режимов работы IOS для нейтрализации всех описанных выше атак, а также ряд дополнительных фич, которые помогут тебе сделать сеть еще чуть-чуть более безопасной.
Перед любыми операциями конфигурирования сетевых устройств не забывай сделать бэкап конфига! Документируй все изменения, чтобы потом не потерять лог изменений и не вырвать себе с досады волосы на затылке.
Материалы из последних выпусков становятся доступны по отдельности только через два месяца после публикации. Чтобы продолжить чтение, необходимо стать участником сообщества «Xakep.ru».
Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», увеличит личную накопительную скидку и позволит накапливать профессиональный рейтинг Xakep Score! Подробнее
1 год7690 р. |
1 месяц720 р. |
Я уже участник «Xakep.ru»
Читайте также
Последние новости