Ломаем wi-fi. готовимся к продвинутым техникам взлома.

Tartuga

Бывалый
ПРОВЕРЕННЫЙ ПРОДАВЕЦ
PREMIUM USER

Tartuga

Бывалый
ПРОВЕРЕННЫЙ ПРОДАВЕЦ
PREMIUM USER
Регистрация
7 Фев 2020
Сообщения
525
Реакции
98
Репутация
147
В прошлых статьях о пентестах точек доступа Wi-Fi мы разобрали базовые техники, а сейчас примемся за более продвинутые. Рассмотрим особенности адаптеров и добавим мощности нашему донглу. Это необходимо, чтобы использовать ускоренные способы взлома, принудительно отключать беспроводные клиенты, атаковать скрытые сети и обходить фильтрацию по MAC-адресам.


Увеличиваем мощность Wi-Fi-адаптера
Сильнее всего на эффективность атаки влияет уровень сигнала. Твой донгл должен быть достаточно чувствительным, чтобы услышать слабый сигнал атакуемых точек доступа и перехватить все пакеты хендшейка. Одновременно ему нужен мощный передатчик, иначе отсылаемые им команды деавторизации или перебора WPS-пинов не достигнут цели.


Чувствительность приемника.
Чем тише ты становишься, тем больше сможешь услышать — таков девиз Offensive Security, продвигающей популярный дистрибутив Kali Linux. Применительно к вардрайвингу он означает, что слушать эфир, находить в нем точки доступа Wi-Fi (далее — AP, access points) и собирать хендшейки нужно с максимально чувствительным приемником. То есть с таким адаптером, у которого высокое соотношение сигнал/шум.

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

Пожалуйста Авторизуйтесь или Зарегистрируйтесь для просмотра скрытого текста.

, но и с адекватной схемотехникой (а в идеале — с хорошим экранированием).

Традиционно по этому показателю лидирует Alfa Network. Даже современные удешевленные ревизии без экранирующей пластины показывают чудеса. Например, AWUS051NH v2 лишен экранирования, но сделан все на том же чипе RT3572, и сделан качественно.


Чип RT3572

Вскрываем AWUS051NH v2
У него «правильный» чип RT3572 и весьма неплохая схемотехника (хотя у старых адаптеров от Alfa Network она еще лучше). За две минуты сканирования в моем тесте он поймал 70 точек доступа с уровнем сигнала 18 дБм и выше.


Улов AWUS051
Сравним с результатами другого адаптера — Netis WF2150. Аналогичное место и время, те же две минуты сканирования.


Улов WF2150
Всего 49 AP, а уровень сигнала от большинства из них упал ниже 18 дБм. Несмотря на «правильный» чип RT5572N, результаты оказываются плачевными из-за примитивной схемы самого адаптера. Как уже писал ранее, можно его разобрать и подключить внешнюю антенну к миниатюрному гнезду на плате. Однако коэффициент усиления (КУ) внешней антенны — тоже палка о двух концах, поскольку вместе с полезным сигналом растет и уровень шумов.

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

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

Мощность передатчика.
Сидеть в засаде с чувствительным приемником совершенно безопасно, однако прождать сбор хендшейков можно не один час. Продвинутые атаки на беспроводные сети занимают минуты и строятся на том, что ты действуешь активно. Например, рассылаешь пакеты деавторизации, вынуждая легальные клиенты атакуемой точки доступа выполнять постоянный реконнект. Либо ты просто глушишь реальную AP, подменяя ее в эфире своим «злым клоном», и напрямую получаешь пароли от доверчивых клиентских устройств. Все это требует мощного передатчика, но где его взять?

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

Работая на высокой мощности, адаптер быстро перегревается (особенно в режиме инжекта пакетов), вызывает помехи связи и представляет некоторую опасность для здоровья. Поэтому не ставь сразу 33 dBm. Попробуй начать с 22 и плавно увеличивать значение. Шкала здесь логарифмическая, поэтому прибавка на пару-тройку dBm дает двукратное повышение мощности.
По умолчанию все Wi-Fi-модули стартуют на минимальной мощности. В таком режиме они запускаются согласно стандарту ISO 3166, который отражен в базе данных беспроводных устройств. В Linux это

Пожалуйста Авторизуйтесь или Зарегистрируйтесь для просмотра скрытого текста.

. В Kali Linux (включая Nethunter) она находится по адресу /lib/crda/regulatory.bin. Этот файл считывает агент центральной базы данных регламентированных настроек (Central Regulatory Domain Agent — CRDA) и отправляет ядру информацию о том, какая мощность допустима для передатчика в данном регионе. Таким образом, в ОС действует общая системная настройка мощности передатчика для любых Wi-Fi-адаптеров на конкретном беспроводном интерфейсе.

По умолчанию обычно задан какой-нибудь код из региона EMEA, где разрешаются только жалкие 100 мВт (20 дБм). Поэтому, подключив любой донгл, ты будешь тщетно слать пакеты deauth и пытаться заглушить найденные AP. Мало кто услышит твои 20 дБм, а львиная доля команд отфильтруется целевыми устройствами как помехи.

Посмотреть текущий регион, доступные каналы и разрешенные пределы мощности можно командой iw list, однако ее выдача получается очень длинной (на несколько экранов).


Смотрим параметры беспроводных устройств
Быстро проверить MAC-адрес и заданную мощность передатчика удобнее командой iw <имя_интерфейса> info.


Экспресс-проверка настроек
Во времена BackTrack можно было просто взять адаптер посерьезнее (например, от Alfa Network) и сразу получить прибавку мощности. Дело в том, что в них изначально был прошит такой региональный код, который позволяет использовать большую мощность. Например, код «BO» — Боливия. Когда-то там была разрешена мощность передатчиков IEEE 802.11b/g/n до 2000 мВт (33 дБм). Это в двадцать раз больше значения по умолчанию в России. Сейчас в Боливии действует ограничение в 30 дБм (1000 мВт), но это все равно на порядок лучше дефолтных настроек.

Сегодня региональные настройки ужесточились, а одна и та же модель обзавелась парой-тройкой ревизий. Поэтому каждая покупка «Альфы» превратилась в лотерею. Можно нарваться на удешевленную ревизию или просто грубую подделку. Напрашивается вывод: надо вручную сменить регион, подключить «Альфу» или другой проверенный адаптер, задать более высокую мощность передатчика и наслаждаться жизнью. Действительно, в большинстве дистрибутивов для пентеста это делается просто. Я специально проверил пять разных: Kali, BugTraq II, Backbox, Cyborg и Matriux. Везде команда смены региона и увеличения мощности сработала буквально в пять строк.

Какие-то особенности были только в Backbox. Название беспроводного интерфейса в нем выглядит как wlxmac, где вместо mac — адрес адаптера, записанный в нижнем регистре. Утилита macchanger отрабатывает корректно, однако название интерфейса остается прежним. Это надо учесть в последней команде его активации (см. далее по тексту).


Хитрое название wlan в Backbox
Общий принцип софтового увеличения мощности передатчика простой, но тут важны детали. Поэтому разберем его пошагово на примере Kali linux.

Практически все команды выполняются от имени суперпользователя. Запусти терминал под рутом или дописывай sudo в начале каждой строки.
Сначала мы определяем имена беспроводных интерфейсов командой iwconfig. Видим, к примеру, wlan0 и wlan1 — как понять, какой из них нужный? Кроме многократно описанных красноглазых способов, есть и другие — быстрые и гарантированные.

Первый способ: физически отключаем USB-донгл и пишем команду iwconfig заново. Тот интерфейс, которого теперь нет в списке, и был нужным.


Определяем беспроводные интерфейсы.
Второй способ: вызываем wifite. Он хоть и считается примитивным скриптом, зато сразу спрашивает, какой интерфейс использовать, и обозначает их уже более внятно — с указанием чипсета и задействованных драйверов. Если в названии wlan есть известный чипсет и окончание USB — он и нужен.


Смотрим номер wlan в wifite
После того как определились с названием беспроводного интерфейса, отключаем его.

На этом этапе желательно сменить MAC-адрес адаптера.

Ключ -r задает случайный адрес, а если хочешь указать определенный, используй ключ --mac. Например:

macchanger --mac=2F:4B:D9:33:89:0B wlan1
Напоминаю, что первые три цифры указывают производителя. Их список (OUI vendor list) смотри

Пожалуйста Авторизуйтесь или Зарегистрируйтесь для просмотра скрытого текста.

или

Пожалуйста Авторизуйтесь или Зарегистрируйтесь для просмотра скрытого текста.

. Он пригодится, если ты хочешь сымитировать подключение от устройства другого вендора или не слишком выдавать атаку полностью случайным MAC-адресом. К тому же многие AP сегодня сверяются с OUI и просто отказывают в подключении клиентам с MAC-адресом неизвестного производителя.

Теперь задаем название региона, в котором разрешены передатчики мощностью 30 дБм или выше.

Помимо BO, для повышения мощности также успешно используются регионы AM, BZ, GR, GY, NZ, VE и другие (полный список смотри в файле db.txt, ссылка на него есть во врезке далее по тексту). Опционально проверяем новую установку региона:

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

Поднимаем его:

и проверяем результат:

Должно получиться примерно так, как на скриншоте ниже.


Если не удалось, то внимательно проверь команды еще раз. Также учти, что общую настройку iw reg set может игнорировать драйвер. На моей практике такое встречалось с драйвером ath9k htc и чипом Qualcomm Atheros AR9271. На нем, в частности, производится модель AWUS036NHA. Поэкспериментируй с другими драйверами, адаптерами и дистрибутивами Linux.

Настройки wireless regdb прописаны в файле

Пожалуйста Авторизуйтесь или Зарегистрируйтесь для просмотра скрытого текста.

. В нем ты увидишь регионы и с большей разрешенной мощностью, но не спеши радоваться. Даже если выставить 36 дБм, то совсем не факт, что твой донгл от этого станет дальнобойнее. Большинство USB-адаптеров не дотягивают и до 30 дБм из-за чисто конструктивных ограничений. Дальнейшее устранение софтовых лимитов им не поможет.​
После увеличения мощности можно гораздо эффективнее выполнять атаки на AP с использованием деаутентификации подключенных к ним клиентов. В примере ниже до целевой точки доступа примерно 20 метров и две кирпичные стены. Без увеличения мощности передатчика ее клиенты просто не слышат команды deauth. Если поднять мощность донгла с 20 до 30 дБм, то принудительное отключение ее клиентов и захват хендшейка занимает менее восьми минут.


Успешный захват хендшейка
Если пароль словарный, то он быстро вскроется на том же ноутбуке. Иначе попробуй сбрутить его на видюхах (см. статью «

Пожалуйста Авторизуйтесь или Зарегистрируйтесь для просмотра скрытого текста.

») или в каком-нибудь онлайновом сервисе.


Подбор пароля в EDPR

Проверка хендшейка и его брут в облаке
Также тебе может пригодиться онлайновый конвертер

Пожалуйста Авторизуйтесь или Зарегистрируйтесь для просмотра скрытого текста.

и

Пожалуйста Авторизуйтесь или Зарегистрируйтесь для просмотра скрытого текста.

. Преобразовать .cap в .pcap можно с помощью tshark:

tshark -F libpcap -w <имя_файла_pcap> -r <имя_файла_cap>
Ранее мы писали о взломе Wi-Fi со смартфона, но выполнять продвинутые атаки с него очень неудобно (а некоторые — технически невозможно). Нужно каким-то образом подключать сразу два внешних адаптера и (желательно) внешний аккумулятор, а потом долго мучиться с повышением мощности их передатчиков. В пять строк это уже не сделаешь — там семь кругов ада с make/install и отловом ошибок. Если тебе хочется хайтек-мазохизма, я как-нибудь поделюсь с тобой этой болью, а сейчас лучше возьми ноутбук и запусти десктопную Kali.


Узнаём имена скрытых сетей.
Имя беспроводной сети (SSID или ESSID) иногда специально скрывают для ее защиты. Действительно, так отсекаются неофиты и поток желающих подключиться к AP заметно уменьшается: если цель не видно, многие ее не атакуют. Однако узнать SSID довольно просто: эта информация постоянно транслируется в эфир.

Каждый клиент указывает в «рукопожатии» имя сети (SSID), ее цифровой идентификатор (BSSID, обычно совпадает с MAC AP) и свой MAC-адрес. Поэтому атака деавторизации успешно используется для выяснения SSID скрытых сетей. Если удастся перехватить хендшейк при подключении легального клиента к выбранной точке доступа, то мы сразу узнаем ее имя. Достаточно написать простейшую команду и подождать.

Подразумевается, что твой донгл определяется как wlan1, его мощность уже увеличена, а сам он переключен в режим монитора. Если еще нет, то просто выруби его (ifconfig wlan1 down), и airodump-ng сам переведет его в monitor mode.

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

aireplay-ng -0 5 -a D8:FE:E3:XX:XX:XX wlan1
Этой командой мы отправили пять пакетов deauth всем клиентам точки доступа с MAC-адресом D8:FE:E3:и так далее (часть адреса, как обычно, скрываю, наслаждаясь паранойей). Результат не заставил себя ждать. Буквально сразу в основном окне airodump-ng появилось имя сети. Пока оно было скрыто, вместо имени отображалась его длина (в данном примере — шесть символов).


Быстро узнаем SSID скрытой сети

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

Однако нам важно другое: если клиентское устройство соединилось с выбранной точкой доступа, значит, оно гарантированно есть в ее «белом списке». Осталось кикнуть его прочь с целевой AP и присвоить его (открыто передаваемый в эфир) MAC-адрес своему адаптеру Wi-Fi. Чтобы успеть подключиться вместо доверенного девайса, команду деавторизации лучше запустить параллельно в другом окне терминала и отправлять их со второго донгла. Вот как это выглядит поэтапно на AP из примера выше.

  1. Поднимаем мощность адаптера, маскируем его MAC-адрес и переводим в режим монитора (см. первую часть статьи).
  2. Слушаем эфир:
В таблице будут отображаться точки доступа и MAC-адреса подключенных к ним клиентов (см. столбец «STATION» напротив нужной AP).


Узнаем MAC-адреса клиентов.
Присваиваем одному из своих донглов этот MAC-адрес.

macchanger --mac=64:DB:43:XX:XX:XX wlan1
Со второго адаптера шлем пакеты деавторизации.

aireplay-ng -0 5 -a D8:FE:E3:XX:XX:XX wlan1
Подключаемся первым адаптером, как только настоящий клиент отрубится от AP.


Выводы.
Для выполнения качественного пентеста беспроводных точек доступа необходимо приобрести пару USB-адаптеров Wi-Fi с подходящими чипами и доработать их. Подключить вместо штатных антенн направленные внешние и повысить мощность передатчика, увеличив значение txpower.

Скрытое имя беспроводной сети и фильтрация клиентов по MAC-адресам слабо препятствуют ее взлому. SSID и подходящие адреса из «белого списка» легко узнать, просто дождавшись очередного хендшейка или сразу выполнив атаку деавторизации.
 
Сверху