Wifi инъекции что это
HackWare.ru
Этичный хакинг и тестирование на проникновение, информационная безопасность
Деаутентификация клиентов беспроводной сети в Kali Linux
Эта статья основывается на официальной документации: Deauthentication.
Что такое деаутентификация (описание)
Эта атака отправляет пакеты для разъединения одному или более клиентам, которые в данный момент подключены к конкретной точке доступа. Рассоединение клиентов может быть выполнено по ряду причин:
Конечно, эта атака совершенно бесполезна, если отсутствуют подключённые беспроводные клиенты или имеет место фальшивые аутентификации.
Использование (реализация деаутентификации)
Примеры использования aireplay-ng
Как обычно, начнём с переводы карты в режим монитора (если вы ещё этого не сделали) как описано здесь.
Теперь нам нужно узнать ВSSID точки доступа, от которой мы будет отключать клиентов. Это можно сделать с помощью программы airodump-ng (справка по программе airodump-ng в Энциклопедии Kali Linux)
Нас интересует сеть Mial, её ВSSID 20:25:64:16:58:8C
Я не нашёл клиентов этой сети, поэтому не указываю эту опцию. Также я поставил 0 для количества отправляемых пакетов.
Ещё обращаем внимание на канал, он равен единице. Установить канал можно командой iwconfig wlan0 channel n, где вместо n нужно подставить номер канала.
Таким образом, для успешной атаки нам нужно последовательно выполнить две команды:
Вывод будет примерно таким:
Пока программа работает, невозможно подключиться к этой точке доступа.
Вместо ВSSID можно указывать более понятное имя (ESSID). Делается это с опцией -e. Т.е. для моего примера команда приобретёт вид:
Она равнозначна предыдущей и точно также прекрасно отработает.
Ошибка Waiting for beacon frame (BSSID: ) on channel No such BSSID available. Please specify an ESSID (-e).
Если при выполнении команды у вас появилось что-то подобное этому
Помните, что некоторые точки доступа настроены на автоматическую смену каналов, особенно после внезапной деаутентификации всех клиентов. Не забывайте переключать каналы в след за точкой доступа.
Подсказки использования
Обычно атака более эффективна если указать конкретную станцию (клиента) с параметром -c.
Пакет деаутентификации направляется напрямую от вашего ПК клиентам. Поэтому вы должны быть достаточно близко к клиентам, чтобы передача вашей беспроводной карты доставала их.
Решение проблем
Почему деаутентификация не работает?
Этому может быть несколько причин, и одна или сразу несколько из них могут быть вашим случаем:
Связанные статьи:
Рекомендуется Вам:
46 комментариев to Деаутентификация клиентов беспроводной сети в Kali Linux
Комментарий попал в спам, поэтому такой долгий ответ…
not associated это те, кто проходит мимо вас с включённым Wi-Fi. Например, кто-то был подключён к Wi-Fi дома, пошёл в институт, а Wi-Fi в телефоне не отключил. Еесли они не пытаются подключиться к «бесплатному Интернету», а просто проходят мимо, то ничего интересного с ними сделать нельзя.
Иногда Airodump-ng показывает, к каким точкам доступа они пытаются подключиться.
Можно с помощью iSniff-GPS попытаться получить информацию, где эти клиенты бывали раньше.
Также not associated могут оказаться любителями халявы – бесплатного интернета. Если так, то это прекрасные кандидаты для подключения к фальшивой точке доступа (WiFi-Pumpkin, airgeddon, Mana). Если они подключаться к фальшивой точке доступа, то дальше можно выполнять атаки человек-посередине, поиск паролей в трафике, делать разные штуки с фальшивым DNS и т.д.
Але.. Alexey, здравствуйте еще раз, я вам написал письмо с проблемой, проблема заключается в mdk3
Во время обновления компьютера я включил видео после чего вылетил в главное меню
потом я заходил и был синий экран, если я нажимал на иконку вылет туда же.
Я зашел без графической оболочки и продолжил апгрейд, но apt сломалс и ссказал чтоб я запустил dpkg
Я так и сделал (вроде бы) пока что все хорошо но есть серьезная (для меня) пролема-
при запуске mdk3 b он ничего не показывает, а действия производит.
Т.е. даже не показывает клиентов (ничего кроме (как) 2 энтера и 2 пробела
Возможно, вы знаете, как помочь?
У меня завтра интернет отключат…(честно))
Надеюсь все понятно =)
Здравствуйте, очень нужна ваша помощь по wifiphishery и fluxion, одна и таже ошибка, если не трудно напишите мне на почту, буду нереально признателен)
Спрашивайте здесь в комментариях.
Та же ситуация и с fluxion
В какой ОС тестируете и как устанавливали (какими командами) wifiphisher?
Какие у вас Wi-Fi карты?
В fluxion тоже выводятся слова deauth/disas и extension feed? Можно увидеть скриншот из fluxion?
Меня вначале смутил скриншот (это версия 1.4, а в Kali в репозиториях версия 1.1). Я установил последнюю версию и стало понятнее. Судя по всему, у вас атака проходит правильно.
Вы говорите, что нет компьютеров. Возможно, компьютеры не подключены к точке доступа или подключены по проводу, либо подключены по Wi-Fi, но на 5 ГГц.
Laki linux 2017.3 установлена на флэшку, запускаюсь не как live режим, а как persistence. но и в live режиме пробовал, та же проблема вводил команды
Вот скрин fluxion, но тут почему то в окне deauth all [mdk3] ничего не двигается. Мне кажется что то не так с деаунтефикацией. В разных программах почти одно и тоже… но вот что, я всю голову сломал уже, месяц никак не могу настроить, как только не устанавливал линукс, какие адаптеры только не пробовал, и с командой sudo все прописывал, все равно никак(( спасибо что помогает… так же устанавливал свежую linux kali 2018.1 не помогло, делал полное обновление, тоже не помогло(
Вот адаптеры сетевые, извиняюсь за качество
Когда вводите команды
Пишет «Injection is working!«?
Я имел ввиду название адаптеров, которое можной посмотреть командой
Я уверен в том что не идет атака на компьютеры потому что тестирую сначала на своей сети, так же она работает точно не на 5 Ггц, вот еще скриншоты комманд которые вы просили… Спасибо Вам за помощь, вся надежда на Вас)
Я протестировал на своей сети, у меня компьютер также подвержен атаке наравне с мобильными устройствами:
c4:85:08:e1:67:ed – это MAC Wi-FI адаптера на ноутбуке.
Ваши Wi-Fi карты отлично подходят для атаки – всё должно работать.
Скорее всего, какие-то индивидуальные особенности сети, которую атакуете.
Можно попробовать поменять адаптеры местами, т.е. сначала использовать один адаптер для глушения, а другой для создания фейковой ТД, а затем наоборот. Для этого wifiphisher нужно запускать следующим образом (wlan0 и wlan1 замените на имена ваших беспроводных интерфейсов, если они различаются):
Странно, почему же мои компы не подвергаются атаке… обязательно попробую вами предложенный способ, и тогда отпишусь как успехи) Спасибо еще раз что помогаете…
Получается эти комманды нужно вводить до запуска самого wifiphishera?
Это и есть команды запуска wifiphisher. Эта программа поддерживает опции. При запуске без опций, она работает по своим алгоритмам, к примеру, она самостоятельно определяет, какую карту использовать для глушения, а какую для создания Точки Доступа. Используя опции, можно изменить стандартную работу, например, выбрать другую Wi-Fi карту для глушения.
Все равно ничего не получается… ловятся только андроид и ios устройства и то не всегда, а про компьютеры я вообще молчу) пробовал и различные сети у знакомых, все одно и тоже… fluxion так же… чую что что то здесь не то))
Спасибо большое, буду дальше искать в чем проблема
может быть вы еще какие нибудь методы подскажите взлома wifi сетей?
Материала много, посмотрите здесь: https://hackware.ru/?p=372
а из вашего личного опыта что бы могли посоветовать?
Это и есть мой личный опыт – я это всё и писал.
Если более кратко, то основные атаки (без социальной инженерии) описаны в статье «Практика атак на Wi-Fi».
Кроме wifijammer, это же можно делать с помощью mdk4, mdk3, LANs, hcxdumptool и т.д.
Если нужно сделать без других инструментов (кроме самой программы aireplay-ng), то необходимые команды можно записать в пакетный файл, назвать его, например, deauth.sh. И затем с помощью команды watch запускать его следующим образом:
В результате файл deauth.sh будет запускаться каждую секунду. Минимальное значение, которое можно указать после -n, это 0.1, то есть 1/10 секунды.
Здравствуйте, Алексей. Точнее, Alexey)
она настолько «большая», что пока что сориентировался тоько на wi-fi.
Не подскажете ли, с чего начать и чем продолжить? Деаунтефичировать, досить ТД я умею,
нету даже оглавления так сказать;)
Я бы хотел изучеть до глубины.. скажем.. состава маячков )
Вы не могли бы мну помочь с образованием? Я отнесусь к этому с большой благодарностью!)
Приветствую! У меня похожая ситуация, может, только я начал чуть раньше. Для меня это хобби, т.е. количество времени, которое я могу потратить на это, ограниченно. Чтобы извлечь максимальную пользу из этих потраченных часов, я изучаю прикладные аспекты – практику, инструменты и основы работы с ними.
Я знаю, например, где почитать про структуру фреймов (в wifu, например, есть про это), знаю, что их удобно смотреть в Wireshark, но я не планирую углубляться в эти вопросы, т.к. эта информация полезна для разработчиков новых инструментов, для серьёзных специалистов, которые готовы потратить на это изучение много времени, для которых это является частью работы. Мне же эта информация не принесёт никакой пользы, разве что, может быть когда-то поможет разобраться с какой-нибудь проблемой или редкой ошибкой. Т.е. я считаю эту информацию полезной, но у меня нет и не было времени на её изучение, поэтому я также не могу помочь с этим. Но зато в Интернете материалов по работе беспроводных протоколов достаточно, на мой взгляд, не хватает инструкций по актуальным инструментам – именно это мне и интересно, этим я здесь и занимаюсь.
Я считаю, что бессистемные знания трудно развивать и просто помнить, поэтому стараюсь собрать ту информацию, которую «намайнил», в что-то вроде онлайн книг. По Wi-Fi получается так: https://hackware.ru/?p=372
Здравствуйте! Что-то поменялось за прошедшее время со статусом хобби? Удается ли как-нибудь применить или монетизировать полученные знания?
Можно сказать, что монетизирую знания на сайте с помощью AdSense. Так как это приносит совсем мало денег, есть мысли фрилансить на англоязычных биржах фриланса: услуги системного администрирования Linux и сетей, настройка веб серверов и служб, разработка онлайн сервисов и т. п. Но считаю, что моих знаний ещё недостаточно (я вообще-то юрист по ВУЗовскому образованию) — поэтому продолжаю своё самообразование.
Инструменты Kali Linux
Список инструментов для тестирования на проникновение и их описание
Aireplay-ng
Описание Aireplay-ng
Aireplay-ng используется для инъекции (инжекта) фреймов.
Главная функция — это генерировать трафик для последующего использования в aircrack-ng для взлома WEP и WPA-PSK ключей. Существуют различные атаки, которые могут повлечь деаутентификацию (говоря проще, разъединение пользователей) в целях захвата данный рукопожатия WPA, фальшивой аутентификации, интерактивного повтора пакетов, вручную сконструированных ARP запросов в инъекциях и обратной закачки ARP запросов. С инструментом packetforge-ng возможно создавать произвольный фреймы.
Использование атак
На текущей момент реализовано несколько различных атак:
Автор: Thomas d’Otreppe, Первоначальная работа: Christophe Devine
Справка по Aireplay-ng
Опции повторного воспроизведения (инъекции):
Опции атаки Фальшивая деаутентификация:
Опции атаки повторной отправки запросов ARP:
Опции фрагментированной атаки:
Опции тестирования инжекта:
Режимы атаки (также можно использовать цифры):
Руководство по Aireplay-ng
ОПЦИИ:
Показать сообщение помощи.
Опции фильтра:
MAC адрес точки доступа.
MAC адрес пункта назначения.
MAC адрес источника.
Минимальная длина пакета.
Максимальная длина пакета.
Управление фреймом, поле type.
Управление фреймом, поле subtype.
Управление фреймом, «To» DS бит (0 или 1).
Управление фреймом, «From» DS бит (0 или 1).
Управление фреймом, WEP бит (0 или 1).
Отключить выявление ТД.
Опции повторного воспроизведения:
Количество пакетов в секунду.
Установить слово контрольного фрейма (шестнадцатиричное).
Установить MAC адрес точки доступа.
Установить MAC адрес пункта назначения.
Установить MAC адрес источника.
Выбрать первый подходящий пакет.
Атака фальшивая аутентификация:
Установить целевую SSID. Для SSID, содержащей специальные символы, смотри http://www.aircrack-ng.org/doku.php?id=faq#how_to_use_spaces_double_quote_and_sin‐gle_quote_etc._in_ap_names
Атака фальшивая аутентификация: Установить количество пакетов для каждой попытке аутентификации и ассоциации (По умолчанию: 1). 0 означает автоматически.
Атака фальшивая аутентификация: Установить время между временем жизни пакетов в режиме фальшивой аутентификации.
Атака фальшивая аутентификация: Отправлять запросы о повторном переподключении вместо выполнения полной аутентификации и ассоциации после каждого периода задержки.
Атака фальшивая аутентификация: Определить поток ключей для фальшивого общего ключа аутентификации.
Атака фальшивая аутентификация: Выйти если фальшивая аутентификация провалилась ‘n’ раз.
Атака воспроизведения ARP :
Инъекция пакетов FromDS.
Фрагментированная атака: Установить пункт назначения IP во фрагментах.
Фрагментированная атака: Установить источник IP во фрагментах.
Опция тестирования: Тест битрейта.
Опции источника:
Захватывать пакеты с этого интерфейса.
Извлечь пакеты из этого pcap файла.
Прочие опции:
Отключить использование /dev/rtc.
—ignore-negative-one
Если интерфейс канала не может быть определён, игнорировать несоответствие, нужно для непропатченного cfg80211
РЕЖИМЫ АТАКИ:
Эта атака отправляет пакеты деаутентификации одному или более клиентами, которые в настоящий момент связаны с определённой точкой доступа. Деаутентификация клиентов может быть сделана по ряду причин: Восстановление скрытого ESSID. Этот ESSID не показывается в вещании. Другая причина для этого — это «маскировка» или Захват рукопожатия WPA/WPA2 путём принудительной повторной аутентификации клиентов или Генерация ARP запросов (Windows клиенты иногда очищают их ARP кэш после рассоединения). Конечно, эта атака совершенно бесполезна если нет подключённых к беспроводной сети клиентов или при фальшивой аутентификации. Подробности: Деаутентификация клиентов беспроводной сети в Kali Linux.
Эта атака фальшивой аутентификации позволяет вам выполнить два типа WEP аутентификации (Открытая система и Общий ключ) плюс ассоциироваться с точкой доступа (ТД). Это полезно только когда вам нужен ассоциированный MAC адрес в различных атаках aireplay-ng, а ассоциированных клиентов в данный момент нет. Следует отметить, что атака фальшивой аутентификации НЕ генерирует какие-либо ARP пакеты. Фальшивая аутентификация не может быть использована для аутентификации/ассоциации с WPA/WPA2 точками доступа.
Эта атака позволяет вам выбрать определённый пакет для воспроизведения (инъекции). Атака может получить пакеты для воспроизведения из двух источников. Первым является живой поток пакетов с вашей беспроводной карты. Вторым является файл pcap. Многие упускают из виду такую функцию aireplay-ng как чтение из файла. Она позволяет вам прочитать пакеты из захваченный сессий или нередко из различных сгенерированных для атак файлов pcap для простого повторного использования. Популярное использование — это чтение файла, который вы создали с помощью packetforge-ng.
Классическая атака повторного воспроизведения ARP запроса — это наиболее эффективный способ сгенерировать новые векторы инициализации (IVs), и работает он очень надёжно. Программа ищет ARP пакеты, затем пересылает их обратно к точке доступа. Это, в свою очередь, приводит точку доступа к повторению ARP пакета с новыми IV. Программа пересылает тот же ARP пакет снова и снова. При этом каждый ARP пакет, повторённый точкой доступ, имеет новые IVs. Это всё новые IVs, которые позволяют вам определить WEP ключ.
Эта атака, в случае успеха, может расшифровать пакет данных WEP не зная ключа. Это может работать даже в отношении динамического WEP. Эта атака не восстанавливает сам WEP ключ, но лишь раскрывает простой текст. Тем не менее, некоторые точки доступа не уязвимы к этой атаке. Некоторые поначалу кажутся уязвимыми, но на самом деле отбрасывают пакеты данных короче чем 60 байт. Если точка доступа отбразывает пакеты корочем чем 42 байта, aireplay пытается предположить оставшиеся пропущенные данные, т. к. заголовок является предсказуемым. Если захвачен IP пакет, дополнительно проверяется контрольная сумма заголовка на корректность после угадывания недостающей его части. Эта атака требует по крайней мере один WEP пакет.
Эта атака, при успехе, может получить 1500 байт из PRGA (алгоритм псевдослучайной генерации). Эта атака не раскрывает сам WEP ключ, но лишь получает PRGA. Этот PRGA можно использовать для генерации пакета с packetforge-ng, который, в свою очередь, использовать для различных инъекционных атак. Требуется получить по крайней мере один пакет от точке доступа, чтобы инициировать эту атаку.
В общих чертах, для того, чтобы атака сработала, атакующий должен быть в диапазоне ТД и подключённого клиента (фальшивого или реального). Атака Caffe Latte позволяет собрать достаточно пакетов для взлома WEP ключа без необходимости ТД, достаточно просто клиента в диапазоне.
Эта атака превращает IP или ARP пакеты от клиента в ARP запросы в отношении клиента. Эта атака работает особенно хорошо в отношении сетей ad-hoc. Также она может использоваться в отношении клиентов softAP (программной точки доступа) и нормальных клиентов ТД.
Эта атака работает в отношении точек доступа Cisco Aironet, настроенных в WPA Migration Mode, который позволяет как клиентам WPA, так и WEP подключаться к точке доступа используя одинаковый Service Set Identifier (SSID). Программа прослушивает WEP-инкапсулированный широковещательный ARP пакет, меняет биты, чтобы переделать его в ARP, приходящий с MAC адреса атакующего, и переправляет к точке доступа. Это, в свою очередь, приводит к тому, что точка доступа повторяет ARP пакет с новым IV и также переправляет ARP ответ к атакующему с новым IV. Программа пересылает тот же ARP пакет снова и снова. При этом каждый ARP пакет, повторённый точкой доступа, имеет новый IV, и ARP ответ перенаправляется точкой доступа к атакующему. Все эти новые IV позволяют вам определить WEP ключ.
Фрагментация или Chopchop (отбивная котлета)
Показаны различия между фрагментированной атакой и Chopchop атакой
Фрагментация
Chopchop
Примеры запуска Aireplay-ng
Перейти на канал 1 (iwconfig wlan0 channel 1), производить атаку Деаутентификация (-0), пока она не будет остановлена вручную (0) в отношении ТД с ВSSID 20:25:64:16:58:8C (-a 20:25:64:16:58:8C) с сетевого интерфейса wlan0 (wlan0):
Перейти на канал 1 (iwconfig wlan0 channel 1), произвести атаку Деаутентификация (-0), отправить пять пакетов разъединения (5) в отношении ТД с ESSID 20:25:64:16:58:8C (-e Mial) с сетевого интерфейса wlan0 (wlan0):
Вывод этих двух команд одинаковый:
Проверить, поддерживает ли беспроводная карта инъекции (инжект) (-9) на сетевом интерфейсе wlan0 (wlan0):
Установка Aireplay-ng
Программа предустановлена в Kali Linux.
Установка в другие операционные системы
Эта программа из пакета Aircrack-ng. Т.е. для её установки нужно установить Aircrack-ng.
Удаленная инъекция Wi-Fi кадров
Стандарт WiFi 802.11n использует механизм агрегации кадров для уменьшения накладных расходов при передаче данных.
Для этого несколько кадров объединяются в один. При этом маркер разделителя кадров передается вместе с данными.
Это позволяет сформировать данные, которые при прохождении через WiFi устройство будут интерпретированы им как отдельные кадры.
То есть имея контроль над потоком данных передаваемых от сервера клиенту (например при загрузке файла с сервера атакующего) или от клиента к серверу, можно генерировать произвольные пакеты на всех уровнях OSI:
Уязвимости подвержены только открытые сети стандарта 802.11n.
Схема PHY кадра с инъекцией
Как видно разделитель кадра (A-MPDY delimiter) помещается прямо в payload с пользовательскими данными, поэтому при получении такого кадра принимающей стороной, будет произведена деагрегация и наша последовательность будет воспринята операционной системой как отдельный пакет.
Подробнее об уязвимости можно прочесть в докладе Injection Attacks on 802.11n MAC Frame Aggregation
Код для эксплуатирования уязвимости github.com/rpp0/aggr-inject
Скрипт, генерирующий payload — aggr-inject.py.
Для инъекции фреймов от точки доступа к клиенту предлагается сгенерировать jpg файл, который будет скачивать жертва (как на картинке в заголовке поста). В обратную сторону, от клиента к точке предлагается посылать специальный сформированный POST запрос на веб-сервер атакующего.
Тип передаваемых данных не имеет никакого значения, достаточно иметь возможность создать управляемый атакующим поток данных. В данном случае взят HTTP как самый простой пример. При этом важно, чтобы данные были переданы в неизменном виде на сам wifi чип, поэтому данные должны быть переданы по открытому каналу (HTTPS не подходит), не подвергаться обработке, сжатию.
Самый простой пример демонстрации уязвимости: посылка широковещательных beacon фреймов. Маяков, которые посылает точка доступа, сообщая о своем имени сети (SSID).
Файл, инъецирующий маяки с именем сети «injected SSID» aggr_beacon.jpg 250MB
Скорее всего, вы не увидите новую сеть в списке доступных для подключения WiFi сетей, так как большинство операционных систем используют активное сканирование, и показывают только сети, ответившие им на probe request. Поэтому чтобы увидеть инъекцию пакетов нужно использовать пассивное сканирование.
Кстати, на заметку тем, кто используется Mac OS, можно дампать WiFi трафик родной картой airport. Рекомендую для этого мою тулзу airport-sniffer. Дамп можно будет найти в /tmp/airportXXXX.cap
Мой тестовый стенд идентичен картинке в заголовке поста. Вредоносный файл скачивается планшетом, дампер запущен на ноутбуке, подключенном к той же точке доступа TL-MR3020 с прошивкой openwrt 12.09. Также инъекция успешно воспроизводится с использованием USB адаптера tl-wn821n.
Вот как выглядят пойманные ноутбуком пакеты:
По таймингам видно, что инъекции происходят очень бодро.
Для того чтобы провести реальную атакую необходимо подниматься на L2 и L3 уровни, то есть нужно знать MAC адрес точки доступа, в некоторых случаях MAC адрес клиента, IP адреса клиентов за NAT. Поэтому эксплуатировать уязвимость в реальных условиях крайне сложно. Максимум — это посылать deauth пакет и отключать всех клиентов от сети.
Мне удалось успешно провести инъекции TCP пакетов и я попытался пролезть на TCP порт клиента, находящегося за NAT, пытаясь создать в nf_conntrack трансляцию, пропускающую мои пакеты клиенту. Но у меня так и не получилось. Если послать клиенту SYN от имени удаленного хоста, его ответ SYN-ACK не создает трансляцию и ответить ему из мира нельзя. Если же послать от клиента SYN в мир и ответить ему, пусть даже создав трансляцию на роутере в состоянии ESTABLISHED, новый SYN из мира посланный клиенту будет отброшен. Даже фантазии на эту тему разбились о проблему с угадыванием seqence number. Хотя, может быть, я просто лошара и у вас получится.
Подобное можно успешно провернуть с UDP. Также в примерах есть способ сканировать хосты за NAT, посылая icmp.