Безопасность канального уровня

Материал из Xgu.ru

Перейти к: навигация, поиск
stub.png
Данная страница находится в разработке.
Эта страница ещё не закончена. Информация, представленная здесь, может оказаться неполной или неверной.

Если вы считаете, что её стоило бы доработать как можно быстрее, пожалуйста, скажите об этом.

Короткий 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 используются такие настройки по умолчанию, которые позволяют выполнить ряд атак и получить несанкционированный доступ к сети или вывести из строя сетевые устройства.

Использование утилит в данном случае демонстрирует простоту взлома сети и уязвимость таких настроек коммутаторов.

Icon-caution.gif

Некоторые атаки, которые можно выполнять с помощью утилит, могут вызвать отказ в обслуживании. Поэтому их следует применять очень осторожно в рабочей сети.

[править] 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-адресов, которым разрешено передавать трафик через порт.

Используется для предотвращения:

[править] 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ом.

[править] Аутентификация при доступе к сети

Основная страница: Аутентификация при доступе к сети

[править] Дополнительная информация