Часть II: Атаки на основе анализа сетевой среды, сетевых устройств и обмена

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

В данная часть этой книги составлена из следующих глав:

Глава 6. Поиск атак на основе сетевой среды

Содержание

Глава 6. Поиск атак на основе сетевой среды
Планирование атак на основе сетевой среды
Получение сведений из сетевой среды
Похищение сведений из сетевой среды
Предотвращение применения ИТ ресурсов пользователями
Активные и пассивные атаки
Активные атаки
Атаки маскарада и MITM
Атаки модификации
Атаки DoS
Пассивные атаки
Рекогносцировка и получение сведений
Прослушивание широковещательного сетевого обмена
Прослушивание по отдельному зеркальному устройству/ порту
Атаки DoS/ DDoS и переполнение на основе сетевой среды
Наводнение атаками сканирования
Наводнение выработкой произвольного обмена
Генерация и защита против атак переполнения и DoS/ DDoS
Как производить атаки затопления и DoS/ DDoS
Как защищаться от атак затопления и DoS/ DDoS
Атаки на основе L2
Наводнение MAC
Как производить
Как защищаться
Атаки STP, RSTP и MST
Как производить
Как защищаться
Атаки L3 и на основе ARP
Отравление ARP
Как производить
Как защищаться
Истощение DHCP
Как производить
Как защищаться
Выводы
Вопросы

В своих предыдущих главах мы изучили сетевые структуры, протоколы сетевой безопасности, инструменты и методы атак. Теперь мы окунёмся в более тонкие подробности, сосредоточившись на атаках целей и изучении того как защищаться от них.

Когда мы сосредотачиваемся на конкретной сетевой среде, эти цели атак могут быть разбиты на категории в две основные области:

  • Атаки на основе сетевых соединений: Это атаки на линии взаимодействия, которые соединяют между собой сетевые устройства, серверы и хосты.

  • Атаки на основе устройств: Такие атаки осуществляются на сетевые устройства, то есть коммутаторы локальных сетей, маршрутизаторы, межсетевые экраны и многое иное, а также на те протоколы, которые запущены между ними.

В этой главе вы изучите первый тип атак, Атаки на основе сетевых сред, как проводятся эти атаки, как их выявлять когда они происходят и что предпринимать для их предотвращения.

В данной главе мы рассмотрим следующие основные вопросы:

  • Планирование атак на основе сетей

  • Активные и пассивные атаки

  • Разведка и сбор сведений

  • Атаки и затопление DoS (Denial of Service, отказа в обслуживании) и DDoS (Distributed DoS распределённого отказа в обслуживании)

  • Атаки на основе L2

  • Атаки на основе L3 и ARP (Address Resolution Protocol, протокола разрешения адресов)

ARPы начнём с того как планировать атаки на основе сетей и как защищаться от них.

Планирование атак на основе сетевой среды

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

[Замечание]Замечание

Кибератака, как это определяет NIST (National Institute of Standards and Technology) США, вовлекает "определение целью использование предприятием киберпространства с намерением нарушения работы, отключения, уничтожения или злонамеренного управления вычислительной средой/ инфраструктурой; или нарушение целостности данных или кража контролируемой информации".

Если просуммировать это определение, в целом, кибератаки применяются для разрушения информации, кражи сведений или препятствия пользователям осуществлять доступ к ИТ ресурсам. Атаки на основе сетевых сред могут применяться для последних двух действий:

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

  • Препятствие пользователям в применении ИТ ресурсов: Это вызывает крушение сетевых сред и прекращение их функционирования. Этого можно достигать различными методами, например, подрывом операций ARP, истощении DHCP (Dynamic Host Configuration Protocol), запутывании протоколов маршрутизации и много чего ещё. Кроме того, это может осуществляться простой загрузкой такой сетевой среды до того момента, когда она прекращает свою функциональность.

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

В обоих методах самое первое что нам следует сделать, это собрать сведения по той сетевой среде, которую мы желаем атаковать. Затем мы воспользуемся средствами для кражи сведений или воспрепятствуем пользователям применять ИТ ресурсы. Давайте начнём со сбора сведений.

Получение сведений из сетевой среды

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

[Замечание]Замечание

Когда мы подключаем свой ноутбук к коммутатору локальной сети, мы обнаружим широковещательный и, возможно, групповой обмены. Широковещательный обмен переправляется во все порты коммутатора, а потому мы будем просматривать весь имеющийся широковещательный обмен. Групповой обмен также направляется во все порты соответствующего коммутатора локальной сети если не настроено нечто иное. Например, когда настроен перехват IGMP, групповые пакеты будут переправляться только в порты, из которых клиенты отправляли запрос на приём групповых пакетов.

Разобравшись с этой разницей между широковещательным и групповым обменами, мы будем способны получать больше сведений, как вы это изучите в разделе Рекогносцировка и получение сведений.

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

[Замечание]Замечание

Зеркальный порт, порт отслеживания, SPAN (Switch-Port Analyzer) и прочие зависящие от производителя аналогичные термины относятся к портам, которые настраиваются в коммутаторе локальной сети для прослушивания всего обмена протекающего в- или из- иного порта. В целом, вы настраиваете порт отслеживания и осуществляете мониторинг порта; вы подключаете свой ноутбук к такому порту мониторинга и весь обмен для отслеживаемого порта зеркалируется вам с тем, чтобы вы были способны отслеживать его, анализировать его или сохранять его. Некоторые производители к тому же поддерживают такие функциональные возможности как отслеживание с фильтрацией, мониторинг VLAN целиком и прочие.

При прочих подходах мы можем выдавать себя за кого- то другого, скажем, при отравлении ARP, атаках DNS и иных методах. Мы обсудим эти методы в Главе 10, Выявление атак LAN на основе IP и TCP/ UDP и в Главе 15, Безопасность корпоративных приложений - базы данных и файловые системы.

Похищение сведений из сетевой среды

Кража сведений из атакуемой сетевой среды требует от вас выполнения таких шагов:

  1. Физического или виртуального подключения к этой сетевой среде.

  2. Начале сбора сведений такими средствами как Wireshark.

  3. Кражу значимых сведений.

[Замечание]Замечание

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

Для сбора сведений от сетевых устройств мы можем пользоваться несколькими средствами. Самый первый метод состоит в применении Wireshark для прослушивания широковещательного обмена:

  • Широковещательный ARP снабдит вас адресами пользователей сети.

  • Широковещательный NetBIOS даст вам значения IP адресов, имён и служб, производимых соответствующим хостом.

  • Обновления маршрутов предоставит вам сведения о сетевых средах, маршрутизаторах и имеющихся между ними соединениями.

  • Прочие обновления - вы можете просматривать кто отправляет широковещательный/ групповой обмен и анализировать его. Вы удивитесь насколько много сведений вы получите из этого.

Для кражи значимых сведений вы обязаны сделать одно из следующего:

  • Зеркалировать порт некого важного порта и прослушивать идущий через него обмен.

  • Установить программное обеспечение в то устройство, в которое вы хотите вмешаться.

  • Воспользоваться пародирующими средствами чтобы извлекать имеющийся в вашем направлении обмен.

В Главе 8, Анализ и подслушивание сетевого обмена мы обсудим это более подробно.

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

Чтобы воспрепятствовать пользователям применять сетевую среду, вам потребуется осуществить следующие шаги:

  1. Разобраться со структурой планируемой к атаке сетевой среды. Воспользуйтесь Wireshark или средствами сканирования для сбора сведений и прослушивания обновлений протоколов.

  2. Спланировать методологию атаки: будет ли проще просто атаковать DoS/ DDoS, что загрузит эту сетевую среду или же это будет запутывание сетевых протоколов?

  3. Принять решение о методе атаки: когда вы просматриваете обновления, а они не зашифрованы, попытайтесь запутать имеющиеся маршрутизаторы поддельными обновлениями. Если вы наблюдаете за объявлениями NetBIOS, проверьте кто их отправляет, а если вы увидите запросы ARP проконтролируйте какие устройства ищут чаще всего.

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

Активные и пассивные атаки

В целом, активные атаки это когда вы предпринимаете некое действие, а пассивные атаки, обычно, это когда вы просто выполняете прослушивание.

Активные атаки

В сетевой безопасности активные атаки содержат такие типы атак:

  • Атаки маскарада и человека в промежутке (MITM Man-in-the-Middle

  • Атаки модификации

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

Давайте обсудим как они работают. Мы изучим как образцы на основе Windows, так и на основе Linux, просто ради интереса.

 

Атаки маскарада и MITM

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

 

Рисунок 6.1


Отравление ARP

На нашем предыдущем снимке экрана вы можете наблюдать как наш ПК с MAC адресом 08:00:27:f8:40:f1 отправляет поддельные отклики ARP- например, 10.0.0.138 это 08:00:27:f8:40:f1, 10.0.0.19 это 08:00:27:f8:40:f1 и 10.0.0.1 это 08:00:27:f8:40:f1. Основная цель этого состоит в том, чтобы те устройства, которые получают подобные отклики ARP полагались бы на значение адреса атакующего как на тот адрес, которые они наблюдают, а следовательно, отправляли бы данные ему.

 

Атаки модификации

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

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

Для извлечения таких сведений вами вы можете применять отравление ARP и такие средства как Ethercap. Более подробно мы обсудим это в Главе 10, Выявление атак LAN на основе IP и TCP/ UDP. Основная цель этих инструментов в контексте атак на основе сети заключается в манипулировании сведениями маршрутизации, а именно, к примеру, вызывая перенаправлять маршрутизаторами пакеты самому злоумышленнику вместо того получателя, для которого они предназначены, как мы изучим это в Главе 12, Атака на протоколы маршрутизации; манипуляциях со сведениями DNS, с чем мы ознакомимся в Главе 13, Безопасность DNS; обращении с корпоративными сетевыми приложениями, что мы освоим в Главе 15, Безопасность корпоративных приложений - базы данных и файловые системы; а также для вмешательства и обработки голосовых вызовов, чему мы научимся в Главе 16, IP телефония и безопасность служб сотрудничества.

 

Атаки DoS

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

Теперь, когда мы изучили что мы способны вырабатывать активно, давайте взглянем на пассивные атаки.

Пассивные атаки

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

Рекогносцировка и получение сведений

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

Самый первый и наиболее простой это простое прослушивание. Давайте изучим как мы можем осуществлять его.

Прослушивание широковещательного сетевого обмена

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

На Рисунке 6.1 мы можем наблюдать некие типовые файлы перехвата Wireshark, из которых мы способны изучить ряд моментов относительно своей сетевой среды. Прежде всего, мы видим обновления STP (Spanning Tree Protocol, протокола покрывающего дерева), а интересным моментом является то, что наш корневой мост обладает приоритетом по умолчанию 32768.

[Замечание]Замечание

Устройства Уровня 2 локальной сети, которые обычно именуются коммутаторами, в стандартах STP/ RSTP носят название мостов или мостов со множеством портов. Поэтому, при каждой ссылке на данные стандарты я буду называть их мостами, а во всех прочих местах я буду ссылаться на них по их применению, то есть коммутаторами.

В STP и следующих за ним RSTP (Rapid STP, который превратил STP в устаревший) и MST (Multiple STP), их корневой мост это тот мост, через который происходит весь обмен. В качестве корневого моста выбирается мост с наинизшим приоритетом, а если все приоритеты мостов оставлены со значениями по умолчанию, корневым выбирается мост с наименьшим значением MAC адреса.

[Замечание]Замечание

Всякий коммутатор Уровня 2, или мост, обладает своим собственным адресом MAC. Его MAC адрес используется в нескольких протоколах управления, включая STP, RSTP и MST. Этот MAC адрес не имеет ничего общего с теми MAC адресами, которые перенаправляются этим коммутатором в своём процессе коммутации.

В данном примере вставка коммутатора с приоритетом коммутации менее 32768 превратит этот коммутатор в корневой для данной сетевой среды STP. Это имеет двумя момента:

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

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

Для осуществления этого мы можем настроить защиту своего BPDU (Bridge Protocol Data Unit) для блокирования приёма обновлений BPDU, способны настроить защиту такого корня по порту коммутатора чтобы запретить порту превращаться в корневой порт (порту, к которому подключён корневой мост), или же мы можем воспользоваться нашей NAC (Network Access Control, системой управления доступом к сети) для отключения устройств злоумышленников. Существуют и иные методы защиты от этого. Важно попытаться разобраться с имеющейся проблемой; когда вы это осознаёте, решение состоит в простом чтении руководств пользователя. Будьте добры обратиться к официальной документации Cisco, Juniper Networks, Extreme Networks, или же вы можете справиться у любого иного производителя с которым вы работаете:

 

Рисунок 6.2


Приоритет STP

На своём предыдущем снимке экрана мы можем наблюдать структуру Уровня 2 своей сетевой среды. Обратите внимание, что наш корневой мост это тот, который обладает MAC адресом, заканчивающемся на 4b:64:01 и с приоритетом 32 768. Теперь у нас приличное понимание протоколов STP/ RSTP, что позволяет нам, к примеру, подключить коммутатор с самым низким приоритетом , что превратит его в корневой мост и извлечёт весь обмен в наше направление.

В своём следующем образце мы можем наблюдать широковещательные протокола NetBIOS. В уведомлениях хоста NetBIOS (то есть широковещательном обмене по порту 139), мы способны просматривать сведения этого хоста, что предаёт гласности его название и те службы, которые он предоставляет. Давайте этот пример более подробно.

В этом примере я настраиваю имеющийся фильтр отображения NetBIOS: browser.server_type.server == 1.

(Для настройки фильтра отображения, заполните выражение этого фильтра в верхней полосе главного окна Wireshark.)

Поскольку все устройства Microsoft NetBIOS периодически обновляются путём широковещательной отправки в сеть, а также поскольку через использование данного фильтра мы способны видеть из получаемого от отправляющего его устройства заголовок пакета что это сервер, это прекрасный способ составлять перечень всех серверов в нашей сетевой среде:

 

Рисунок 6.3


Широковещательный NetBIOS и что мы способны в нём прослушать

В своём предыдущем примере мы можем видеть, что у нас имеются серверы 172.16.1.30 и 192.168.203.204, помимо прочих. Кроме того, клик по 192.168.203.204 показывает нам что это контроллер домена, SQL сервер и источник времени. Это важные сетевые функции - атака на такой сервер, скорее всего вызовет значительные разрушения, а прослушивание того что входит в него и исходит от него снабдит нас гигантским объёмом сведений относительно имеющейся сетевой среды и сетевых пользователей.

В этом последнем примере, когда мы прослушиваем групповые пакеты в своей сетевой среде, мы применяли фильтр отображения Wireshark eth.dst [0:3] == 01:00:5e. Поэтому мы наблюдаем следующие пакеты:

 

Рисунок 6.4


Прослушивание группового обмена

Что мы можем усвоить из этих пакетов на данный момент:

  • В самом первом пакете (1) мы можем видеть пакет Hello OSPF (Open Shortest Path First, кратчайший маршрут открывается первым). Именно им маршрутизатор уведомляет о своём присутствии и общается с прочими находящимися здесь маршрутизаторами.

  • В своих следующих двух пакетах (2) мы можем наблюдать обновления CPHA (Checkpoint High Availability, высокой доступности контрольной точки). Именно ими межсетевой экран контрольной точки сообщает своему соседу по кластеру что он активен.

  • Идущими далее пакетами (3) являются уведомления VRRP (Virtual Router Redundancy Protocol, протокола избыточности виртуального маршрутизатора), в которых мы просматриваем те маршрутизаторы, которые отправляют обновления. Аналогично пакетами CPHA, эти маршрутизаторы уведомляют о своём существовании и доступности.

  • В (4) и (5) мы видим дополнительные пакеты CPHA и VRRP.

  • В самом последнем пакете (6) мы также можем обнаружить EIGRP (Enhanced Interior Gateway Routing Protocol, расширенный внутренний протокол маршрутизации), отправляющий в эту сеть обновления.

  • Теперь, из простого прослушивания своей сетевой среды, мы узнали какие протоколы исполняются в этой сети, мы знаем о некоторых имеющихся маршрутизаторах и нам известны их адреса.

Теперь давайте взглянем на те сведения, которые мы способны получать из обновлений маршрутизации:

 

Рисунок 6.5


Подробности пакета OSPF

Как мы можем видеть из Рисунка 6.5, погружение в имеющиеся пакеты снабжает нас дополнительной информацией. Например, когда мы рассматриваем свой пакет OSPF, мы можем просматривать значение IP адреса своего исходного маршрутизатора. По значению MAC адреса мы определяем его производителя (возможно, в маршрутизаторах этого производителя имеются ошибки/ бреши); мы способны видеть область маршрутизации, а именно, область данного OSPF 0.0.0.0 (когда мы отправляем поддельные обновления, мы будем отправлять их в эту область); мы обнаруживаем что наше сообщение Hello было отправлено по адресам в диапазоне подсети 255.255.255.240, то есть подсеть из 14 хостов (это 16 хостов в сумме минус самый первый и самый последний адреса).

Прослушивание по отдельному зеркальному устройству/ порту

Прослушивание в отдельном устройстве или применение зеркалирования порта для прослушивания в обособленном устройстве снабдит вас всеми необходимыми вам сведениями. Тут у вас имеются две функциональные возможности Wireshark, которые снабдят вас всей требующейся вам информацией. А именно, это пункты меню Statistics → Conversations и Statistics → Protocol Distribution, как вы это можете наблюдать на нашем следующем снимке экрана.

Рисунок 6.6 отображает простой образец того что мы способны получить простым перехватом по порту коммутатора:

 

Рисунок 6.6


Иерархия протокола

В данном примере мы пользуемся Statistics → Protocol Hierarchy для просмотра всех обсуждённых нами протоколами. Кликая правой кнопкой по конкретной строке в имеющейся иерархии протокола, а выбор Apply a filter → Selected покажет вам те пакеты, которые работают с этим протоколом.

Самый первый пример, с правой стороны (обведённый синим), отображает команды GET SNMP от 10.1.2.4; откуда мы заключаем, что 10.1.2.4 это система управления SNMP.

Второй пример, с правой стороны (обведённый красным), показывает инициированный 10.101.220.1 к 10.101.116.200 сеанс SIP; из чего мы делаем вывод, что 10.101.116.200 это сервер SIP.

Наш третий пример, с правой стороны (выделенный зелёным), демонстрирует (к примеру) запросы NTP от 10.175.90.160 к 204.152.184.72; а отсюда мы знаем, что 204.152.184.72 является сервером времени.

Теперь, когда мы обладаем солидным пониманием этого, мы можем начинать подключаться к серверам, атаковать их и многое иное.

Теперь давайте изучим один из основных типов атак на основании сетевой среды: атаки DOS/ DDOS и наводнения.

Атаки DoS/ DDoS и переполнение на основе сетевой среды

Общий способ, который в целом препятствует пользователям в доступе к ИТ ресурсам, а в особенности к сетевым ресурсам, это механизмы применения DOS/ DDOS. Основной принцип тут прост. Сетевым ресурсом может выступать сетевой устройство или линия взаимодействия. Загрузка такого ресурса до того момента, что именно это блокирование препятствует доступ к этому ресурсу пользователям. И это чрезвычайно просто понять и усвоить. Теперь основная задача в том как выполнить эту загрузку.

Существует два типа атак DoS/ DDoS, которые имеют целью сетевые ресурсы:

  • Объёмные атаки: Это те атаки, которые переполняют линии взаимодействия до того момента, когда они перестают обслуживать обмен пользователей.

  • Атаки протокола: Это атаки на сетевые протоколы, такие как ARP и DHCP. При атаках таких протоколов мы отключаем имеющуюся сеть чтобы она не работала- без устройств ARP нам будут не известны MAC адреса их получателей, а без DHCP они останутся без IP адреса.

Мы начнём со сканирования сетевой среды, что является одним из тех методов, при котором мы создаём объёмные атаки.

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

Для осуществления сканирований сетей у нас имеется множество средств и сценариев которыми мы можем пользоваться. Для Windows и Linux у нас имеется nmap, который мы уже обсуждали, Scapy Linux, Windows и Linux PacketSender и многие иные. Тем не менее, основной принцип один и тот же - грузить атакуемую сеть до того момента, когда она больше не обеспечивает службы взаимодействия.

Наводнение атаками сканирования

Потоп или наводнение это тип атак DoS/ DDoS при которых злоумышленник пытается непрерывно осуществлять обмен с целевой сетью, сетевым интерфейсом, линией взаимодействия или сервером чтобы препятствовать легитимным пользователям в его доступе к потреблению своих ресурсов. Существуют различные типы атак наводнением - примерами могут служить затопление ICMP, наводнение TCP и UDP, а также HTTP/ HTTPS потоп. Самым первым рассматриваемым нами типом наводнения является DDOS ICMP (Internet Control Message Protocol), когда червь ping блокирует атакуемую сеть.

 

Рисунок 6.7


Червь ping - сетевая среда и результат Wireshark

В Wireshark мы можем наблюдать (с левой стороны) множество пакетов ICMP, отправляемых с адресов сети 192.168.110.0/24 к различным получателям IP. С правой стороны мы способны видеть имеющуюся сетевую структуру: удалённые офисы с сетевыми средами 192.168.110.0/24, 192.168.111.0/24 вплоть до 192.168.149.0/24 при общем числе в 50 удалённых офисов.

Для идентификации этой проблемы мы можем открыть окно Statistics → Conversations. Давайте изучим его на следующем снимке экрана:

 

Рисунок 6.8


Результаты червя ping

С левой стороны мы можем просматривать хост 192.168.110.5. Он начинает своё сканирование с 192.170.3.0 (даже хотя это и не допустимый адрес), продолжает на 192.170.3.1, 192.170.3.2 пока не достигнет 192.170.3.255. После этого, в центре снимка экрана, он стартует с 192.170.4.0 к 192.170.4.1 и так далее. Именно это составляет ясный шаблон сканирования.

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

Забавный (или с точки зрения потребителя печальный) момент состоит в том, что когда ПК из сети 192.168.110.0/24 закончит сканирование в этой сети на 192.168.110.255, он продолжит с 192.168.111.0. Его ping пересылаются на шлюз по умолчанию, а по пути к своей следующей сети, этот ping блокирует саму линию от 192.168.110.0/0 к самому центру. Результат этого можно наблюдать на снимке экрана справа - имевшая 0.8 Mbps линия в центр теперь блокирована. Это типичный DDoS. В данной ситуации это тип атаки с усилением - этот червь распространяется по атакуемой сети для усиления своего поведения.

Наводнение выработкой произвольного обмена

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

В нашем следующем примере мы можем наблюдать что основная часть обмена состоит из пакетов IPv6. Как вы можете видеть, имеется очень большое число пакетов - вплоть до 20 000 пакетов в секунду - что указывает на массовое применение IPv6 или нечто подозрительное.

 

Рисунок 6.9


Массивный обмен IPv6

Рассматривая эти пакеты (что всегда рекомендуется), мы может видеть такой перехват:

 

Рисунок 6.10


Нестандартные пакеты IPv6

Здесь мы можем отметить несколько подозрительных моментов:

  • Прежде всего, используемые адреса IPv6 являются незарегистрированными адресами, причём это не адреса, которые предписаны стандартами IPv6.

  • Во- вторых, мы можем видеть некий Unknown IP Protocol (EGP), что применяется для указания на то, что этот тип протокола не известен.

  • В- третьих, в нижней части нашего экрана имеется проблема раскадровки, то есть IPv6 payload length exceeds framing length (длина полезной нагрузки IPv6 превосходит длину кадров), что также выступает неким указанием но то, что здесь нечто не так.

Когда мы открываем окно Conversations (из меню Statistics) и кликаем по закладке IPv6, всё становится ещё более странным. Давайте взглянем на следующий снимок экрана:

 

Рисунок 6.11


Нестандартные пакеты IPv6 - статистика

Здесь мы можем наблюдать наиболее типичный шаблон сканирования, а именно, все имеющиеся пакеты следуют в одном направлении - с адресов, которые начинаются с a:627 к тем адресам, которые начинаются с 0:3d1. Кроме того, мы можем видеть значения нестандартных адресов IPv6.

Генерация и защита против атак переполнения и DoS/ DDoS

В этом разделе мы изучим как вырабатываются атаки DoS/ DDoS. Мы делаем это с целью лучше разобраться с тем как работают эти механизмы с тем, чтобы мы были способны защититься от них.

 

Как производить атаки затопления и DoS/ DDoS

В Интернете имеется большое число средств, которые можно применять для загрузки атакуемой сетевой среды, включая такие распространённые инструменты как nmap (для Linux и Windows), приложение клиент- сервер iPerf/jPerf (для Linux и Windows) и Colasoft Packet Builder.

 

Как защищаться от атак затопления и DoS/ DDoS

Поскольку имеется большое число средств и методов для производства атак DoS/ DDoS, имеется несколько простых мер защиты от них:

  1. Во- первых, воспользуйтесь своей системой управления для выявления внезапного роста сетевого обмена.

  2. Настройте порты коммуникатора локальной сети для ограничения значения числа широковещательного и группового обмена (обычно это команда storm-control в распространённых сетевых операционных системах, таких как Cisco IOS, Juniper JuNOS и тому подобных).

  3. Воспользуйтесь средства анализа поведения для обнаружения необычных сетевых условий. Более подробно мы обсудим это в Главе 9, Применение анализа поведения и выявление аномалий.

  4. Пользуйтесь руководствами своих производителей по защите против DoS/ DDoS атак.

Давайте пройдёмся по всем сетевым уровням и изучим как защищаться от атак на каждом из них.

Атаки на основе L2

При атаках Уровня 2 мы имеем дело с атаками, которые вмешиваются в нормальные операции сетевых протоколов Уровня 2 OSI. Что касается этой категории, у нас имеются коммутации локальной сети, которые включают в себя изучение MAC, VLAN, STP/ RSTP, безопасность MAC и прочие атаки на функциональные возможности Уровня 2 атакуемой сети. Давайте изучим некоторые образцы и ознакомимся с тем как от них защищаться.

Наводнение MAC

Коммутаторы локальной сети содержат таблицу MAC, которая удерживает изученные этим коммутатором MAC адреса. В Главе 2, Структуры и операции сетевого протокола мы изучили тот способ, которым функционируют коммутаторы и мы раскрыли как коммутаторы локальной сети изучают подключённые к ним MAC адреса, причём передают кадры к только к тем MAC адресам получателей, которые физическим портам которых имеется подключение. Поскольку каждый коммутатор обладает ограничением в плане общего числа MAC адресов, которые он способен усвоить, когда его таблица MAC адресов заполнена, такой коммутатор потеряет способность добавлять в неё MAC адреса, а отправляемые в этот коммутатор кадры будут переправляться во все имеющиеся порты с тем, чтобы их были способны просматривать все.

 

Как производить

Для выработки атаки наводнения MAC у нас имеется ряд средств, которые мы можем применять в Windows и Kali Linux.

В Windows мы можем пользоваться таким инструментом как Colasoft Packet Generator, а в Linux вы можете применять macof, который является частью пакета dsniff.

Чтобы воспользоваться macof, выполните следующие шаги:

  1. Зарегистрируйтесь в своей машине Kali Linux.

  2. Для установки пакета dsniff выполните такую команду: sudo apt-get install dsniff.

  3. Чтобы произвести наводнение примените команду macof -s <Source-IP> -d <Destination-IP>.

  4. А если ваш источник обладает несколькими интерфейсами, также укажите и название используемого интерфейса: macof -s <Source-IP> -d <Destination-IP> -i <Source-Int-Name>.

  5. Например, чтобы воспользоваться ПК 10.0.0.22 из интерфейса источника eth0 для атаки на коммутатор 10.0.0.138, воспользуйтесь командой macof -s 10.0.0.22 -d 10.0.0.138 -i eth0.

  6. Получаемый результат можно просмотреть в Wireshark Statistics → Conversations.

На приводимом ниже снимке экрана можно просмотреть получаемые в результате такой атаки результаты:

 

Рисунок 6.12


Подделка адресов MAC

Взглянув на верхнее окно нашего предыдущего снимка экрана мы можем обнаружить очень короткие промежутки времени между поступающими пакетами. В середине снимка экрана имеется 24 269 пакетов между 10.0.0.22 и 10.0.0.138. Кроме того, мы можем наблюдать, что все эти пакеты направлены от A к B, а именно от A, в качестве которого выступает 10.0.0.22, к B, которым является 10.0.0.138. В нижней части снимка экрана мы видим случайные MAC адреса, что укрепляет нас в том предположении, что это не обычный обмен.

 

Как защищаться

Для защиты от имитации MAC адресов, вы можете предпринять ряд противодействий:

  1. Прежде всего для предотвращения какого бы то ни было злонамеренного доступа к своей сетевой среде применяйте систему NAC (network access controller, контроллера доступа к сети).

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

  3. Настройте свой коммутатор на отправку предупреждения в вашу систему управления в том случае, когда внезапно возрастает загруженность интерфейса или размер таблицы MAC адресов.

В своём следующем разделе мы изучим атаки протокола связующего дерева (STP, Spanning Tree Protocol) и ознакомимся с тем как защищаться от них.

Атаки STP, RSTP и MST

Как мы обсуждали в Главе 2, Структуры и операции сетевого протокола, для STP имеется три типа потенциальных атак:

  • Атаки с ролью корня: При ней выполняется подключение к сетевой среде коммутатора с наинизшим приоритетом чтобы он стал корнем всей сетевой среды. Этот тип атаки может применяться для достижения двух целей: первая просто приводит к крушению данной сетевой среды, а вторая состоит в превращении в корень с тем, чтобы весь обмен переправлялся через нас, например, для его прослушивания. Такой второй тип атак носит название атак MITM (Man- in- the- Middle, с человеком в промежутке).

  • Атаки TCN (Topology Change Notification, оповещений об изменении топологии): Эти атаки применяются для сокращения времени жизни MAC таблицы с 300 секунд до 15, что вызывает удаление изученных MAC адресов и, тем самым, всякий раз наполняя вашу сеть отправляемыми к неизвестным MAC адресам кадров.

  • Потоп BPDU: При данном типе атак мы просто пытаемся перегрузить ЦПУ атакуемого коммутатора, отправляя в этот коммутатор большое число BPDU (Bridge Protocol Data Unit, блоков данных протокола моста), вызывая замедление его работы до того момента, когда он начинает терять обмен. Их можно относить к атакам типа DDoS.

Давайте изучим как вырабатывать такие атаки с тем, чтобы мы смогли получше разобраться с тем как от них защищаться.

 

Как производить

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

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

Зная структуру протоколов STP (STP, RSTP и MST), вы можете применять такие средства как Colasoft Packet Builder (для Windows), выгружая имеющийся файл перехвата STP (в интернете их великой множество; просто погуглите STP .pcap и вы обнаружите немало их). На нашем следующем снимке экрана вы можете видеть окно Packet Builder:

 

Рисунок 6.13


Построитель пакетов Colasoft

Имейте в виду, что в Linux вы можете применять различные средства построения вручную пакетов, такие как Scapy, packETH и многие прочие.

 

Как защищаться

Для защиты от атак протоколов STP выполните следующие мероприятия:

  • Настройте функциональную возможность охранника BPDU в портах коммутатора, которые не подключаются к известным коммутаторам.

  • Для защиты от злонамеренных подключений к вашей сети пользуйтесь системой NAC (network access controller, контроллера доступа к сети)/

В любом случае ознакомьтесь с руководством своего производителя в отношении упрочнения своего устройства.

Давайте поднимемся вверх к IP и ознакомимся и разберёмся с тем как выполнять в нём атаки и как от них защищаться.

Атаки L3 и на основе ARP

В этом разделе мы обсудим атаки ARP и IP, давайте начнём с отравления ARP, которое также именуется подделкой ARP.

Отравление ARP

ARP это протокол, который осуществляет разрешение адресов MAC получателей из IP адресов назначения. Обратим ваше внимание на то, что мы обсуждали это в Главе 2, Структуры и операции сетевого протокола.

Отравление ARP (также носящее название подделки ARP) это тот тип атак, в который вовлечена вредоносная отправка пакетов ARP в шлюз по умолчанию локальной сети для изменения таблицы ARP этого шлюза.

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

Раз установленный по умолчанию шлюз изменил свой кэш ARP фальшивой записью MAC, весь отправляемый находящемуся под атакой хосту обмен путешествует через компьютер злоумышленника, что делает возможным этому злоумышленнику осматривать или изменять их прежде чем переправлять их реальному получателю.

Отравление ARP может применяться как атака DoS, препятствуя находящемуся под атакой хосту в получении пакетов. Также она может применяться как атака MITM, при которой мы обретаем отправляемые атакуемому хосту сведения и лишь затем отправляем их ему. Это далее может применяться для взлома сеанса, что вызывает открытие сеансов злоумышленнику вместо атакуемого хоста.

На нашей следующей схеме мы можем наблюдать образец отравления ARP:

 

Рисунок 6.14


Отравление ARP

Давайте взглянем на приведённый пример. Наш первый шаг, это когда, как при обычной операции, Алиса хочет взаимодействовать с Бобом. С адреса 192.168.1.1 Алиса отправляет запрос ARP для нахождения MAC адреса Боба, а именно MAC адреса 192.168.1.103. Это широковещательное сообщение заполняет все порты её коммутатора. Мы можем наблюдать это в пакете номер 5 своего файла перехвата Wireshark.

Как злоумышленник (Труди), так и атакуемый хост (Боб) отправляют отклики на данный запрос ARP. Отклик Труди находится в перехваченном пакете 6, а отклик Боба в перехваченном пакете 7.

Теперь, основной вопрос состоит в том, что произойдёт когда Алиса получит два отклика ARP - первый это 192.168.1.103, который имеет MAC адрес 00:d0:59:12:9b:02, а второй обладает MAC адресом 00:d0:59:aa:af:80. Собственно вопрос состоит в том, будут ли все пакеты отправляться к одному изученному или к обоим, зависит от используемой операционной системы.

В Wireshark вы будете наблюдать уведомление о дублировании IP адреса, поскольку Wireshark видит один и тот же IP (192.168.1.103) с двумя MAC адресами - реальным и поддельным.

Давайте изучим как вырабатывать потраву ARP и получим хорошее понимание как это происходит.

 

Как производить

У вас имеется ряд средств для выработки фальшивых откликов ARP.

Для Linux вы можете воспользоваться командой arpspoof из /usr/sbin.

Формат этой команды таков:


arpspoof -i  -t <device-under-attack> -r <gateway>
 	   

Например, рассмотрим следующее:


arpspoof -i eth0 -t 10.0.0.6 -r 10.0.0.138
		

Для Windows вы можете применять такие построители пакетов, как Colasoft.

 

Как защищаться

Поскольку отравление ARP это атака на основе локальной сети (ARP работает либо в отдельной локальной сети, либо в VLAN), прежде всего, вам необходимо пользоваться системой NAC с тем, чтобы пользователи - злоумышленники не были бы способны получать доступ к вашей локальной сети. Тем не менее, Это лишь частичное решение, причём оно не спасёт когда атака приходит из вашей внутренней сети, как это имеет место при большинстве атак, при которых заражено некое внутреннее устройство и оно производит атаки на ту сеть, к которой оно подключено.

По этой причине, второй шаг, который следует предпринять состоит в настройке вашего маршрутизатора на ограничение по скорости (Rate Limiting) пакетов ARP. Это распространённая функциональная возможность во всяком маршрутизаторе с известной торговой маркой и обычно она носит название DAI (Dynamic ARPInspection).

Теперь давайте взглянем на DHCP и то, как он может быть скомпрометирован.

Истощение DHCP

Как вы можете осознать из самого названия, атака истощения DHCP, это когда мы производим большое число запросов DHCP с поддельными MAC адресами с тем, чтобы в конечном счёте больше не было бы адресов IP, доступных для выделения с целью придания правомочности устройства; тем самым, ваша сеть превращается в недоступную пользователям.

Атака истощением DHCP работает посредством широковещательных запросов DHCP с поддельными MAC адресами. В Интернете имеется множество средств, которые позволяют вам отправлять кадры такого вида. Такой вид атак может быть продолжен злоумышленником через установку своего собственного сервера DHCP, откликающимся на запросы клиента за IP адресами, что в результате приводит к отправке данных злоумышленнику и компрометации данных компании.

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

 

Как производить

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

Простое и дружелюбное средство, применяемое для данной цели это yersinia Kali Linux. Вы можете применять его для выработки запросов DHCP или как мошеннический сервер:

  1. Для установки yersinia воспользуйтесь командой sudo apt-get install yersinia.

  2. Данная команда будет установлена в /usr/bin.

  3. Для графических приложений воспользуйтесь yersinia -G.

Далее давайте взглянем на то, как мы можем защищаться против такой атаки.

 

Как защищаться

Для защиты от DHCP атак воспользуйтесь следующими мероприятиями:

  • Пользуйтесь NAC и препятствуйте доступу к своей сети злоумышленникам.

  • Настройте свой сервер DHCP на отклики только на запросы DHCP, поступающие от уполномоченных MAC адресов (следует настраивать совместно с NAC вашей организации).

В данном разделе мы изучили атаки из сети, причём от атак Уровня 2 до атак Уровня 3. Кроме того, мы ознакомились с тем как производить такие атаки и как от них защищаться.

Выводы

В данной главе мы обсудили атаки на основе сети, то есть те атаки, которые имеют целью сетевые ресурсы для препятствия их применению в вашей сетевой среде.

Мы ознакомились с двумя основными типами атак - теми, которые просто нагружают вашу сеть вплоть до того момента, когда пользователи теряют способность ей использования, а также атаки на основе сетевых протоколов, которые нацелены на сетевые функциональные возможности, например, ARP и DHCP, с попыткой воспрепятствовать работе самой сети.

В этой главе вы изучили как применять средства выработки обмена и инструменты, которые применяются для производства атак в протоколах Уровня 2 и Уровня 3. Кроме того, вы ознакомились с тем как защищаться от них.

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

Вопросы

  1. Мы подключили свой ноутбук с Wireshark к локальной сети и не видим никакого широковещательного обмена. В чём проблема?

    1. Нет никаких проблем. Эта сеть прекрасно работает и нет никакого способа её взлома.

    2. Мы в некой особой VLAN, а следовательно, мы не видим никакого широковещательного обмена.

    3. Это невозможно; широковещательный обмен присутствует в любой сети.

    4. Обмен зашифрован, а следовательно мы и не наблюдаем широковещательного обмена.

  2. Как лучше всего защищаться от атак DoS/ DDoS?

    1. Имеется множество средств. Приспосабливайте эти средства к имеющимся рискам.

    2. Настройте пределы на широковещательный обмен для всех портов в имеющихся сетевых устройствах.

    3. Применяйте системы NAC.

    4. Применяйте безопасность порта и ограничивайте доступ пользователей к своей сети.

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

    1. Вы подключите к этой сети Wireshark и рассмотрите необычные шаблоны обмена - например, неопознанные источники, слишком большой обмен от определённых источников и прочее.

    2. Вы рассмотрите топологию STP/RTSP/MST и попытаетесь выявить неизвестные коммутаторы и корневые коммутаторы.

    3. Вы выполните ping к имеющимся серверам, воспользуетесь arp -a и примените трассировщики и прочие средства для поиска странного поведения в своей сетевой среде.

    4. Вы пораскинете мозгами, обдумаете всё и воспользуетесь необходимыми инструментами для раскрытия имеющейся проблемы.

  4. Что представляет собой атака имитацией соединения (spoofing)?

    1. Когда вредоносные устройство или программное обеспечение выдают себя за другое устройство с целью обхода сетевой защиты.

    2. Тип атаки, которая применяется в средствах сетевого сканирования для взлома сетевой среды.

    3. Определённый имеющий целью сеть инструмент, который применяется для переполнения сети обменом.

    4. Средство сетевой разведки для выявления необычного поведения сетевых устройств и хостов.

  5. Мы подключили свой ноутбук к сети, запустили Wireshark и наблюдаем большое число запросов ICMP и ARP. Почему это может быть проблемой?

    1. Это типичное сканирование; нам надлежит выявить и изолировать источник и немедленно отключить его.

    2. Это может быть обусловлено сканированием, отравлением ARP, истощением DHCP или иной атакой, а потому нам следует выявить и изолировать источник и немедленно отключить его.

    3. Это может быть проблемой, а может быть и допустимым обменом, например, программным обеспечением управления, которое выполняет механизм обнаружения.

    4. Это не проблема; во всякой сети имеются сканирования, а потому это часть обычной сетевой работы.