Текст статьи не является руководством к действию и публикуется для ознакомления с методами взлома и построения грамотной защиты. Напоминаем, что за преступления в сфере компьютерной информации предусмотрена ответственность по статье 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 и нажимаем на кнопку Импортировать
.
Выбираем образ Kali Linux, назначаем количество ядер и ОЗУ для виртуальной машины и нажимаем на кнопку Импорт
.
Запускаем Kali Linux и вводим логин kali
и пароль kali
.
2. Установка aircrack-ng
Aircrack-ng – набор инструментов для мониторинга, пентестинга Wi-Fi сетей и взлома WEP, WPA 1 и 2. В Kali утилита aircrack-ng предустановлена. В Ubuntu выполним следующую команду:
3. Установка bettercap
Bettercap – программа для мониторинга и спуфинга. Установим bettercap из исходников. Введем в терминале следующие команды:
Перейдем в каталог с bettercap:
4. Мониторинг сети
Если к компьютеру подключен USB Wi-Fi адаптер, включим его следующим образом: Устройства
→ USB
→ MediaTek 802.11 n WLAN
. Название Wi-Fi адаптера может отличаться.
Узнаем имя Wi-Fi адаптера с помощью команды ifconfig
или ip a
.
В нашем случае адаптер называется wlan0
.
Сначала отключим ненужные процессы:
Затем переключим адаптер в режим мониторинга:
Запустим bettercap следующей командой:
Начнем «слушать» Wi-Fi, введя в терминал wifi.recon on
.
Для просмотра списка обнаруженных сетей введем wifi.show
.
5. Получение рукопожатий
Выберем цель – точка доступа NX531J
. Попробуем получить рукопожатия (англ. handshake) между точкой доступа NX531J
и подключенным к ней устройством. Ждем, когда клиент отключится и подключится снова, либо принудительно отключим его командой деаутентификации: wifi.deauth MAC-адрес точки доступа
MAC-адрес – уникальный идентификатор сетевого устройства. Его значение берем из столбца BSSID. В нашем случае: wifi.deauth 90:c7:aa:bb:cc:dd
.
Повторяем эту команду, пока не перехватим рукопожатия.
wifi.deauth *
и wifi.deauth all
отключают все устройства на всех точках доступа.
Четырехстороннее рукопожатие
Четырехстороннее рукопожатие (англ. four-way handshake) – механизм создания парного переходного ключа PTK для защиты трафика.
PTK содержит:
- временный ключ TK;
- ключ подтверждения ключа EAPOL;
- ключ шифрования EAPOL-key.
Самое важное рукопожатие – второе. В дополнение к нему необходимо первое и/или третье рукопожатие. Лучший минимальный вариант – второе и третье рукопожатия.
Файл с рукопожатиями сохраняется в /root/bettercap-wifi-handshakes.pcap
. Скопируем его в домашнюю директорию:
6. Выбор нужных рукопожатий
Чтобы выбрать интересующие нас рукопожатия и экспортировать их в отдельный файл, нам понадобится программа для анализа сетевых протоколов WireShark.
В Ubuntu установим WireShark:
Введем в терминале команду wireshark
. Откроется программа с графическим интерфейсом. Нажмем Сtrl+O
и откроем файл с рукопожатиями bettercap-wifi-handshakes.pcap
Отфильтруем данные по мак-адресу wlan.addr==90:c7:aa:bb:cc:dd
и отсортируем по времени, кликнув по столбцу Time
. Также можно отсортировать по номеру No.
. Значения ANonce и SNonce меняются каждую сессию, поэтому выбираем рукопожатия, разделенные небольшим временным промежутком (десятки миллисекунд). Рукопожатия из разных сессий для взлома непригодны.
Как видно, мы получили первое, второе и третье рукопожатия. Выделим все рукопожатия EAPOL, файл с именем сети SSID (в нашем случае это Association Request) и нажмем File
→ Export Specified Packets
.
Откроется диалоговое окно, в котором выберем Selected packets only
и сохраним файл под названием hs.pcap
.
7. Получаем пароль
Для начала, конвертируем файл hs.pcap в файл hs.hccapx (в команде новый файл пишется без расширения, только название):
Это нужно, чтобы программа по расшифровке хеша hashcat смогла прочесть файл. Она подбирает пароли с помощью ЦП и/или ГП.
8. Подбор по словарю
В Ubuntu установим hashcat командой:
Словарь – txt-файл с одним словом в каждой строке (рис. 16) Создадим или скачаем словарь (см. доп. материалы) и поместим его в /home/kali
, либо /home/USERNAME
для Ubuntu.
Пароль от моей точки доступа: qwerty12
. Он присутствует в словаре для подбора пароля.
Чтобы начать перебор по словарю введем команду:
Расшифруем значения опций:
--force
– скрыть ошибки.
-m2500
– тип взламываемого хеша WPA-EAPOL-PBKDF2.
-a0
– атака по словарю. Можно без этого флага, так как он работает по умолчанию.
/home/kali/hs.hccapx
– файл хеша.
/home/kali/dic.txt
– словарь.
В случае успеха статус взлома примет значение Cracked и мы получим пароль (рис. 17).
Тип атаки | Пример команды |
Словарь | 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) перебираются все возможные символы. Используя маски, мы сужаем диапазон подбираемых символов, например, только числа или только числа и строчные символы. Таким образом на перебор требуется меньше времени. Этот подход удобен, если мы примерно знаем, как человек придумывает пароли. Из атаки по маске можно сделать брутфорс, включив в перебор все символы.
Для атаки по маске введем следующую команду:
Значения опций:
-m2500
– тип взламываемого хеша, WPA-EAPOL-PBKDF2.
-a3
– атака по маске.
-1?l
– маска по прописным латинскими буквам (прописная буква L).
-2?d
– маска по цифрам.
hs.hccapx
– файл хеша.
?1werty?2?2
– предполагаемый пароль с неизвестными символами. В данном случае задача упрощена для экономии времени.
? | Символы |
l (прописная буква L) | abcdefghijklmnopqrstuvwxyz |
u | ABCDEFGHIJKLMNOPQRSTUVWXYZ |
d | 0123456789 |
h | 0123456789abcdef |
H | 0123456789ABCDEF |
s | !"#$%&'()*+,-./:;<=>?@[\]^_`{|}~ |
a | ?l?u?d?s |
b | 0x00 – 0xff |
Команда для расчета через видеокарту:
Здесь -D2
– устройство для расчета, ГП.
Номер | Устройство |
1 | ЦП |
2 | ГП |
3 | FPGA, DSP, Co-Processor |
10. Комбинаторная атака
В комбинаторной атаке используются два словаря. Слова из двух словарей конкатенируются. Если словари содержат следующие слова:
то после их соединения получим такой словарь:
Запустим комбинаторную атаку:
Здесь:
/home/kali/dic1.txt
– первый словарь.
/home/kali/dic2.txt
– второй словарь.
11. Куда сохраняется пароль
После удачной расшифровки пароль выводится на экран и записывается в файл ~/.hashcat/hashcat.potfile
.
Откроем его в текстовом редакторе, чтобы посмотреть результат:
12. Онлайн-сервисы по расшифровке хеша
Также хеш был отправлен в бесплатный онлайн-сервис по расшифровке хеша onlinehashcrack.com и через 12 часов 6 минут пришло письмо, что пароль получен (рис. 20).
Платформа passcrack.online получила пароль за 5 минут (рис. 21). С отправки в онлайн-сервисы лучше начинать расшифровку, так как вычислительных ресурсов у них больше, чем у домашнего компьютера.
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
Словари
- wpa2-wordlists – GitHub;
- SecLists – GitHub;
- Probable-Wordlists – GitHub;
- naive-hashcat – GitHub, файл rockyou.txt, 14 300 000 слов
- wordlists – GitHub, 460 000 слов;
- english-words – GitHub;
- md5this.com – пароль к архивам md5this.com;
- Rocktastic12a – 1.37 ГБ;
- crackstation.net;
- wirelesshack.org;
- wpa-sec.stanev.org.
Онлайн-платформы для расшифровки хеша
Бесплатные
- 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-файлов.
Чтение
- Large Text File Viewer (Windows);
- klogg (Windows, macOS, Linux);
- LogExpert (Windows);
- loxx (Windows);
- readfileonline.com (Web).
Редактирование
- Vim (Windows, macOS, Linux);
- Emacs (Windows, macOS, Linux);
- Notepad++ (Windows);
- Large File Editor (Windows);
- GigaEdit (Windows);
Полезные ссылки
- wifi-arsenal – Awesome-список по взлому/безопасности Wi-Fi.
- Awesome Learn Wifi Security – еще один Awesome-список по Wi-Fi;
Законодательство
- Статья 274 УК РФ о преступлениях в сфере компьютерной информации.
Саундтреки из сериала «Мистер Робот»
- Яндекс.Музыка – часть 1, 2, 3, 4, 5, 6, 7;
- Spotify – часть 1, 2, 3, 4, 5, 6, 7 и все треки;
- iTunes – часть 1, 2, 3, 4, 5, 6, 7;
- YouTube – часть 1&2, 3, 4, 5, 6, 7.
Мы научились мониторить Wi-Fi сети, проводить деаутентификацию подключенных к точке доступа устройств, перехватывать рукопожатия, получать пароли методом подбора по словарю и брутфорсом. Также узнали разницу между WPA2 и WPA3, и определили их общее уязвимое место.
Несколько рекомендаций, повышающих информационную безопасность:
- использовать сложный пароль и периодически менять его;
- отключить функцию WPS в роутере;
- регулярно обновлять прошивку роутера;
- использовать VPN (виртуальная частная сеть): OpenVPN, WireGuard и прочие.
Источники
[1] Самль, С. Д., Роуминг в защищенных беспроводных сетях с использованием IEEE 802.11i. «Научно-практический электронный журнал Аллея Науки» №6(22) 2018.
[2] Кухта А. И., Анализ методов защиты беспроводной сети Wi-Fi. «Молодой исследователь Дона» №2(23) 2020.
Комментарии