Часть III: Сетевые протоколы - как атаковать и как защищаться

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

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

Глава 10. Выявление атак LAN на основе IP и TCP/ UDP

Содержание

Глава 10. Выявление атак LAN на основе IP и TCP/ UDP
Атаки Уровня 2 - как их производить и как от них защищаться
Атаки механизма выявления коммутации
Поддельные MAC адреса - один MAC адрес
Поддельные MAC адреса - множество MAC адресов
Атаки CDP/LLDP
Атаки на механизм VLAN и переполнение VLAN
Атаки на основе ICMP, сканирования ping, убивающий ping, а также DDoS L3
Сканирования ping и DDoS L3
Сканирования ping, применяемые для обнаружения сети
Атака DDoS ping
Убивающий ping и испорченные пакеты
Фрагментация IP и атаки teardrop
Атаки TCP и UDP Уровня 4
Атаки наводнением UDP
Атаки наводнением SYN, а также скрытого сканирования и контрмеры
Как производить TCP атаки SYN
Как выявлять TCP атаки SYN
Как защищаться от TCP атак SYN
Атаки TCP RST (reset) и FIN
Как производить TCP атаки RST и FIN
Как выявлять TCP атаки RST и FIN и защищаться от них
Атаки сочетания различных флагов TCP
Как производить TCP атаки сочетания флагов
Как выявлять TCP атаки сочетания флагов
Как защищаться от TCP атаки флагов
Атаки последовательности TCP и атаки угона сеанса
Выводы
Вопросы

LAN (Local Area Networks, локальные сети), протоколы Ethernet и сетевая коммутация применяются для реализации Уровней 1 и 2 и переноса сведений между узлами, которые непосредственно подключены к такой локальной сети. IP (Internet Protocol) предоставляет адресацию и допускает протоколы маршрутизации для продвижения пакетов между оконечными узлами - именно это составляет Уровень 3. TCP и (Transport Control Protocol) и UDP (User Datagram Protocol) это основные протоколы на Уровне 4, которые обеспечивают соединение между конечными процессами - скажем, между клиентом и сервером. Дополнительно к этому имеется ряд прочих протоколов, которые содействуют надлежащим операциям сетевой среды; помимо прочих, это ARP (Address Resolution Protocol), который разрешает адрес MAC (Media Access Control) получателя из IP назначения, а также DHCP (Dynamic Host Configuration Protocol), который автоматически выделяет некий IP адрес, маску подсети и прочие параметры оконечным узлам и прочим протоколам, без которых наша сетевая среда не работала бы.

Порча операций одного из этих протоколов может быть осуществлено по каждому из имеющихся сетевых уровней. Некоторые такие образцы включают в себя Уровни 1 и 2 посредством загрузки самой сети до момента когда она перестаёт работать: на Уровне 3 приводящие к голоданию работающих на нём серверов DHCP атаки с истощением адресов, которые они были бы способны выделять узлам; а на Уровне 5, блокируя порты TCP (Transmissio n Control Protocol) и UDP серверов, которые применяются для подключения к серверам.

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

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

  • Атаки Уровня 2 - как их производить и как от них защищаться

  • Основанные на IP- и ICMP (Internet Control Message Protocol) атаки, атаки слёз (teardrops), сканирования ping, ping смерти и DDoS *Distributed Denial of Service)

  • Атаки фрагментации IP

  • Глубокое погружение в структуру данных и поведение протокола UDP и TCP

  • Наполнение SYN и скрытое сканирование, а также противодействие им

  • Атаки RST (reset) и FIN (finish) и противодействие

  • Атаки последовательного TCP и атаки взлома сеанса

Атаки Уровня 2 - как их производить и как от них защищаться

Уровень 2 это тот уровень, на котором передаются и подвергаются дальнейшему делению на кадры данных фрагменты IP с Уровня 3 для заполнения таких подробностей как MAC адреса, а после этого эти кадры переносятся на Уровень 1, которые затем проводят эти данные в формате 10101 через линии соединения. В разделе Протоколы Уровня 2 - STP, VLAN и методы безопасности из Главы 2, Структуры и операции сетевого протокола мы обсуждали как работают локальные сети и мы упоминали те типы атак, которые могут осуществляться. Подразделяя эти атаки на категории, мы говорили о следующем:

  • Атаках на механизм коммутации и обнаружения

  • Атаках на механизм VLAN Virtual LAN и затоплении VLAN

  • Широковещательных штормах и атаках на протоколы связующего дерева и механизмах предотвращения зацикливания

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

Атаки механизма выявления коммутации

Существуют различные виды атак , которые могут осуществляться на сам коммутатор. Мы поговорим о поддельных MAC адресах, атаках CDP (Cisco Discovery Protocol)/ LLDP (Link Layer Discovery Protocol) и затопление MAC, которое также носит название переполнение таблицы CAM (Content Addressable Memory).

 

Поддельные MAC адреса - один MAC адрес

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

Слева мы можем видеть её логическую структуру: некий кластер из двух межсетевых экранов контрольной точки с пятью подключёнными к нему VLAN - VLAN30 с серверами штаб-квартиры - HQ, Headquarter), VLAN168 для рабочих станций HQ, VLAN20 с маршрутизаторами для соединения с удалёнными офисами, VLAN25 для DMZ и VLAN82 с подключениями к Интернету.

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

 

Рисунок 10.1


Сеть под атакой

Чтобы посмотреть как мы можем планировать свою атаку, давайте рассмотрим имеющуюся таблицу MAC адресов. Эта таблица MAC адресов, порой именуемая как CAM, это таблица, в которой коммутаторы локальной сети хранят MAC адреса, которые они изучили у подключённых к ним устройств. На Рисунке 10.2 мы можем наблюдать частичную таблицу CAM коммутатора с номером два из нашего образца сети (SW2). Чтобы увидеть эту таблицу MAC адресов, наберите команду show mac address-tableCisco), команду show ethernet-switching tableJuniper), команду display mac-addressHPE - Hewlett Packet Enterprise) и так далее:

 

Рисунок 10.2


Пример таблицы MAC адресов

В этом примере мы можем наблюдать частичный вывод команды show mac address-table. Например, мы можем увидеть MAC адрес 4cbd:8f12:cdbc and d4c9:ef:ee:f6dc, который подключён к порту Gigabit0/16 (это два подключённых к коммутатору MAC адреса, соединённые с ним) и так далее, 0008:9bfe:e6ee подключён к к порту Gigabit0/12 и так далее. Порт Po1 это канал порта - то есть несколько соединённых в транк портов между двумя коммутаторами (в нашем случае два порта).

Подделать MAC адрес просто. Мы видим, что VLAN168 это виртуальная сеть рабочих станций пользователей, а потому подключённые к портам Gi0/11 и Gi0/13 MAC адреса устройств пользователей. Для подделки MAC адреса пользователя и перенаправления предназначенного для него обмена злоумышленнику, мы можем просто отправлять кадры со значением MAC адреса пребывающего под атакой устройства.

Давайте рассмотрим пример того как подделать MAC адрес , который подключён к порту Gi0/11 - то есть MAC адрес 001c:7fa0:6dda. Для осуществления этого, например, мы можем воспользоваться Colasoft Packet Builder и заполнить значение MAC адреса находящегося под атакой устройства для значения MAC источника вырабатываемых пакетов. Мы можем наблюдать это на Рисунке 10.3:

 

Рисунок 10.3


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

Вставка значения MAC адреса находящегося под атакой устройства в поля Ethernet | Source Address принудит коммутатор локальной сети для его изучения по другому порту. Вставка IP адреса источника пребывающего под атакой устройства в Internet Protocol | Source Address вызовет получение вами этого пакета.

Работа с Colasoft Packet Builder это то, что мы рассматривали в ряде мест в предыдущих главах, например, в разделе Атаки на основе L2 из Главы 6, Поиск атак на основе сетевой среды.

 

Поддельные MAC адреса - множество MAC адресов

Для выработки произвольных MAC адресов воспользуемся командой Kali Linux macof: macof -i <interface-name>; – например, macof -i eth0.

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

Для выработки кадров, которые распространятся по всей сетевой среде Уровня 2 (L2) целиком, вам придётся воспользоваться MAC получателя, целиком заполненного буквой f - то есть, ff:ff:ff:ff:ff:ff,а командой macof будет команда macof -i <interfacename> -e <destination-mac-address> - скажем, macof -i eth0 -e ff:ff:ff:ff:ff:ff.

В таком случае мы затопим всю сеть L2 целиком. Чтобы противостоять затоплению MAC, выполните следующее:

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

  • Для Juniper Networks применяйте функциональность MAC limiting. Дополнительно о ней можно узнать в документации.

 

Атаки CDP/LLDP

LLDP и его предшественник, CDP, применяются сетевыми устройствами, как правило коммутаторами локальной сети, для оповещения об их возможностей подключения к соседям. На Рисунке 10.4 мы можем наблюдать пример кадра LLDP:

 

Рисунок 10.4


Кадр LLDP

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

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

Вы можете спросить, раз это коммутатор, как дело доходит также и до маршрутизатора, точки доступа и/ или IP телефона? Ответ прост. Многие устройства, обладающие более высоким уровнем возможностей, обладают некоторыми физическими портами, которые работают как коммутатор. Это может быть беспроводная точка доступа или некий IP телефон с двумя портами локальной сети, или же маршрутизатор с несколькими интерфейсами.

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

Для атаки устройств LLDP сделайте следующее:

  1. Воспользуйтесь Wireshark для записи пакетов LLDP (CDP в Cisco) из сетевых устройств. Мы применим файл перехвата из примера на Рисунке 10.4.

  2. Воспользуйтесь генератором пакетов - например, Colasoft Packet Builder - и загрузите перехваченные пакеты. Если вы применяете Colasoft Packet Builder, для выгрузки необходимого файла употребите команду Import из меню File.

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

  4. Выберите тот адаптер, с которого вы хотите передавать эти пакеты. Вы можете наблюдать это на приводимом ниже рисунке:

     

    Рисунок 10.5


    Выбор адаптера для отправки пакетов

  5. Для отправки одного пакета кликните Send или же Send All для отправки всех пакетов и в открывшемся окне выберите Burst Mode или Loop Sending с временными интервалами, как вы можете это видеть из Рисунка 10.6:

     

    Рисунок 10.6


    Выбор адаптера для отправки пакетов

Существуют различные мероприятия, которые следует принимать во внимание для защиты своей сетевой среды от атак LLDP/CDP:

  • Когда они не требуются, отключайте LLDP/CDP в своём коммутаторе локальной сети.

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

  • Дополнительно к предыдущему мероприятию, вы можете настроить какие именно параметры считывать из обновлений LLDP. В Cisco вы можете выполнять это командой lldp tlv-select (config mode), из Juniper tlv-select or tlv-filter и так далее.

Type, Length, and Value (TLV) это распространённый термин для взаимодействия данных. Он указывает тип параметра, величину длины параметра и собственно значение параметра. Например, если мы взглянем на Рисунок 10.7, мы можем обнаружить различные TLV:

 

Рисунок 10.7


TLV

Здесь мы наблюдаем:

  • Первым TLV являются тип 0000 011, 3 в десятичном исчислении и 0 0000 0010 по длине, что является десятичным 2, чтобы обозначить корректным значением длины 2 байта. Само значение это 121.

  • Второй TLV это тип 0000 100, десятичное 4 и 0 0011 0111 по длине, что является десятичным 55 для обозначения 55 байт в длину. Собственно значение представляет поле текста с названием данного интерфейса.

В LLDP поле Type составляет 7 бит, а поле Length это 9 бит. Эти длины могут быть иными в прочих протоколах.

Атаки на механизм VLAN и переполнение VLAN

Существуют различные способы атак коммутации виртуальных локальных сетей. Самый первый и самый простой состоит в атаки переполнением MAC при которой мы заполняем до отказа имеющуюся таблицу CAM своего коммутатора VLAN с тем, чтобы этот коммутатор не был способен изучать новые и реальные MAC адреса. Мы обсуждали данную атаку в Главе 6, Поиск атак на основе сетевой среды, в разделе Атаки на основе L2.

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

Коммутатор может работать в различных состояниях:

  • Режиме доступа - в этом режиме подключённый порт коммутатора настраивается для участия в единственной VLAN. Команда настройки этого режима это switchport mode access для Cisco, interface-mode access для Juniper и port link-type access для HPE.

  • Режим транка - в этом состоянии данный порт используется множеством VLAN. Обычно этот режим применяется между коммутаторами или между коммутатором и иным сетевым устройством. Командой конфигурации для данного режима выступает switchport mode trunk для Cisco, interface-mode trunk для Juniper и port link-type trunk для HPE.

  • Автоматические режимы - для данного режима соответствующий порт настраивается для самостоятельного регулирования своей конфигурации. В Cisco, например, мы имеем switchport mode dynamic desirable или switchport mode dynamic auto; в обоих случаях настраиваемый порт превращается в транк самими конкретными условиями того порта, к которому он подключён.

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

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

Та точка, которая отправляет поддельные пакеты в коммутатор, обязана применять для изменения в этом коммутаторе используемые им протоколы. Мы можем видеть это из Рисунка 10.8:

 

Рисунок 10.8


Скачки DTP и VLAN

Как мы можем наблюдать на этом рисунке, прежде чем отправлять в соответствующий коммутатор поддельные кадры DTP (Dynamic Trunking Protocol), наш ноутбук подключается к стандартному порту, который настраивается на один из упоминавшихся нами ранее динамических режимов. В данных обстоятельствах, когда из имеющихся в данной сети шестого ПК отправляется широковещательный пакет, он его не достигнет.

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

DTP это частный протокол Cisco, который не был стандартизован. Аналогичным протоколом является LNP (Link-type Negotiation Protocol Huawei) и существует большое число производителей, которые не поддерживают данную функциональность.

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

 

Рисунок 10.9


Кадр DTP

Для осуществления атаки скачка VLAN мы можем применять перехваченный кадр DTP (собранный предыдущими перехватами или выгруженный из образцов в Интернете), изменить Trunk Status и Trunk Type и попробовать получать сведения от самого коммутатора.

Для защиты от атак скачка VLAN применяйте самое простое правило для данной книги - не выполняйте автоматическое согласование и не позволяйте своему коммутатору принимать решения. Для каждого из портов настройте фиксированную роль - это должен быть либо порт access (доступа), либо trunk (магистральный порт).

Теперь давайте проследуем на уровень выше к Уровню 3 OSI (Open Systems Interconnection) и обсудим различные атаки на основе ICMP.

Атаки на основе ICMP, сканирования ping, убивающий ping, а также DDoS L3

Атаки на основе IP это сосредоточенные на Уровне 3 атаки, которые все связаны с IP адресацией. Сосредоточенные на кэше ARP сетевых устройств атаки на основе ARP обычно для взлома сквозных сеансов подделывая значения адресов целей такой атаки. Мы обсуждали эти два вида атак в разделе Атаки L3 и на основе ARP из Главы 6, Поиск атак на основе сетевой среды.

В данном разделе мы обсудим следующие атаки:

  • Сканирования ping и DDoS Уровня 3

  • Ping смерти и испорченные пакеты

Давайте перейдём к деталям.

Сканирования ping и DDoS L3

Сканирования ping могут применяться для двух целей:

  • Для сетевого обнаружения, чтобы определять потенциальные жертвы

  • В качестве DDoS атак, применяя пакеты ICMP для блокирования сетевой среды или для загрузки сетевых устройств

 

Сканирования ping, применяемые для обнаружения сети

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

 

Рисунок 10.10


Сканирование ARP

После сканирования ARP, наш сканер - в данном случае, фрагмент программного обеспечения с названием Angry IP Scanner - начнёт отправлять запросы ICMP и потенциально получать от обнаруженных устройств ICMP отклики.

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

Может так случиться, что имеется отклик на запрос ARP, однако нет на запрос ICMP - это обычно происходит по той причине, что ICMP блокируется межсетевым экраном на вашем оконечном устройстве, в то время как ARP всё ещё откликается.

На Рисунке 10.11 мы можем наблюдать статистические значения - таблицу Conversations из Wireshark. Слева мы можем видеть, что 192.168.1.136 отправляет ping устройствам, которые откликаются на запрос ARP. Справа мы обнаруживаем, три отправленных нами пакета ICMP определённому получателю, в то время как 192.168.1.142 не отвечает (помечено 1), а все прочие откликаются (2, 3, 4 и 5):

 

Рисунок 10.11


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

Единственный момент, который нам надлежит знать, так это то, кто является отправителем - например, система управления, которая пользуется ping обнаружения, а не нарушитель, который сканирует вашу сетевую среду на предмет обнаружения уязвимостей.

Давайте рассмотрим второй тип сканирования ping, а именно, когда оно применяется для DDoS.

 

Атака DDoS ping

Как мы уже изучали ранее, DDoS это тот тип атак, который препятствует пользователям в доступе к сетевой среде или к тем службам, к которым они подключены. При отправке в больших количествах ping способны осуществлять такое. Давайте взглянем на Рисунок 10.12:

 

Рисунок 10.12


Пример червя ping

В окне пакетов мы можем наблюдать шаблон сканирования 192.168.110.57- завершает сканирование диапазона адресов 192.168.8.0-255 и приступает к сканированию адресного пространства 192.168.9.0-255. С правой стороны графика Wireshark мы можем видеть прямую линию, указывающую на фиксированное потребление полосы пропускания 800 000 бит в секунду. Зная, что эта линия являет собой уровень в 800 000 бит в секунду и нет никакого иного отправляемого обмена, подводит нас к тому заключению, что эта линия взаимодействия блокирована.

Убивающий ping и испорченные пакеты

Ping смерти это достаточно древний тип DDoS атак. Большинство производимых с начала 200-х годов систем защищены от него по умолчанию. Основной принцип тут достаточно прост - злоумышленник отправляет пакеты ICMP больше допустимого максимального значения размера пакета, 65 535 байт, при которых зависают некоторые старые основанные на TCP/IP протоколах системы, не разработанные с поддержкой обработки подобного, что превращает их в уязвимые для пакетов с превышающим данное значение размером.

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

При применении старых и медленных устройств ping также способен замедлять серверы до момента полного прекращения ими работы, даже в случае обычной работы и нет необходимости в атаках. Это происходит когда приложение отправителя посылает большие пакеты TCP или UDP, которые проваливаются на уровень IP, где они разбиваются фрагментами на несколько кадров Ethernet меньшего размера в 1 514 байт. Когда получателем является старое или медленное устройство, это в одиночку способно вызывать крушение.

В своём следующем разделе мы рассмотрим ряд атак, относящихся к фрагментации.

Фрагментация IP и атаки teardrop

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

При атаках teardrop (слёз), мы отправляем фрагменты с неправильными значениями в их заголовках IP, что приводит к крушениям старых стеков TCP/IP. Этот тип атак не является распространённым, а основные операционные системы, начиная с ранних 2000-х защищены от неё.

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

  • Простая команда ping с параметром -l <число байт> для отправки своему получателю больших пакетов ICMP.

  • Такие инструменты как Colasoft Packet Builder, в которых мы имеем возможность создавать свои собственные пакеты и отправлять их.

  • Любой инструментарий выработки пакетов, такой как iPerf, JPerf, Nmap и любое иное средство, которое обладает возможностью выработки больших пакетов TCP, UDP или IP.

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

Атаки TCP и UDP Уровня 4

В разделе Протоколы Уровня 4 - UDP, TCP, and QUIC из Главы 2, Структуры и операции сетевого протокола мы обсуждали TCP и UDP. В данном разделе мы углубимся в подробности протокола и изучим потенциальные атаки и как от них защищаться.

Мы изучим различные типы сканирований - сканирования SYN, сканирования ACK, сканирования reset, сканирования Windows и тому подобные. В основном мы будем пользоваться инструментом Nmap, доступном в CLI (Command-line Interface, интерфейсе командной строки) и графических реализациях для Windows и Linux.

Атаки наводнением UDP

Как мы уже наблюдали в разделе Протоколы Уровня 4 - UDP, TCP, and QUIC из Главы 2, Структуры и операции сетевого протокола, UDP это достаточно простой протокол с элементарным заголовком - порт источника, порт получателя, длина сообщения и контрольная сумма сообщения.

Раз так, имеется простая атака, которая может быть осуществлена при помощи UDP, причём с простым мероприятием, которое мы можем предпринимать против неё. Вы можете воспользоваться несколькими базовыми атаками UDP:

  • nmap -sU <target-device> для сканирования UDP с целью определения открытого порта в соответствующем устройстве мишени.

  • Средства переполнения, такие как Colasoft Packet Builder, для произведения обмена.

Для защиты от атак на основе UDP мы пользуемся стандартными командами установки предела и межсетевыми экранами для разрешения лишь допустимых служб поверх UDP (как правило, DNS - Domain Name System и SIP - Session Initiation Protocol / RTP - Real-Time Transport Protocol).

Атаки наводнением SYN, а также скрытого сканирования и контрмеры

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

 

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

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

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

На нашем следующем рисунке вы можете обнаружить как команда nmap используется для наводнения SYN коммутатора серии Cisco Catalyst 2960 с применением команды nmap -sS -T5 -v 172.30.0.241 tee, разбиваемой далее следующим образом:

  • -sS - применяется для сканирования SYN

  • -T5 - агрессивный шаблон времени (0-5, где 0 это самая низкая скорость, а 5 наивысшая)

  • -v - режим с подробностями:

 

Рисунок 10.13


Настройка Nmap на сканирование SYN

Мы производим 12695 пакетов SYN TCP за 3.55 секунды, обнаруживая открытые порты 22, 23, 80 и 443. На своём следующем рисунке мы можем наблюдать полученный результат на находящемся под сканированием коммутаторе:

 

Рисунок 10.14


Влияние атаки SYN на ЦПУ коммутатора локальной сети

Мы видим, что применение ЦПУ возросло до 60% во время нашей атаки - то есть, за несколько секунд. Когда имеется большое число атак, причём в отсутствии правильной защиты, это запросто может привести к крушению такого коммутатора или прочего пребывающего под атакой оборудования взаимодействия.

Для производства атаки SYN TCP мы можем воспользоваться командой hping3 Kali Linux. Давайте посмотрим как это осуществлять.

Прежде всего установим hping3:

  1. Выполним в Kali Linux замену режим на суперпользовательский:

    
    $ sudo su
    		
  2. Установим hping3:

    
    # sudo apt-get install hping3
    		
  3. Воспользуемся такой командой:

    
    hping3 -c <number of packets to send> -d <packet size> -S -w <TCP Window Size> -p <destination port number> --flood --rand-source <attacked address>
    		

На следующем Рисунке 10.15 вы наблюдаете такой пример:

 

Рисунок 10.15


Команда hping

В этой команде мы отправляем 5 000 пакетов (-c 5000) с размером 128 байт (-d 128) каждый, причём с включённым флагом SYN (-S) и с размером окна TCP, составляющим 128 байт (-w 128). Для направления своей атаки на атакуемый веб сервер мы определяем порт 80 (-p 80) и для отправки пакетов с агрессивной скоростью применяем флаг --flood. Наш флаг --rand-source производит случайные IP адреса для сокрытия реального источника, во избежание выявления и предотвращения пакетов отклика SYN-ACK жертвы для достижения ими обратно злоумышленника.

 

Как выявлять TCP атаки SYN

Выявление атак TCP может осуществляться различными способами, в зависимости от жёсткости такой атаки. Прежде всего, мы можем воспользоваться Wireshark или иным средством обнаружения пакетов. Имейте в виду, что существует разница между сканированиями SYN и атаками SYN. Сканирования SYN запускаются для различных портов назначения TCP в попытке обнаружения открытого порта, в то время как атаки SYN имеют мишенью конкретное оконечное устройство при помощи SYN TCP, пробуя привести его к крушению. Блокирование сканирований TCP это основная функциональная возможность, которая охватывается конфигурацией по умолчанию межсетевого экрана, в то время как защита от атаки SYN TCP покрывается механизмами выявления внедрения и обычно подлежит активированию лишь в случае атаки.

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

 

Рисунок 10.16


Результаты команды hping в Wireshark

В своём файле перехвата мы можем видеть захват исполненных на Рисунке 10.15 команд hping. Мы можем видеть отправленные со случайных адресов пакеты SYN, причём все они адресованы порту 80 по адресу конкретного получателя. В колонке Time мы можем видеть разницу во временах в десятки микросекунд между ними - это указывает на агрессивную атаку.

 

Как защищаться от TCP атак SYN

В разделе SYN- сканирование и имеющие целью процессы плоскости управления из Главы 7, Поиск атак на основе устройства мы обсудили атаки SYN, имеющие целью коммуникационные устройства. Здесь я бы хотел сказать несколько слов относительно того как фильтровать такие атаки прежде чем они повлекут за собой какие бы то ни было разрушения. Для этого имеются различные механизмы, поставляемые разны и производителями и они даже были стандартизованы в 2007 IETF (Internet Engineering Task Force) посредством RFC 4987 – TCP SYN Flooding Attacks and Common Mitigations.

Существует два варианта когда нам требуется защищать устройства от атак DDoS атак переполнения SYN. Первый это когда такие устройства позади межсетевого экрана, а второй когда это устройство непосредственно развёрнуто в Интернет или же расположено в некой локальной сетевой среде без защиты межсетевым экраном. Давайте обсудим это.

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

  • Применение пороговых значений для значения числа SYN в секунду

  • Использование механизма посредника (прокси), равного или выше предварительно заданного порогового значения когда такой посредник отправляет SYN-ACK к своему источнику и переправляет такое подключение только когда получен некий ACK.

  • Применение аналитики поведения для проверки внезапного возрастания обмена в конкретном интерфейсе (обычно используется внутри сетевых сред ISP - Internet Service Provider, поставщика интернет услуг), причём прежде чем доставлять их потребителям.

  • Рост временных задержек, в которых мы удерживаем ресурсы открытыми в ожидании возникновения SYN-ACK.

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

Для развёрнутых в Интернет устройств и не защищённых межсетевым экраном устройств и всё ещё выступающих предметом атак имеются некоторые мероприятия для защиты от них:

  • Для устройств контроля и плоскостей управления ограничивайте число адресов источников, от которых допускается доступ, пользуясь ACL (Access Control Lists, списками контроля доступа).

  • Снижайте таймауты для завершения трёхстороннего рукопожатия подключению TCP.

  • Ограничивайте количество поступающих в данное устройство запросов на соединение.

К примеру, воспользовавшись ACL вы можете разрешить лишь адреса, поступающие от 192.168.1.0/24 и 192.168.2.0/24 из интерфейса GigabitEthernet 0/1 (пример конфигурации Cisco):


access-list 120 permit ip 192.168.1.0 0.0.0.255 any
access-list 120 permit ip 192.168.2.0 0.0.0.255 any
access-list 120 deny ip any any log
interface GigabitEthernet 0/1
ip access-group 120 in
 	   

В устройствах Cisco для снижения значения таймаута под трёхстороннее рукопожатие TCP, вы можете воспользоваться парой функциональных возможностей:

  • Функциональностью ограничения соединений

  • Выявление DCD (Dead Connection Detection)

Дополнительно об этом вы можете ознакомиться на Cisco

.

Для устройств Juniper Networks включите syn-flood-protection-mode.

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

Атаки TCP RST (reset) и FIN

Как мы уже наблюдали в разделе по структуре TCP из Главы 2, Структуры и операции сетевого протокола, те два способа для закрытия соединения TCP, это применение флагов FIN или RST. Первый способ состоит во флаге TCP-FIN (finish), как мы можем видеть это на Рисунке 10.17:

 

Рисунок 10.17


Прекращение TCP соединения при помощи FIN

На данном рисунке мы можем наблюдать следующее:

  • Наш клиент отправляет пакет с флагом FIN (FIN-WAIT-1), сообщающем своему серверу что этот клиент завершил отправку данных своему серверу.

  • Этот сервер отправляет ACK, подтверждая приём предыдущего FIN.

  • Через какое- то время, когда этот сервер больше не имеет ничего для отправки, данный сервер отправляет своему клиенту FIN.

  • Наш клиент подтверждает приём последнего FIN при помощи ACK и данное соединение закрывается.

Закрытие соединения может инициироваться обеими сторонами, не обязательно только клиентом. Атака TCP-FIN попробует оказать воздействие на реальные подключения - например, отправляя кадр FIN одной из соответствующий сторон, подделывая IP адрес источника другой стороны.

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

Для производства атак FIN и RST мы обязаны вмешиваться в обычные операции подключения TCP, которые описаны в разделе Протоколы Уровня 4 - UDP, TCP, and QUIC из Главы 2, Структуры и операции сетевого протокола. Вмешательство в соединение может быть выполнено отправкой пакетов TCPс адресом IP и номером порта одной из имеющихся сторон, причём с флагами FIN или RST, или же с неверными номерами последовательности, которые вызовут у принимающей стороны отправку сброса (который посылается, когда нечто идёт не так) и закрытие данного соединения.

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

 

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

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

  • Подслушиванием данного подключения между имеющимися двумя сторонами такого соединения

  • Перехватом данных с одного из концов этого соединения

  • Разумного предугадывания - скажем, атака порта 80 в веб сервере, причём с мистифицированными адресами IP источника

Первый вариант мы обсуждали в разделе Протоколы Уровня 2 - STP, VLAN и методы безопасности из Главы 2, Структуры и операции сетевого протокола и поговорим о нём ещё в разделе Генерация обмена и атаки на плоскость данных в Главе 12, Атака на протоколы маршрутизации.

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

Третий указанный способ, разумное предугадывание, более сложен, однако способен приносить результаты при минимальном терпении. Давайте воспользуемся примером, в котором у нас имеется сеть 172.30.0.0/24, к которой мы подключены локально или удалённо. Как мы уже наблюдали в разделе Рекогносцировка и получение сведений из Главы 6, Поиск атак на основе сетевой среды, прослушивание сетевой среды снабжает нас обильными сведениями. Давайте остановимся на том, что у нас имеется на Рисунке 10.18. Поскольку мы можем просто подключиться к порту коммуникатора, мы будем наблюдать лишь широковещательный или, при некоторых обстоятельствах, групповой обмены:

 

Рисунок 10.18


Рекогносцировка в сети

На данный момент нам известно, что у нас имеется сервер, 172.30.0.11, который предан гласности в NetBIOS, а именно, сервер SQL. Если мы погуглим SQL port numbers, мы сможем обнаружить, что сервер SQL обычно пользуется портом TCP 1433.

Теперь, когда нам известно что у нас имеется сервер SQL с IP адресом 172.30.0.11, который ожидает по порту 1433, и запросы к которому поступают от клиентов в 172.30.0.0/24, чтобы отсекать подключения TCP, мы способны производить одну из двух атак:

  • Производить пакеты RST или FIN из адреса источника 172.30.0.X (X от 1 до 254), причём с произвольным портом источника, к порту 1433 в 172.30.0.11.

  • Вырабатывать пакеты RST или FIN из порта 1433 в 172.30.0.11 к ПК в 172.30.0.X (X от 1 до 254) по номерам произвольной последовательности.

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


srloop(IP(dst="172.30.0.11")/
TCP(dport=RandNum(1024,65536),flags="R"))
		

Её можно подразделить следующим образом:

  • 172.30.0.11 это наша цель - то есть, атакуемое устройство.

  • dport=RandNum(1,65536) это произвольный порт назначения.

  • flags="R" представляет собой флаг сброса (reset).

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

На Рисунке 10.19 вы можете видеть наш перехват тех пакетов, которые были отправлены в атакуемое устройство:

 

Рисунок 10.19


Атака reset

Из данного сканирования мы можем наблюдать, что пакеты TCP с включённым флагом сброса (RST) отправлены к 172.30.0.11 по произвольным портам назначения. Мы можем изменять в Scapy дополнительные параметры и получать лучшие результаты. Замена флага TCP R на флаг F выработает атаки FIN.

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

 

Как выявлять TCP атаки RST и FIN и защищаться от них

Для обнаружения атак RST или FIN имеются различные пути. Прежде всего, как мы могли наблюдать на Рисунке 10.19, перехват пакета будет отображать его немедленно. Убедитесь что вы наблюдаете слишком много поступающих от одного и того же источника сбросов, шаблонов сканирования, одновременных пакетов FIN и тому подобного.

Во- вторых, большинство межсетевых экранов и систем IDS/IPS выявляют атаки данного типа. Для блокирования любого типа доступа в сетевую среду применяйте систему NAC (Network Access Control, контроля доступа к сети) и следуйте процедурам упрочения оборудования взаимодействия.

Теперь давайте рассмотрим дополнительные типы атак, которые вовлекают применение различных флагов TCP.

Атаки сочетания различных флагов TCP

Имеется множество названий для атак на основе TCP - сканирования ACK, сканирования FIN, сканирования Null и сканирования Xmas. Что выступает общим для большинства из них, так это применение сочетания флагов TCP для запутывания устройства взаимодействия.

 

Как производить TCP атаки сочетания флагов

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

  1. Посредством nmap производим атаку SYN, как мы наблюдали её в своём предыдущем разделе.

  2. При помощи Wireshark перехватывает соответствующие пакеты и отфильтровываем пакеты TCP SYN. Мы выполняем это через фильтр отображения tcp.flags.syn==1. Как это осуществляется, вы можете увидеть в Главе 8, Анализ и подслушивание сетевого обмена.

  3. Экспортируем все отображённые пакеты в файл.

  4. Открываем Colasoft Packet Builder и для импорта экспортированного нами из Wireshark файла применяем Import. На следующем рисунке вы можете увидеть что мы получили:

     

    Рисунок 10.20


    Применение Packet Builder для атаки TCP

  5. Изменяем значение флагов TCP. Я пользуюсь самой безумной комбинацией, которую только смог представить - ECN для уведомления о заторе, URG для указателя неотложности (никто даже не пользуется данным флагом), PSH для активной доставки и SYN для синхронизации. Нет никакой возможности что подобное данному сочетание будет отправлено в действительности.

  6. В главном меню кликаем по кнопке Send. Как всё это сделать вы можете посмотреть в разделе Атаки STP, RSTP и MST из Главы 6, Поиск атак на основе сетевой среды.

  7. Получаемый результат, при помощи команды show proc cpu history в устройстве Cisco IOS заключался в 90% загруженности ЦПУ коммутатора.

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

 

Как выявлять TCP атаки сочетания флагов

Для идентификации атак комбинации флагов TCP, некоторые из которых уникальны, а некоторые из которых будут теми же самыми для прочих типов атак, существуют различные способы. На Рисунке 10.21 мы можем наблюдать что происходит в ЦПУ некого устройства без защиты при данном типе атаки. Важно отметить, что для значений загруженности ЦПУ свыше 90%, как мы наблюдаем в нашей ситуации (точное число представлено в верхней части данного графика), ЦПУ этого устройства вне всяких сомнений замедляется, в то время как по достижению близкого к 100% значения оно начнёт сбрасывать пакеты и прекратит свою работу:

 

Рисунок 10.21


Результаты атаки со множеством флагов TCP

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

Идентификация атак флагами может выполняться двумя способами - выявлением внезапного возрастания обмена и распознавание неполадок в пакетах TCP.

Выявление внезапного роста обмена может выполняться такими средствами как базовые инструменты SNMP и средства NetFlow/IPFIX (см. раздел NetFlow и IPFIX в Главе 9, Применение анализа поведения и выявление аномалий).

На Рисунке 10.22 мы можем наблюдать некий образец выявления DDoS. Этот график взят из бесплатной версии PRTG (Paessler Router Traffic Grapher, до 100 датчиков), отображая входящий и исходящий обмены в интерфейсе маршрутизатора. Как мы можем видеть, присутствует некий рост в обмене с 30 - 40 Kbps до 1 000 - 2 000 Kbps исходящего/ входящего обмена в битах в секунду - то есть, 1 Mbps для выходного обмена по интерфейсу, и 2 Mbps для приходящего в этот интерфейс обмена:

 

Рисунок 10.22


Внезапный рост обмена

Нашим отслеживаемым интерфейсом был интерфейс маршрутизатора, подключённого к межсетевому экрану компании, что мы видим на Рисунке 10.23. На этом рисунке мы можем наблюдать сетевую среду своей компании (той её части, которая относится к нашему случаю):

 

Рисунок 10.23


Сетевая среда компании под DDoS

Как мы можем увидеть из Рисунка 10.23, у нас имеется 2 Mbps приходящими на этот интерфейс и 1 Mbps уходящих с него - из которых большая часть обмена поступает из HQ (штаб-квартиры) слева.

В данный момент, значения 1 Mbps/ 2 Mbps всё ещё низкие и не должны нас сильно заботить, однако когда мы взглянем на свой следующий график на Рисунке 10.24, мы можем наблюдать, что загруженность ЦПУ достигает 60% на протяжении пикового значения при таком обмене:

 

Рисунок 10.24


Загрузка ЦПУ

Поскольку обычное прохождение данных через наш маршрутизатор не должно грузить ЦПУ маршрутизатора (пр нагрузке обмена не более чем 1-2 Mbps), мы можем заключить, что этот обмен имеет целью плоскости управления или контроля нашего маршрутизатора.

 

Как защищаться от TCP атаки флагов

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

Для устройств Cisco настраивайте ACL допуская пакеты TCP только когда значения флагов TCP в пределах обычно допускаемых сочетаний:


ip access-list extended example1
 permit tcp any any match-all +syn
 permit tcp any any match-all +ack +syn
 permit tcp any any match-all +fin
 permit tcp any any match-all +fin +ack
 permit tcp any any match-all +rst
 permit tcp any any match-all +rst +ack
 permit tcp any any match-all +psh
 permit tcp any any match-all +psh +ack
 end
		

Устанавливайте соответствие всем допустимым сочетаниям флагов, которые идентичны этой командной строке - к примеру, +syn допускает пакеты только с флагом SYN.

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

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

Атаки последовательности TCP и атаки угона сеанса

Атаки последовательности TCP, также именуемые кражей сеансов TCP, ссылаются на ту ситуацию, при которой мы встреваем в общение между двумя сторонами соединения. Это одна из множества разновидностей атак с посредником посредине (man-in-the-middle), когда мы подслушиваем данные между двумя взаимодействующими устройствами.

Для запуска атак угона сеанса TCP мы воспользуемся Scapy - средством манипуляции пакетами, написанном на Python. Scapy может применяться для захвата, декодирования, подделки и отправки пакетов.

Чтобы установить Scapy в Windows выполните следующее:

  1. Установите Python версии 3.4 или выше.

  2. Установите драйвер npcap (если вы следовали за этой книгой до этой главы, вы должны сейчас уже иметь его установленным).

  3. Откройте cmd и выполните pip3 install scapy.

Для установки Scapy в Linux (Ubuntu или Kali), запустите такие команды:

  1. sudo apt update

  2. sudo apt install python3-scapy

В идущем далее примере мы отправляем при помощи Scapy простой пакет и следом мы можем как это выглядит в Wireshark:

 

Рисунок 10.25


Отправка пакетов при помощи Scapy

На Рисунке 10.26 мы наблюдаем эти пакеты:

 

Рисунок 10.26


Произведённые Scapy пакеты

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


send(IP(dst="100.1.2.3", ihl=2, version=3)/ICMP())
		

Здесь ihl указывает значение длины заголовка интернета.

В нашем следующем примере, показанном на Рисунке 10.27, мы можем видеть отправку в www.ndi.co.il сканирования TCP SYN, по результатам которого мы получили 11 ответов. В перехвате Wireshark мы имеем возможность наблюдать ответ на порт 21 - он выявляет что порт 21 открыт и отправляет нам SYN-ACK обратно, а Scapy отвечает сбросом TCP для закрытия данного подключения:

 

Рисунок 10.27


Сканирование TCP порта при помощи Scapy

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

 

Рисунок 10.28


Scapy собирает последовательные числа

Мы получаем следующие результаты:

 

Рисунок 10.29


Значения последовательных чисел

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

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

Выводы

В данной главе мы обсудили сетевые протоколы - от адресов Ethernet и MAC, через адреса ARP IP к более верхним уровням с TCP и UDP, рассмотрели потенциальные атаки на них, как производить такие атаки и как от им противостоять. Мы изучили как вырабатывать атаки ping, TCP SYN и разнообразные атаки флагов, как их выявлять при возникновении и как обороняться от них, а завершили мы атаками взлома TCP - как они реализуются и как им противодействовать.

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

Вопросы

  1. На что из перечисленного ниже влияет применение команды macof -i <interface-name>, например, macof -i eth0?

    1. На коммутатор локальной сети, к которому вы подключены

    2. На всю локальную сеть, только на Уровне 2

    3. На всю локальную сеть, включая коммутаторы и маршрутизаторы

    4. На все сети организации

  2. По какой причине опасны сканирования ping?

    1. Они загружают сеть

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

    3. Их можно применять для атак DDoS

    4. Всё перечисленное

  3. В чём состоит отличие между сканированием SYN и атакой SYN?

    1. И сканирования SYN, и атаки SYN применяются для нападения на сетевые ресурсы

    2. Сканирования SYN выявляют сетевые устройства, в то время как атаки SYN определяют открытые порты

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

    4. Всё перечисленное

  4. Для чего применяется команда hping3 -c 10000 -d 128 -S -w 1024 -p 80 --flood --randsource 1.2.3.4?

    1. Производства атаки с 10 000 пакетов на случайные порты назначения

    2. Выработки атаки на порт 80 с произвольных портов источников

    3. Создания атаки со случайно выбранных адресов IP источников на порт 80 сервера 1.2.3.4

    4. Сканирование имеющейся сети на наличие устройств, отвечающих по порту 80 - то есть серверов HTTP

  5. С какой целью используются атаки сочетания флагов TCP на сетевые устройства?

    1. Для загрузки плоскостей контроля и управления и создания нагрузки на ЦПУ и память, что может оказать воздействие на нормальное поведение данного устройства

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

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

    4. Как тип вредоносного ПО для запрета подключённых к устройству удалённого взаимодействия конечных точек