Безопасность канального уровня
Материал из Xgu.ru
- Короткий URL: l2security
- Автор: Наташа Самойленко
Эта страница посвящена обзору различных способов и средств обеспечения безопасности работы сети на канальном уровне.
[править] Введение
Безопасность канального уровня можно считать синонимом безопасности локальной сети. Как правило, атаки на канальном уровне предполагают, что атакующий находится в локальной сети, либо есть некий посредник, который умышленно или неумышленно помогает выполнению атак.
Задача атакующего получить доступ к определенным ресурсам, информации или, как минимум, нарушить нормальную работу сети.
Опасность проблем в безопасности на канальном уровне заключается в том, что взломав сеть на канальном уровне, атакующий может перешагнуть через средства защиты на более высоких уровнях.
Например, в сети настроены ACL на сетевых устройствах или файрвол для разграничения доступа пользователей к ресурсам в сети. Но, например, выполняя подмену IP-адреса в пакете, атакующий свободно проходит через настроенные правила, так как он выглядит как легитимный пользователь.
Как правило, атаки выполняются в комплексе, а не по одной. Удачное выполнение атаки может быть не целью, а средством получить что-то большее.
Например, атака ARP-spoofing позволяет атакующему перехватывать весь трафик между интересующим ресурсом и каким-то пользователем (или подменять его). Однако, выполнить эту атаку можно только в пределах широковещательного сегмента сети. Если в сети присутствует коммутатор Cisco с настройками по умолчанию, то можно поднять тегированный канал между компьютером атакующего и коммутатором и получить таким образом доступ к другим широковещательным сегментам сети. В таком случае выполнить ARP-spoofing можно в каждом из доступных сегментов.
[править] Атаки на канальном уровне сети
В зависимости от результата, который будет получен, атаки можно разделить на такие несколько типов (выделенные типы атак не охватывают все возможные атаки):
- Человек посередине (Man in the middle, MitM) — атакующий находится между двумя жертвами и либо прослушивает трафик, который передается между ними, либо перехватывает его и подменяет. При этом, для жертв атаки, никаких видимых признаков атаки нет;
- Отказ в обслуживании (DoS) — атака на какой-то ресурс системы с целью довести его до отказа. На канальном уровне есть ряд атак, которые позволяют получить односторонний доступ к какому-то участку сети. Этого как раз достаточно для такого вида атаки;
- Несанкционированный доступ к сети или участкам сети — используя какие-то недостатки в протоколах, получения доступа к тем участкам сети, которые теоретически должны были быть недоступны. И, возможно, выполнение других типов атак в этих участках сети;
- Нарушение работы сети или её участков — некоторые недостатки протоколов канального уровня не могут использоваться предсказуемым образом. То есть, нет возможности как-то преднамерено повлиять на их поведение. Но есть возможность нарушить их нормальную работу и таким образом нарушить работу участка сети или всей сети.
Не все протоколы, которые будут рассматриваться, относятся к канальному уровню. Однако, именно особенности работы этих протоколов на канальном уровне, дают возможность манипулировать этими протоколами. Поэтому часто соответствующие атаки и средства защиты относят к канальному уровню сети.
Распространенные атаки канального уровня:
- ARP-spoofing (ARP-poisoning) — техника сетевой атаки, применяемая преимущественно в Ethernet, но возможная и в других, использующих протокол ARP сетях, основанная на использовании недостатков протокола ARP и позволяющая перехватывать трафик между узлами, которые расположены в пределах одного широковещательного домена;
- MAC-spoofing — атака канального уровня, заключающаяся в том, что на сетевой карте изменяется MAC-адрес, что заставляет коммутатор отправлять на порт, к которому подключен злоумышленник, пакеты, которые до этого он видеть не мог;
- Переполнение таблицы коммутации — атака основана на том, что таблица коммутации в коммутаторах имеет ограниченный размер. После заполнения таблицы, коммутатор не может более выучивать новые MAC-адреса и начинает работать как хаб, отправляя трафик на все порты;
- Атаки на DHCP — это может быть подмена DHCP-сервера в сети (тогда атакующий может назначать дополнительные параметры DHCP, такие как шлюз по умолчанию) или атака DHCP starvation, которая заставляет DHCP-сервер выдать все существующие на сервере адреса злоумышленнику;
- VLAN hopping — несанкционированное получение доступа к VLAN;
- Атаки на STP — отправка сообщений BPDU для изменения текущей топологии STP.
[править] Тестирование безопасности сетевых протоколов с помощью различных сетевых утилит
Существует множество различных утилит, которые позволяют выполнять атаки на сеть. Некоторые позволяют моделировать только определенные атаки, другие — генерировать любой пакет.
Рассматриваются такие аспекты использования сетевых утилит:
- тестирование функций и средств безопасности,
- тестирование уязвимостей некоторых настроек сетевых устройств и хостов.
Как правило, когда функция безопасности применяется одна, то редко возникают какие-то проблемы. Достаточно просто настроить её и проверить корректность работы. Гораздо сложнее настроить согласованную работу нескольких средств защиты, оставив при этом сеть работоспособной.
После настройки функций безопасности обязательно необходимо проверить корректность её работы. Во-первых, потому что бывают случаи, когда функция работает не совсем так, как было заявлено производителем оборудования или не совсем так как хотелось бы. Во-вторых, потому что функции влияют друг на друга и добавление новой функции может привести к изменениям в поведении другой функции.
Помимо тестирования функций безопасности утилиты могут использоваться для проверки уязвимости некоторых настроек сетевых устройств и хостов.
Например, на многих коммутаторах Cisco используются такие настройки по умолчанию, которые позволяют выполнить ряд атак и получить несанкционированный доступ к сети или вывести из строя сетевые устройства.
Использование утилит в данном случае демонстрирует простоту взлома сети и уязвимость таких настроек коммутаторов.
Некоторые атаки, которые можно выполнять с помощью утилит, могут вызвать отказ в обслуживании. Поэтому их следует применять очень осторожно в рабочей сети. |
[править] Yersinia
- Основная страница: Yersinia
Yersinia — сетевая утилита, позволяющая эксплуатировать недостатки ряда протоколов, использующихся активным сетевым оборудованием и стандартных сетевых протоколов, использующихся в сети.
В настоящий момент возможны атаки на:
- стандартные сетевые протоколы:
- Dynamic Host Configuration Protocol (DHCP),
- Spanning Tree Protocol (STP),
- 802.1Q,
- 802.1X,
- проприетарные протоколы Cisco:
- Inter-Switch Link Protocol (ISL),
- VLAN Trunking Protocol (VTP),
- Cisco Discovery Protocol (CDP),
- Dynamic Trunking Protocol (DTP),
- Hot Standby Router Protocol (HSRP).
[править] Scapy
- Основная страница: Scapy
Scapy — сетевая утилита написанная на языке Python, которая позволяет посылать, просматривать и анализировать сетевые пакеты. В отличии от многих других утилит, утилита Scapy не ограничена перечнем каких-то протоколов, пакеты которых она может генерировать. Фактически, она позволяет создавать любые пакеты и комбинировать атаки различных типов.
[править] Роль коммутаторов в безопасности канального уровня
В современных локальных сетях обмен информацией, как правило, предполагает передачу данных через коммутатор.
Поэтому сам коммутатор и протоколы, которые используют коммутаторы могут быть целью атак. Более того, некоторые настройки коммутаторов (как правило, это настройки по умолчанию) позволяют выполнить ряд атак и получить несанкционированный доступ к сети или вывести из строя сетевые устройства.
Однако, коммутатор может быть и достаточно мощным средством защиты. Так как через него происходит всё взаимодействие в сети, то логично контролировать это на нем.
Конечно использование коммутатора как средства защиты предполагает, что используется не простейший коммутатор 2го уровня, а коммутатор с соответствующими функциями для обеспечения безопасности.
[править] Безопасность протоколов, которые используют коммутаторы
[править] Spanning Tree Protocol (STP)
[править] 802.1Q (VLAN)
[править] Link Layer Discovery Protocol (LLDP)
[править] Безопасность проприетарных протоколов Cisco
[править] Cisco Discovery Protocol (CDP)
[править] VLAN Trunking Protocol (VTP)
[править] Dynamic Trunking Protocol (DTP)
[править] Hot Standby Router Protocol (HSRP)
[править] Функции коммутаторов для обеспечения безопасности работы сети на канальном уровне
Функция коммутатора | От каких атак защищает |
---|---|
Port security | Переполнение таблицы коммутации, несанкционированная смена MAC-адреса |
DHCP Snooping | Подмена DHCP-сервера в сети, DHCP starvation |
Dynamic ARP Inspection | ARP-spoofing |
IP Source Guard | IP-spoofing |
[править] Port security
- Основная страница: Port security
Port security — функция коммутатора, позволяющая указать MAC-адреса хостов, которым разрешено передавать данные через порт. После этого порт не передает пакеты, если MAC-адрес отправителя не указан как разрешенный. Кроме того, можно указывать не конкретные MAC-адреса, разрешенные на порту коммутатора, а ограничить количество MAC-адресов, которым разрешено передавать трафик через порт.
Используется для предотвращения:
- несанкционированной смены MAC-адреса сетевого устройства или подключения к сети,
- атак направленных на переполнение таблицы коммутации.
[править] DHCP Snooping
- Основная страница: DHCP snooping
DHCP snooping — функция коммутатора, предназначенная для защиты от атак с использованием протокола DHCP. Например, атаки с подменой DHCP-сервера в сети или атаки DHCP starvation, которая заставляет DHCP-сервер выдать все существующие на сервере адреса злоумышленнику.
DHCP snooping регулирует только сообщения DHCP и не может повлиять напрямую на трафик пользователей или другие протоколы. Некоторые функции коммутаторов, не имеющие непосредственного отношения к DHCP, могут выполнять проверки на основании таблицы привязок DHCP snooping (DHCP snooping binding database). В их числе:
- Dynamic ARP Protection (Inspection) — проверка ARP-пакетов, направленная на борьбу с ARP-spoofing,
- IP Source Guard — выполняет проверку IP-адреса отправителя в IP-пакетах, предназначенная для борьбы с IP-spoofingом.
[править] Dynamic ARP Inspection (Protection)
- Основная страница: Dynamic ARP Inspection
Dynamic ARP Inspection (Protection) — функция коммутатора, предназначенная для защиты от атак с использованием протокола ARP. Например, атаки ARP-spoofing, позволяющей перехватывать трафик между узлами, которые расположены в пределах одного широковещательного домена.
Dynamic ARP Inspection (Protection) регулирует только сообщения протокола ARP и не может повлиять напрямую на трафик пользователей или другие протоколы.
[править] IP Source Guard
- Основная страница: IP Source Guard
IP Source Guard (Dynamic IP Lockdown) — функция коммутатора, которая ограничивает IP-трафик на интерфейсах 2го уровня, фильтруя трафик на основании таблицы привязок DHCP snooping и статических соответствий. Функция используется для борьбы с IP-spoofingом.
[править] Аутентификация при доступе к сети
- Основная страница: Аутентификация при доступе к сети