Есть хендшейк что дальше
HackWare.ru
Этичный хакинг и тестирование на проникновение, информационная безопасность
Захват рукопожатий (handshake) в Kali Linux
Что такое рукопожатие (handshake — хендшейк)
С технической точки зрения, рукопожатие в беспроводных сетях — это обмен информацией между точкой доступа и клиентом в момент подключения клиента к ней. Эта информация содержит разнообразные ключи, обмен происходит в несколько стадий. Процесс подключения к беспроводной точке доступа неплохо документирован и вы можете найти по данному вопросу много информации, в том числе и на русском языке.
С практической точки зрения нам достаточно знать всего две очень простые вещи:
Все беспроводные точки доступа делают это
Расшифровка пароля из рукопожатия делается методом перебора (грубой силой, брутфорсингом). Именно поэтому расшифровка пароля в захваченном рукопожатии имеет вероятностный характер. Т.е. далеко не всегда заканчивается удачно.
Если у вас мощное железо и много времени, то ваши шансы увеличиваются.
Я считаю захват рукопожатий самой перспективной методикой взлома беспроводной точки доступа. Это мнение может показаться странным при том количестве новых техник по взлому WEP, WPS и при довольном низком проценте успешных взломов рукопожатий.
Дело в том, что количество точек доступа с включёнными WEP, WPS невелико. Благодаря просветительской деятельности (в том числе урокам подобным моим) самые обычные пользователи стали больше задумываться о безопасности, вникать в суть технологий и отключать уязвимые алгоритмы и стандарты.
Ещё одно наблюдение по мере накопления опыта: даже точки с включённым WPS иногда быстрее взломать захватом рукопожатия, чем ждать завершения работы Reaver или Penetrator-WPS. Дело в том, что если пользователь не задумался об отключении WEP, WPS, т. е. проявил безалаберность, то также высока вероятность неряшливости пользователя в выборе пароля — обычно это простые слова или фразы из словаря, которые довольно легко подбираются.
Вообще, можно сказать, что, формально, захватив рукопожатие, можно практически гарантированно взломать Wi-Fi, для этого нужно:
Как захватить хендшейк в Kali Linux
Алгоритм достаточно простой:
Предполагается, что вы уже знакомы со статьями
В противном случае, у вас могут быть вопросы по изложенному здесь материалу.
Внимание: название беспроводного интерфейса у вас может быть своё. Соответственно, вам нужно подправить команды, чтобы они работали на вашем компьютере:
Переводим карту в режим монитора
Смотрим доступные для атаки точки доступа
Я выбрал сеть Mial, её ВSSID 20:25:64:16:58:8C на канале 1. Поэтому я запускаю airodump-ng на первом канале
После ключа -w идёт префикс файла cap2 (это имя без расширения). В этот файл будет записано захваченное рукопожатие.
Можно ничего не делать — достаточно просто ждать, когда кто-то подключится или переподключится естественным образом. Если вы торопитесь, то можно форсировать процесс использованием атаки деаутентификация.
Для этого мы открываем новое окно терминала и набираем там команду:
Здесь -0 означает деаутентификация, 5 означает количество отправленных пакетов, -a 20:25:64:16:58:8C это ВSSID целевой ТД, а wlan0 — сетевой интерфейс в режиме монитора.
Результат не заставил себя долго ждать:
Надпись «WPA handshake: 20:25:64:16:58:8C» говорит нам о том, что рукопожатие уже захвачено.
Убеждаемся, что это действительно так:
Плюсы использования атаки деаутентификация:
Системы обнаружения вторжений и мониторинга в этот момент могут вас засечь. При пассивном ожидании рукопожатия вы остаётесь полностью невидимым для этих систем.
Захват рукопожатий на 5 ГГц (802.11a/h/j/n/ac)
По умолчанию, airodump-ng скачет по каналам с 1 по 14 — это каналы 2.4 ГГц (т.е. 802.11b/g/n).
Протоколы 802.11a/h/j/n/ac работают на 5 ГГц, сюда входят каналы с 34 по 180.
На самом деле, процесс захвата рукопожатий на 5 ГГц ничем особо не отличается. Просто нужно явно указать каналы.
Но прежде чем пытаться что-то захватить, давайте проверим, какие вообще частоты поддерживает ваша беспроводная карта. Поскольку если ваша карта не поддерживает 5 ГГц, то можно и не пытаться — результата не будет. Проверку можно сделать командой:
Не забывайте, что вместо wlan0 вам нужно указать имя вашего желаемого беспроводного интерфейса.
Т.е. моя беспроводная карта может работать на частоте 5 ГГц с каналами с 36 по 140. А также на частоте 2.4 ГГц с каналами с 1 по 13.
Ещё больше информации вам даст команда
Там очень много самых разнообразных сведений по вашей беспроводной карте.
Если ваша беспроводная карта поддерживает 5 ГГц, то можно продолжать. Чтобы «осмотреться» в радиовещании наберите:
Думаю, особо здесь объяснять нечего, опцию —channel мы уже использовали ранее. Можно вместо каналов указывать непосредственно частоты или диапазон частот, это делается с помощью ключа -C, например:
Ключ и опция -C 5170-5825 указывают частоты в Мегагерцах, которым соответствуют каналы с 36 по 165. Эта и предыдущая команда полностью равнозначны.
Если вам вдруг интересно, то вот номера каналов и соответствующие им частоты:
802.11b/g/n
Канал | Центральная частота (ГГц) |
---|---|
1 | 2,412 |
2 | 2,417 |
3 | 2,422 |
4 | 2,427 |
5 | 2,432 |
6 | 2,437 |
7 | 2,442 |
8 | 2,447 |
9 | 2,452 |
10 | 2,457 |
11 | 2,462 |
12 | 2,467 |
13 | 2,472 |
14 | 2,484 |
802.11a/h/j/n/ac
Канал | Частота (ГГц) |
---|---|
34 | 5,170 |
36 | 5,180 |
38 | 5,190 |
40 | 5,200 |
42 | 5,210 |
44 | 5,220 |
46 | 5,230 |
48 | 5,240 |
52 | 5,260 |
56 | 5,280 |
60 | 5,300 |
64 | 5,320 |
100 | 5,500 |
104 | 5,520 |
108 | 5,540 |
112 | 5,560 |
116 | 5,580 |
120 | 5,600 |
124 | 5,620 |
128 | 5,640 |
132 | 5,660 |
136 | 5,680 |
140 | 5,700 |
147 | 5,735 |
149 | 5,745 |
151 | 5,755 |
153 | 5,765 |
155 | 5,775 |
157 | 5,785 |
159 | 5,795 |
161 | 5,805 |
163 | 5,815 |
165 | 5,825 |
167 | 5,835 |
171 | 5,855 |
173 | 5,865 |
177 | 5,885 |
180 | 5,905 |
802.11y
Канал | Частота (МГц) | США | ||
---|---|---|---|---|
5 МГц | 10 МГц | 20 МГц | ||
131 | 3657,5 | Да | Нет | Нет |
132 | 3662,5 | Да | Нет | Нет |
132 | 3660,0 | Нет | Да | Нет |
133 | 3667,5 | Да | Нет | Нет |
133 | 3565,0 | Нет | Нет | Да |
134 | 3672,5 | Да | Нет | Нет |
134 | 3670,0 | Нет | Да | Нет |
135 | 3677,5 | Да | Нет | Нет |
136 | 3682,5 | Да | Нет | Нет |
136 | 3680,0 | Нет | Да | Нет |
137 | 3687,5 | Да | Нет | Нет |
137 | 3685,0 | Нет | Нет | Да |
138 | 3689,5 | Да | Нет | Нет |
138 | 3690,0 | Нет | Да | Нет |
Вот какие результаты я собрал вокруг себя:
Кстати, обратите внимание, что каналы по какой-то непонятной причине не отобразились.
Можно указать airodump-ng прыгать по всем каналам и не беспокоиться, что мы что-то упустили в каком-то диапазоне частот:
Кстати, это помогло определить канал для ТД на 5 ГГц — канал оказался сороковым:
Захват рукопожатия в 5 ГГц ничем не отличается:
Также можно использовать атаку деаутентификация, чтобы ускорить процесс.
Расшифровка рукопожатия в Kali Linux
Это отдельная наука. Расшифровка хендшейков «в лоб» может занять на порядок больше времени, чем эта же расшифровка, но с применением таких методик как: предварительный расчёт хешей, использование мощи графического процессора, использование словарей, использование масок и других приёмов, ускоряющих брутфорсинг.
Взлом WiFi пароля — расшифровка хендшейка.
Расшифровка хендшейка — непростой процесс и читатель наверняка уже давно понял, что взлом WPA даже при наличии качественного хендшейка и прямых рук атакующего похож на рулетку. Все зависит от изначальной сложности пароля. Благоприятного исхода никто гарантировать не может, но статистика нас радует и говорит что как минимум 20% WPA-сетей успешно подвергаются взлому, так что отчаиваться не стоит, вперед!
Расшифровка хендшейка — начало.
Полный цифровой восьмизнак имеет 10^8 = 100 млн комбинаций что уже само по себе немало. Кроме того, в базовый словарь закера должны в обязательном порядке входить слова, наиболее часто используемые в качестве паролей, например internet, password, qwertyuiop, имена и др., а так же их мутации с популярными суффиксами-удлинителями паролей (единоличным лидером в этой области является конечно же суффикс 123). Т.е. если пароль diana слишком короток для соответствия стандарту WPA, находчивый юзер в большинстве случаев дополнит его до diana123, заодно увеличивая таким образом (на его опытный взгляд) секретность пароля. Таких популярных суффиксов также известно несколько десятков.
Если самостоятельно собирать словарь влом (а смысл? Все собрано до нас) можно погуглить по ключевым словам wpa wordlist и скачать готовый словарь. Незабываем о таргетировании, ведь довольно наивно будет надеяться что расшифровка хендшейка продет гладко если будем юзать китайский хендшейк по русскому словарю и наоборот. Можно еще поискать подходящий на просторах интернета, благо их ешь чем хочешь.
используем crunch для генерации различных комбинаций из базового набора
Aircrack-ng
Подготовив какой-никакой качественный, на наш не очень опытный взгляд, словарь (например wordlist.txt) переходим к подбору пароля, то есть к расшифровке хендшейка. Запускаем aircrack-ng с дополнительными настройками:
И вот результат наших трудов:
Наш пароль нашелся за 3 секунды, вот это да.
На скрине выше aircrack-ng нашел пароль (а это было слово dictionary) всего лишь за 3 секунды. Для этого он перебрал 3740 возможных паролей со скоростью 1039 паролей в секунду. Все бы ничего, но здесь внимательный читатель должен изрядно напрячься, ведь ранее мы говорили о словаре в 250 млн возможных паролей! И 250*10^6 делим на 1039 и получаем… ОГО порядка 240 тыс секунд, а это 66 часов… Почти трое суток! Именно столько времени потребуется вашему ноутбуку для обсчета базового 2Гб словаря (полностью, но ведь все помнят про «Закон подлости»). Такие невменяемые временные промежутки обуславливаются вялой скоростью выполнения расчетов, продиктованой высокой вычислительной сложностью заложенных в процедуру аутентификации WPA алгоритмов. Что уже говорить о больших словарях, например полный цифровой девятизнак содержит уже 900 млн комбинаций и потребует пару недель вычислений чтобы убедиться что (как минимум) пароль не найден)
Такая лузерская ситуация не могла не беспокоить пытливые умы наших соотечественников и вскоре выход был найден. Для потоковых вычислений были задействованы GPU, то есть видеокарты. GPU (Graphic Processing Unit) — сердце вашего 3D-ускорителя, имеет чип с сотнями (и даже тысячами) потоковых процессоров, позволяющий распределить многомилионные но простые операции хеширования паролей и тем самым на порядки ускорить процесс расшифровки. Чтобы не быть голословным скажу, что разогнаный ATI RADEON HD 5870 способен достичь скорости в 100.000 паролей в секунду! Ощутимая разница, не так ли?
Расшифровка хендшейка средствами GPU
Конечно, подобные цифры свойственны только топовым адаптерам ATI RADEON (NVIDIA со своей технологией CUDA пока откровенно сливает ATI в плане скорости перебора WPA ввиду явных архитектурных преимуществ последних). Но за все приходится платить, хороший видеоакселлератор стоит дорого, И встречается как правило только у заядлых геймеров, или иначе — задротов.
В рамках статьи для новичков я не буду, пожалуй, углубляться в дебри настройки ATI SDK и pyrit под Linux, отмечу только что потрахаться придется долго и качественно. Да и обладателей топовых радеонов с нвидиями, не так уж и много, думаю они вполне самостоятельно разберутся. Ну или погуглят)
Как ни парадоксально, для подбора WPA-пароля с помощью GPU лучше всего подходит Windows, да да, именно он). Дело в том, что немалую роль в этом процессе играют драйвера видеоадаптеров, Windows-версиям которых разработчики уделяют куда больше внимания, чем драйверам под Linux. Ведь ориентируются они на потребности геймеров, много вы знаете любителей поиграться в комп с установленным линуксом? Подбор WPA-пароля под Windows умеют делать две программы — коммерческая Elcomsoft Wireless Security Auditor и консольная утилита hashcat-plus. Использование именно этих программ мы и рассмотрим далее, а заодно и сравним их характеристики, поговорим о плюсах и минусах обоих. Посмотрим с какой скоростью будет происходить расшифровка хендшейка в равных условиях, на одной системе для обоих программ.
Наличие последних рабочих драйвероввидеокарты в системе — обязательное условие. Как ставить дрова на видюху рассказывать не буду, раз вы сдесь то, уверен, вам это раз плюнуть.
Расшифровка хендшейка Elcomsoft Wireless Security Auditor
EWSA можно найти (и купить) на сайте разработчиков — www.elcomsoft.com, только учтите что пробная бесплатная версия по слухам не показывает найденный пароль. На просторах интернета можно найти ломаные варианты разного качества, только не забывайте об угрызения х совести которые вас будут мучать). Установка и настройка EWSA элементарна, можно сразу в меню выбрать русский язык, в настройках GPU убедитесь что ваши GPU видны программе и выбраны галочками (если GPU в списке не видны — у вас явно проблема с драйверами), а так же укажите программе пути к вашим словарям в настройках словарей.
Используем на всю потраченные деньги)
Мде… Могло бы быть и пошустрее))
В данном тесте EWSA показала скорость всего лишь 135.000 паролей в секунду, хотя исходя из конфигурации железа я ожидал увидеть цифру около четырехсот тысяч.
Расшифровка хендшейка EWSA
Сравним работу EWSA с ее по-настоящему бесплатным конкурентом — hashcat-plus. Качаем полный набор hashcat-gui с сайта автора и извлекаем архив в удобное место, она портативная. Запускаем hashcat-gui32.exe или hashcat-gui64.exe в зависимости от разрядности Windows и отвечаем на первый же вопрос какой GPU будем использовать — NVidia (CUDA) или ATI RADEON (вариант CPU only нас, очевидно, не устроит).
Двигаемся далее
Указываем программе наш *.hccap-файл в качестве Hash file для атаки, в окошко Word lists добавляем файлы словарей (стрелками можно выставить желаемый порядок их прохождения), выбираем WPA/WPA2 в качестве Hash type и жмем на Start.
Должно появиться консольное окно с запуском выбранной весии hashcat-plus и кучей параметров, и если все в порядке утилита приступит к работе. В процессе расчета можно выводить на экран текущий статус по нажатию клавиши ‘s’. Можно и приостанавливать процесс по нажатию ‘p’ или прервать по нажатию ‘q’. Если hashcat-plus вдруг найдет пароль она вас обязательно вам его покажет..
Результат — 392.000 паролей в секунду! И это очень хорошо согласуется с теоретической предполагаемой скоростью, исходя из конфигурации системы и проведенных карандашем расчетов.
Данный тест убедительно показывает, что hashcat-plus гораздо лучше масштабируем в случае использования нескольких GPU одновременно. Выбор за вами.
Весь приведенный выше материал опубликован с целью ликвидации безграмотности населения в области безопастности сетей, а не как руководство к действию. Помните что взлом частной сети — ПРЕСТУПЛЕНИЕ!
HackWare.ru
Этичный хакинг и тестирование на проникновение, информационная безопасность
Взлом рукопожатий (handshake) с использованием графического процессора в Windows
Использование графического процессора (видеокарты) позволяет ускорить перебор хешей, т. е. взлом паролей происходит быстрее. Причём разница не в процентах. Скорость перебора, в зависимости от конфигурации компьютера, может возрастать на один или два порядка (в десятки и в сотни раз быстрее).
Для брутфорсинга это очень важно. Хеши считаются незвламываемыми только от того, что перебор занимает слишком много времени. А если скорость увеличить в 100 раз? Если пароль длинный и для его перебора нужно 10 миллионов лет, то тот факт, что теперь мы можем подобрать его за 1 миллион лет нам погоды не делает. Нам это неважно — всё равно не успеем.
А если скорость перебора по словарю составляет, к примеру, 10 часов. Конечно, использование словаря не гарантирует подбор пароля. Но, с другой стороны, по соотношению успех/затраченное время словари показывают намного лучший результат. Так вот, если мы эти 10 часов заменим на один час или на шесть минут — то это уже намного интереснее. Освободившееся время можно потратить на проверку по большему словарю или же на анализ других хешей.
Большинство инструментов для тестирования на проникновение (проще говоря, для взлома) написаны для Linux. Именно там вся эта каша и варится: не выходя из Linux можно осуществить процесс по захвату рукопожатия, его очистке и проверке по словарю. Но у Линукса постоянные «трения» с проприетарными драйверами для видеокарт (а они необходимы в данном случае!). Для Kali Linux написаны большие инструкции по установке этих драйверов, которые у кого-то работают, а у кого-то и нет.
На Windows проприетарные драйвера установлены (практически) всегда. С этим проблем нет. А такая программа как Hashcat (использует видеокарту для перебора паролей) является кроссплатформенной. Думаю, вы уже поняли, что мы сейчас будем делать. Мы будем взламывать рукопожатие программой Hashcat, которая работает в Windows и использует графический процессор. Благо, недавние бенчмарки показали, что разницы по скорости между Linux и Windows в данном случае нет.
Установка Hashcat в Windows
Для работы программы необходимы драйверы графических карт:
Как правило, в Windows уже установлен драйвер для видеокарты.
Распакуйте архив. Это портативная программа, другой установки она не требует.
Для запуска используйте файл hashcat64.exe или hashcat32.exe в зависимости от битности вашей системы.
Программу нужно запускать в командной строке. Для этого откройте окно командной строки (Win+X – выберите «Командная строка») и перетащите туда исполняемый файл.
Либо в открывшемся окне командой строки перейдите в требуемую папку:
И в ней запустите требуемый файл:
Подготовка рукопожатий для Hashcat в Windows
Конвертация с помощью cap2hccapx (hashcat-utils)
Чтобы программа Hashcat смогла работать с захваченным рукопожатием, его нужно конвертировать в специальный формат. Для этого применяется программа cap2hccapx, которая входит в пакет hashcat-utils.
Переходим на официальный сайт https://github.com/hashcat/hashcat-utils/releases и скачиваем архив в названии которого отсутствуют слова Source code (исходный код), поскольку нам нужны исполнимые файлы.
Распаковываем программу — она является портативной, поэтому другой установки не требует.
Открываем командную строку и переходим в каталог этой программы:
Нам нужно конвертировать файл захвата рукопожатия в формат, понятный Hashcat.
Для его конвертирования в формат .hccapx с помощью cap2hccapx ам нужно использовать следующую команду:
Например, файл с захваченным рукопожатием сохранён с именем RT-733322.cap и я хочу сохранить файл в формате Hashcat с именем RT-733322.hccapx, тогда моя команда имеет вид:
Отлично, у меня всё получилось:
Онлайн сервис по конвертации рукопожатий
Если вам не хочется возиться с cap2hccapx, то вы можете воспользоваться онлайн севрисом: https://hashcat.net/cap2hccapx/
Это не рекомендуется для «чувствительных» данных.
Использование Hashcat в Windows
Перемещаем наш новый файл RT-733322.hccapx в каталог с Hashcat. В этот же каталог я помещаю файл со словарём (newrockyou.txt) В командной строке переходим в этот каталог:
Можно запускать перебор.
Атака по словарю на рукопожатие
Здесь newrockyou.txt — имя словаря (он размещён в том же каталоге, что и запускаемая программа), -m 2500 — атака на WPA/WPA2 пароль, а RT-733322.hccapx — наш файл, который мы получили после очистки и конвертации.
Атака брутфорсом на рукопожатие
В маске могут использоваться следующие символы.
К примеру, маска, означающая восемь цифр, это ?d?d?d?d?d?d?d?d.
Тогда команда, для запуска перебора по маске, означающей восемь цеифр, команда будет выглядить так:
Маска длиной воесемь символов, в которой встречаются только цифры и маленькие буквы:
Маска длиной от восьми до десяти символов, в которой стречаются цифры, большие и маленькие буквы:
Подробную справку по другим опциями и режимам программы Hashcat вы найдёте здесь.
На протяжении всего времени работы программы перед нами будет строка запроса:
Если нажать p, то перебор остановится, если после паузы нажать r, то перебор снова возобновится. Если нажать b, то будет пропущено текущее задание и программа перейдёт к следующему. Если задание только одно, то программа закончит свою работу. q означает закончить работу и выйти из программы.
Если ввести s, то увидите текущий статус:
Пример удачного взлома:
найденным паролем от Wi-Fi является 66666666.
говорит о том, что восстановлен один пароль.