Главная
АИ #27 (262)
Статьи журнала АИ #27 (262)
Исследование защищенности протокола STP на предмет атак типа Ddos TCN

Исследование защищенности протокола STP на предмет атак типа Ddos TCN

Научный руководитель

Рубрика

Информационные технологии

Ключевые слова

атака TCN DOS
STP протокол
методики тестирования и защиты STP
атаки

Аннотация статьи

В статье были рассмотрены методики тестирования и защиты STP протокола. STP протокол (Spanning Tree Protocol) – это протокол предотвращения петель в системе, работающий на втором уровне модели OSI (L2). Протокол STP создала Радья Перлман (Radia Perlman) – «мать интернета», в 1985 году. Протокол описан в стандарте IEEE 802.1D, рабочей группой IEEE 802.1 по межсетевому взаимодействию. В современном мире роль сетевых процессов недооценивается большинством, глубина и трудность такой науки отпугивает обычных обывателей, которые не задумываются о важности этой сферы в повседневной жизни. Социальные организации, больницы, городские учреждения – все повсеместно нуждаются в тех основополагающих вещах, о которых будет речь в данной статье. Примером станет вышеупомянутый протокол STP, роль которого крайне важна в организации работ сетей всех предприятий, что подтверждает важность исследования данной проблемы. Атака TCN DOS представляет собой угрозу для сетей, так как они могут привести к значительным сбоям в работе. Злоумышленники используют эту уязвимость для перегрузки сетевых устройств, что приводит к увеличению задержек и снижению качества обслуживания. Знание о том, как работает протокол STP, как и какими методами проводится атака, поможет будущим специалистам избежать подобных ситуаций. Это подчеркивает важность и полезность данной стать.

Текст статьи

Введение

На фоне роста современных технологий надежность сетевых инфраструктур остается наиболее важным аспектом, в связи с ростом числа кибератак и усложнением цифровой среды. Протокол STP (Spanning Tree Protocol), – это протокол, обеспечивающий стабильность Ethernet-сетей за счет предотвращения топологических петель и широковещательного шторма, однако его архитектура сталкивается с рядом угроз. Ключевая проблема – атаки типа TCN DOS. Атаки TCN DOS, при котором злоумышленники намеренно отправляют фальшивые BPDU пакеты, способны нагрузить CPU, вызвать потерю трафика и остановки всех процессов.

Такие атаки особенно опасны для сетей, где задержки недопустимы: промышленные производства, медицинские учреждения, финансовые компании, социальные учреждения. Атака на протокол STP приводит не только к замедлению работы, но и к полному отказу работы сетевых устройств, исчерпание ресурсов CPU коммутаторов. Что доказывает важность знаний о работе старых протоколов типов STP. Усовершенствованные альтернативы, такие как RSTP или MSTP, являются улучшенными механизмами защиты, но их использование требует больше времени и ресурсов. Многие организации, предприятия, имеющие не столь современное оборудование и ПО, продолжают использовать классический STP из-за его универсальности.

Объектом нашего исследования является атака и методики тестирования защиты протокола STP. Внимание уделено анализу слабых мест протокола, например подделка BPDU-пакетов, а также практическим мерам.

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

1. Основы работы архитектуры протокола STP

Протокол STP (Spanning Tree Protocol) был впервые описан в стандарте IEEE 802.1D, принятом в 1990 году, с 2014 года протокол описан в обновлённом стандарте IEEE 802.1Q. Основной принцип STP заключается в построении логической древовидной структуры сети, где избыточные связи блокируются для исключения циклической передачи данных. Пример петли коммутаторов представлен на рисунке 1.

image.png

Рис. 1. Образование петли в топологии

На рисунке представлены три коммутатора, соединённые треугольником – значит есть петля. С протоколом STP, активированным по умолчанию, каждый из коммутаторов активно взаимодействует с другими, отправляя определенный вид кадров, известный как BPDU (Bridge Protocol Data Unit).

BPDU – регулярные сообщения, которые корневой коммутатор рассылает в сеть. Эти кадры содержат информацию о текущем состоянии сети, такую как приоритеты коммутаторов, стоимости путей и идентификатор корневого моста. Когда остальные коммутаторы получают конфигурационные BPDU, они перенаправляют их дальше по сети. Поэтому вся сеть получает одну и ту же информацию о топологии, что позволяет ей согласовывать свои решения о путях и избегать петель.

Алгоритм выбора корневого моста, который определяет главный коммутатор сети, служит основой для иерархического построения топологии. Коммутатор с наименьшим идентификатором моста (Bridge Priority) станет корневым. В самом начале выборов каждый коммутатор выставляет себя в роли потенциального корневого коммутатора. С помощью BPDU каждый коммутатор представляет свой идентификатор как ID корневого коммутатора. Когда коммутаторы начинают получать BPDU от соседних устройств, они обращают внимание на Bridge ID, который включает в себя приоритет коммутатора и его MAC-адрес. Каждый коммутатор анализирует полученные BPDU и, если обнаруживает, что другой коммутатор представил BPDU с меньшим Bridge ID, то он перестает иметь статус корневого, представляя Bridge ID полученного коммутатора как новый корневой коммутатор. Так процесс выбора корневого коммутатора продолжается до тех пор, пока не выявится тот коммутатор, у которого Bridge ID окажется самым низким.

Поскольку приоритет одинаков на всех коммутаторах, MAC-адрес является решающим. Именно поэтому важно учесть то, что MAC-адрес возможно изменить собственноручно, так как условно старый коммутатор будет иметь MAC-адрес меньше, чем у нового – следовательно в топологии сети он станет корневым (root), что не желательно для любой сети. На рисунке 2 SW1 имеет наименьший MAC-адрес.

image.png

Рис. 2. Root SW1

Процесс выбора корневого устройства обеспечивает стабильность работы сети.

Протокол STP использует уведомления (Topology Change Notification). TCN BPDU генерируются коммутаторами при возникновении изменений в топологии сети. Они побуждают коммутаторов обновить свои таблицы пересылки, чтобы адаптироваться к новой топологии. После этого все устройства пересчитывают свои маршруты.

2. Уязвимости связанные с TCN

Процесс передачи TCN начинается с того, что коммутатор, обнаруживший изменение, отправляет уведомление на корневой мост, который затем распространяет эту информацию по всей сети. Одной из проблем является возможность отправлять ложные BPDU пакеты. Злоумышленник отправляет на коммутатор кадры с несуществующими, случайно сгенерированными MAC-адресами. В результате коммутатор обновляет таблицу MAC-адресов информацией из ложных кадров.

Атаки с использованием ложных уведомлений способны перегружать CPU, а также способствуют утери пакетов трафика между коммутаторами. Исследования показывают, что такие атаки могут увеличить время задержки передачи данных в сети на 30–50%. Поэтому важно учитывать, что при планировании сети, нужно заложить в проект запас по меньшей мере в 30% неиспользуемых возможностей. Такой подход помогает смягчить последствия потенциальных атак и повышает устойчивость сети.

3. Пример атаки на протокол STP

3.1. Физическая часть атаки

Атака протокола STP: TCN DoS – заключается в целенаправленной отправки злоумышленником огромного количества поддельных BPDU пакетов, что в свою очередь приводит к чрезмерной нагрузке системы. Последствием такой атаки станет увеличение времени отправки пакетов, с дальнейшей потерей трафика. Именно такой результат станет подтверждением атаки в тестовой среде с имитацией TCN DoS.

На первом этапе атаки на протокол – нужно создать правильную конфигурацию с тремя коммутаторами, подключив их к друг-другу, создав петлю. Топология такой конфигурации, которая будет использоваться в эксперименте, можно увидеть на рисунке 3.

image.png

Рис. 3. Топология для атаки

Исходя из топологии, PC злоумышленника подключён к SW1(Cisco).

Другие два PC связаны через SW2(Eltex 1428) и SW3(Cisco). Коммутаторы подключены так, что образуют петлю, что автоматически активирует протокол STP. Физическое подключение коммутаторов представлено на рисунках 4–6.

image.png

Рис. 4. Подключение к коммутатору Eltex 1428

image.png

Рис. 5. Подключение к коммутатору Cisco

image.png

Рис. 6. Подключение к коммутатору Cisco

3.2. Практическая часть атаки

В экспериментальной среде PC злоумышленника подключён к любому из трёх коммутаторов в порт консоли, это делается для возможности зайти в консоль коммутатора и связи с другими устройствами. Для этого нужно установить программу Putty. В программе ввкладке serial, ввести характеристики speеd и разъём порт PC злоумышленника (В данном случае COM3). После этого доступен доступ в консоль коммутатора, где можно проверить состояние STP протокола командой show-spanning-tree.

Установка связности между двумя коммутаторами-жертв для успешности атаки. Для этого нужно установить соответствующие адреса на устройства, на PC1 – 192.168.0.1, и PC2 – 192.168.0.2. После этого отправим трафик с одного устройства на другое, результат представлен на рисунке 7.

image.png

Рис. 7. Отправка пакетов

В таблице показаны результаты времени отправки пакетов с PC1 до PC2 в обычном режиме.

Таблица 1

Результаты исследования до атаки

54 bytes from 192.168.0.1: icmp_req=1

time=0.705 ms

54 bytes from 192.168.0.1: icmp_req=2

time=1.84 ms

54 bytes from 192.168.0.1: icmp_req=3

time=1.85 ms

54 bytes from 192.168.0.1: icmp_req=4

time=1.54 ms

54 bytes from 192.168.0.1: icmp_req=5

time=1.55 ms

54 bytes from 192.168.0.1: icmp_req=6

time=1.85 ms

54 bytes from 192.168.0.1: icmp_req=7

time=1.82 ms

54 bytes from 192.168.0.1: icmp_req=8

time=1.01 ms

54 bytes from 192.168.0.1: icmp_req=9

time=0.981 ms

54 bytes from 192.168.0.1: icmp_req=10

time=1.04 ms

54 bytes from 192.168.0.1: icmp_req=11

time=1.85 ms

54 bytes from 192.168.0.1: icmp_req=12

time=0.651 ms

54 bytes from 192.168.0.1: icmp_req=13

time=1.86 ms

На PC злоумышленника необходимо установить соответствующие программы (Ncap), расширения (Scapy), с помощью которых будет происходить атака посредством запуска скрипта в pytnon-Scapy. Установленный Scapy представлен на рисунке 8.

image.png

Рис. 8. Установленная библиотека Scapy

3.3. Запуск атаки на протокол STP

Выполнив все условия для проведения успешной атаки в экспериментальной среде, с помощью Python-скрипта в cmd можно запустить атаку. Для этого cmd запускается от имени администратора, необходимо также узнать с помощью команды ipconfig/all ваш активный Ethernet/Wi-Fi адаптер (например, Ethernet adapter Ethernet). Активный Ethernet адаптер представлен на рисунке 9.

image.png

Рис. 9. Ethernet адаптер

Это нужно для работы скрипта и правильности написания команды. В PythonIDLE пишем скрипт, этот скрипт будет создавать огромное количество поддельных BPDU пакетов в секунду. Последствием станет нагрузка на систему, сбои в работе протокола и потеря пакетов с увеличением времени их отправки.

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

image.png

Рис. 10. Последствие атаки

В таблице показаны результаты времени отправки пакетов с PC1 до PC2 при атаке на протокол STP.

Таблица 2

Результаты исследования после атаки

64 bytes from 192.168.0.1: icmp_req=1 ttl=64

time=370 ms

64 bytes from 192.168.0.1: icmp_req=2 ttl=64

time=190 ms

64 bytes from 192.168.0.1: icmp_req=3 ttl=64

time=1.85 ms

From 192.168.0.1 icmp_seq=3

Destination Host Unreachable

64 bytes from 192.168.0.1: icmp_req=5 ttl=64

time=384 ms

64 bytes from 192.168.0.1: icmp_req=6 ttl=64

time=1.85 ms

64 bytes from 192.168.0.1: icmp_req=7 ttl=64

time=1.02 ms

64 bytes from 192.168.0.1: icmp_req=8 ttl=64

time=120 ms

From 192.168.0.1 icmp_seq=9

Destination Host Unreachable

64 bytes from 192.168.0.1: icmp_req=11 ttl=64

time=1.85 ms

64 bytes from 192.168.0.1: icmp_req=12 ttl=64 time=622.4 ms

time=622.4 ms

64 bytes from 192.168.0.1: icmp_req=13 ttl=64

time=1.86 ms

Для сравнения посмотрим графически на то, как идут пакеты в штатном режиме и как идут пакеты при атаке. Результаты представлены на рисунках 11-12.

image.png

Рис. 11. График отправки трафика в обычном режиме

График показывает зависимость времени отправки трафика с шагом в 4 единицы по оси X. В штатном режиме график постоянный, без резких скачков и перемен.

image.png

Рис. 12. График отправки трафика при атаке

На рисунке 12 видно, что в значениях по x в 150 и 350 график функций достигает нуля, что сообщает нам об Destination Host Unreachable. Сам график не постоянный, имеет скачки по времени, что подтверждает наличие атаки на протокол. При DoS атаке, CPU – коммутаторы тратят ресурсы на обработку поддельных BPDU-фреймов, что повышает их нагрузку. Характеристики процессора при атаке представлены на рисунке 13:

image.png

Рис. 13. Показатели CPU

4. Методика защиты от атаки TCN DoS

Отключение TCN на ненужных портах. На edge-портах следует отключать обработку TCN с помощью команд:

interface GigabitEthernet0/1

spanning-tree bpdufilter enable # фильтрация BPDU (Cisco)

panning-tree guard root # защита root-порта

Второй способ заключается в использовании PortFast и BPDU Guard – функции протокола STP. PortFast позволяет порту сразу перейти в состояние Forwarding, пропуская этапы Listening и Learning, то есть игнорируя TCN.

PortFast рекомендуется настраивать только на портах, которые подключены к конечным устройствам (PC). На портах, соединённых с другими коммутаторами, эту функцию включать не рекомендуется, так как это может привести к петлям в сети.

BPDU Guard блокирует порт при получении BPDU. Если порт получает BPDU, он переходит в состояние error-disabled. Порт остаётся в этом состоянии, пока администратор вручную не разблокирует его или не настроит автоматическое восстановление. BPDU Guard можно включить на коммутаторе или для каждого интерфейса. Настраивается PortFast и BPDU Guard следующими командами в режиме конфигурации интерфейса:

Настройка PortFast:

interface range FastEthernet0/1-24

 spanning-tree portfast

Настройка BPDU Guard:

interface range FastEthernet0/1-24

 spanning-tree portfast bpduguard default

Ограничение обработки TCN (Rate Limiting). Некоторые производители позволяют ограничить частоту обработки TCN:

spanning-tree tc-protection rate-limit 1

Переход на современные RSTP/MSTP. RSTP и MSTP менее подвержены TCN-атакам, так как используют улучшенные механизмы смены топологии. Команда для перехода на RSTP:

spanning-tree mode rapid-pvst

Заключение

В ходе проведенного исследования были рассмотрены основные аспекты протокола STP, включая его роль в сетевой инфраструктуре и уязвимости, связанные с уведомлениями об изменении топологии (TCN). В процессе исследования, в экспериментальной среде была проведена атака, путём отправки поддельных BPDU сообщений, результаты и последствия атаки были описаны и продемонстрированы в данной статье. Было доказано, что при атаке STP: TCN последствием становится потеря и задержка трафика, и перегрузка CPU устройств. Отметим, что протокол STP – неотълемленная часть любой сети, знания о которой должно быть у любого специалиста в области сетей и базы данных.

Список литературы

  1. Воробьёв С. Защита промышленных протоколов: часть 1 / С. Воробьёв // СТА. – 2018. – № 3. – С. 22-23.
  2. Дудышев В.Ю. Лабораторный практикум по дисциплине «Организация, принципы построения и функционирования компьютерных сетей» / В.Ю. Дудышев. – Котовск: Тамбовское областное государственное бюджетное образовательное учреждение среднего профессионального образования «Котовский индустриальный техникум», 2015.
  3. Иванов Ю.Б. Сетевые атаки на уровне сетевого доступа модели TCP/IP / Ю.Б. Иванов, И.А. Чубуткин // Cifra. Информационные технологии и телекоммуникации. – 2025.
  4. Клаченков В.А. Анализ атак на локально-вычислительную сеть / В.А. Клаченков, О.Н. Минюк.
  5. Платунова С.М. Ethernet switches L2&L3. Проектирование, настройка, диагностика сетей передачи данных: учебное пособие / С.М. Платунова, И.В. Елисеев, Е.Ю. Авксентьева. – СПб.: НИУ ИТМО, 2018. – 87 с.
  6. Семигузов Д.А. Программа вступительных испытаний на направление подготовки 09.04.01 «Информатика и вычислительная техника»: Магистерская образовательная программа «Технология разработки программных систем» / Д.А. Семигузов. – Чита, 2020.
  7. Уймин А.Г. Компьютерные сети. L2-технологии: практикум для СПО / А.Г. Уймин. – Саратов, Москва: Профобразование, Ай Пи Ар Медиа, 2024 – 83 с.

Поделиться

79

Мажугин Я. О., Романов А. К. Исследование защищенности протокола STP на предмет атак типа Ddos TCN // Актуальные исследования. 2025. №27 (262). Ч.I. С. 10-19. URL: https://apni.ru/article/12609-issledovanie-zashishennosti-protokola-stp-na-predmet-atak-tipa-ddos-tcn

Обнаружили грубую ошибку (плагиат, фальсифицированные данные или иные нарушения научно-издательской этики)? Напишите письмо в редакцию журнала: info@apni.ru

Похожие статьи

Другие статьи из раздела «Информационные технологии»

Все статьи выпуска
Актуальные исследования

#29 (264)

Прием материалов

19 июля - 25 июля

Остался последний день

Размещение PDF-версии журнала

30 июля

Размещение электронной версии статьи

сразу после оплаты

Рассылка печатных экземпляров

13 августа