Как взломать wifi wpa2
Автор статьи, перевод которой мы сегодня публикуем, хочет рассказать о том, как взломать Wi-Fi-сеть, для защиты которой используются протоколы WPA и WPA2.
Статья написана исключительно в ознакомительных целях
Аппаратное и программное обеспечение
Я буду пользоваться дистрибутивом Kali Linux, установленным на VMware Workstation.
Кроме того, в моём распоряжении имеется Wi-Fi-адаптер Alfa AWUS036NH 2000mW 802.11b/g/n. Вот его основные характеристики:
- Стандарты: IEEE 802.11b/g/n, USB 2.0.
- Скорости передачи данных: 802.11b — 11 Мбит/с, 802.11g — 54 Мбит/с, 802.11n — 150 Мбит/с.
- Разъём для подключения антенны: 1 x RP-SMA.
- Частотные диапазоны: 2412
Шаг 1
Нужно запустить Kali Linux в VMware и подключить к системе Wi-Fi-адаптер Alfa AWUS036NH, выполнив следующую последовательность действий:
Подключение Wi-Fi-адаптера к ОС, работающей в VMware
Шаг 2
Теперь обратите внимание на средства управления Wi-Fi-подключениями в Kali Linux.
Управление Wi-Fi-подключениями в Kali Linux
Шаг 3
Откройте терминал и выполните команду airmon-ng для вывода сведений об интерфейсах беспроводных сетей.
Вывод сведений об интерфейсах беспроводных сетей
Шаг 4
Как видно, интерфейсу назначено имя wlan0 . Зная это, выполним в терминале команду airmon-ng start wlan0 . Благодаря этой команде Wi-Fi-адаптер будет переведён в режим мониторинга.
Перевод адаптера в режим мониторинга
Шаг 5
Теперь выполните такую команду: airodump-ng wlan0mon . Это позволит получить сведения о Wi-Fi-сетях, развёрнутых поблизости, о том, какие методы шифрования в них используются, а так же — о SSID.
Сведения о Wi-Fi-сетях
Шаг 6
Теперь воспользуемся такой командой:
В ней [channel] надо заменить на номер целевого канала, [bssid] — на целевой BSSID, [monitor interface] — на интерфейс мониторинга wlan0mon .
В результате моя команда будет выглядеть так:
Выполнение команды
Шаг 7
Теперь нужно подождать. Утилита airodump будет мониторить сеть, ожидая момента, когда кто-нибудь к ней подключится. Это даст нам возможность получить handshake-файлы, которые будут сохранены в папке /root/Desktop .
Вот как выглядит работа утилиты до того момента, как кто-то подключился к исследуемой сети.
Программа наблюдает за сетью
А вот что происходит после того, как то-то к сети подключился, и программе удалось получить нужные данные.
Получение необходимых данных
Шаг 8
Вы можете пропустить этот шаг в том случае, если у вас уже есть handshake-файлы. Здесь описан альтернативный способ получения соответствующих данных.
Речь идёт об использовании следующей команды:
Здесь [router bssid] нужно заменить на BSSID Wi-Fi-сети, а [client bssid] — на идентификатор рабочей станции.
Эта команда позволяет получить handshake-данные в том случае, если вам не хочется ждать момента чьего-либо подключения к сети. Фактически, эта команда атакует маршрутизатор, выполняя внедрение пакетов. Параметр -0 2 можно заменить другим числом, например, указать тут число 50, или большее число, и дождаться получения handshake-данных
Использование утилиты aireplay-bg
Шаг 9
Теперь воспользуемся такой командой:
- -a2 означает WPA.
- -b — это BSSID сети.
- -w — это путь к списку паролей.
- *.cap — это шаблон имён файлов, содержащих пароли.
После выполнения этой команды начнётся процесс взлома пароля. Если пароль будет успешно взломан — вы увидите что-то, похожее на следующий скриншот.
Данная статья подготовлена исключительно в целях повышения навыков личной информационной безопасности. Проект WiFiGid категорически против применения информации на чужих сетях без получения предварительного согласия их владельцами. Давайте жить дружно и не вредить другим людям!
Нам понадобится специальный внешний модуль, которые работает из-под операционной системы Kali Linux и поддерживает принцип приёма и передачи пакетов «Backtrack». Подобный модуль работает в режиме «promiscuous mode», то есть он принимает весь трафик, которые витает вокруг вас без разбора.
Инструкция по подбору пароля
- Теперь очень внимательно посмотрите в строку «monitor mode enabled on». В конце этой строке будет переименованное название вашего модуля. У меня это mon0, но у вас может быть другое значение. Так что в последующих программах вместо mon0 ставьте название вашего модуля. Прописываем команду:
- Я взял третью позицию на скриншоте выше. Теперь система перехватывает пакеты только от этого роутера. Теперь нужно сделать так, чтобы любое авторизованное устройство с этим роутером было отключено и снова попыталось авторизоваться. Именно на этом этапе мы сможет перехватить пакет и позже его расшифровать. Прописываем команду в новом терминале:
- Надеюсь, вы догадались, что MAC-адрес нужно вписывать свой, остальные значение ставьте по умолчанию.
- Теперь в первом терминале вы должны увидеть строку «WPA handshake» с кодом. Вот именно этот пакет нам и был нужен.
- Открываем ещё один терминал и прописываем команду для взлома этого WPA handshake.
aircrack-ng WPAcrack-01.cap -w /pentest/passwords/wordlists/darkc0de
Теперь нужно просто ждать, пока система перебором найдет нужный пароль от вай-фай сети. Тут все зависит от скорости вашего процессора. Кстати, некоторые в переборе используют именно GPU, а не CPU, так скорость при этом в несколько раз выше. Если ключ будет найден, то вы увидите надпись «KEY FOUND», а рядом будет заветный пароль.
Этичный хакинг и тестирование на проникновение, информационная безопасность
Пароль от Wi-Fi не передаётся в открытом виде ни на каком этапе, тем не менее, рукопожатие содержит достаточно информации для подбора пароля перебором. Как уже было сказано, в рукопожатии должно быть четыре элемента. Посмотреть состав рукопожатия можно различными программами, например, с помощью Wireshark, для этого в программе имеется фильтр «eapol»:
Как можно увидеть на скриншоте, захваченное рукопожатие содержит все четыре элемента. Рукопожатия могут содержать не все элементы. Например, эти рукопожатия содержат только первый и второй элементы:
А это только второй и третий:
Если был захвачен третий пакет обмена (M3) – это является доказательством, что пароль был правильным и, следовательно, рукопожатие для нас может быть отмечено как верифицированное (его ещё называют "authenticated" – аутентифицирующее рукопожатие).
С другой стороны, если мы обладаем только первым и вторым, мы не можем с уверенностью сказать, было ли установлено соединение, мы даже не можем сказать, был ли пароль правильным. Тем не менее, у таких половинчатых рукопожатий есть своё применение. Например, если вы видите, что Клиент отсылает зондирующие запросы (probe) в поисках своей ТД, то это обычно показывает ESSID, т.е. позволяет нам узнать имя сети, к которой хочет подключиться Клиент. Будучи атакующим, вы теперь можете настроить ТД с точно таким же ESSID. Если Клиент не проверяет MAC адрес (большинство не проверяют), он попытается подключиться к вашей ТД. Конечно соединение завершиться неудачей, поскольку ваша ТД не использует тот же пароль, который использует Клиент. Тем не менее, Клиент будет использовать корректный пароль. В результате получится так называемое «неаутентифицирующее» рукопожатие. Т.е. рукопожатие содержащее M1 и M2. Если вы успешно взломаете его, то вы узнаете истинный пароль от ТД к которой хочет подключиться клиент. Теперь вы можете заново поднять вашу ТД со взломанным паролем, и Клиент сможет успешной к ней подключиться. Это даст вам доступ к Клиенту из более «внутренней» сетевой позиции или позволит вам осуществить любую атаку человек-посередине. В качестве альтернативы вы можете подключиться к настоящей ТД, в случае, если вы знаете где она находится.
Чтобы увидеть Клиентов, которые не подключены ни к одной из доступных в радиусе точек доступа и которые ищут свою точку доступа:
В самом низу вы увидите не подключённых ни к кому клиентов.
Не подключённые к точке доступа клиенты (помечены как (not associated)) показываются внизу списка. Клиенты, отправляющие зондирующие запросы с BSSID (колонка Probe), могут быть целью этой атаки.
Поднимите WPA2 Wi-Fi сеть с точно таким же SSID (именем), как и точка доступа, которую ищет Клиент. Это можно сделать различными способами. Одним из самых простых является использование create_ap. Ваша точка доступа обязательно должна быть с паролем (иначе атака не получится), пароль можете выбрать любым.
Вам нужно захватить трафик на беспроводном сетевом интерфейсе. В Linux это можно сделать с TCPdump:
Полученный файл захвата можно напрямую взламывать в программе WPA2-HalfHandshake-Crack.
Текст статьи не является руководством к действию и публикуется для ознакомления с методами взлома и построения грамотной защиты. Напоминаем, что за преступления в сфере компьютерной информации предусмотрена ответственность по статье 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
Выбираем образ Kali Linux, назначаем количество ядер и ОЗУ для виртуальной машины и нажимаем на кнопку Импорт .
Рис. 2. Установка Kali Linux в VirtualBox
Запускаем Kali Linux и вводим логин kali и пароль kali .
Рис. 3. Ввод логина и пароля в Kali Linux
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 адаптера может отличаться.
Рис. 4. Включение беспроводного USB Wi-Fi адаптера в Kali Linux в VirtualBox Рис. 5. Wi-Fi адаптер из AliExpress за 150 руб., который использовался для мониторинга Wi-Fi
Узнаем имя Wi-Fi адаптера с помощью команды ifconfig или ip a .
Рис. 7. Запуск bettercap в Kali Linux
Начнем «слушать» Wi-Fi, введя в терминал wifi.recon on .
Рис. 8. Мониторинг Wi-Fi сетей с помощью bettercap в Kali Linux
Для просмотра списка обнаруженных сетей введем wifi.show .
Рис. 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
Четырехстороннее рукопожатие
Четырехстороннее рукопожатие (англ. four-way handshake) – механизм создания парного переходного ключа PTK для защиты трафика.
- временный ключ TK;
- ключ подтверждения ключа EAPOL;
- ключ шифрования EAPOL-key.
Самое важное рукопожатие – второе . В дополнение к нему необходимо первое и/или третье рукопожатие. Лучший минимальный вариант – второе и третье рукопожатия.
Рис. 11. Схема четырехстороннего рукопожатия точки доступа (AP) и клиента (STA)
Файл с рукопожатиями сохраняется в /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 меняются каждую сессию, поэтому выбираем рукопожатия, разделенные небольшим временным промежутком (десятки миллисекунд). Рукопожатия из разных сессий для взлома непригодны.
Рис. 12. Просмотр рукопожатий в программе WireShark
Как видно, мы получили первое, второе и третье рукопожатия. Выделим все рукопожатия EAPOL, файл с именем сети SSID (в нашем случае это Association Request) и нажмем File → Export Specified Packets .
Рис. 13. Экспорт рукопожатий в программе WireShark
Откроется диалоговое окно, в котором выберем Selected packets only и сохраним файл под названием hs.pcap .
Рис. 14. Сохранение рукопожатий в программе WireShark
7. Получаем пароль
Для начала, конвертируем файл hs.pcap в файл hs.hccapx (в команде новый файл пишется без расширения, только название):
Это нужно, чтобы программа по расшифровке хеша hashcat смогла прочесть файл. Она подбирает пароли с помощью ЦП и/или ГП.
Рис. 15. Конвертация из .pcap в .hccapx утилитой hashcat
8. Подбор по словарю
В Ubuntu установим hashcat командой:
Словарь – txt-файл с одним словом в каждой строке (рис. 16) Создадим или скачаем словарь (см. доп. материалы) и поместим его в /home/kali , либо /home/USERNAME для Ubuntu.
Рис. 16. Пример словаря для атаки по словарю
Пароль от моей точки доступа: qwerty12 . Он присутствует в словаре для подбора пароля.
Чтобы начать перебор по словарю введем команду:
Расшифруем значения опций:
--force – скрыть ошибки.
-m2500 – тип взламываемого хеша WPA-EAPOL-PBKDF2.
-a0 – атака по словарю. Можно без этого флага, так как он работает по умолчанию.
/home/kali/hs.hccapx – файл хеша.
В случае успеха статус взлома примет значение Cracked и мы получим пароль (рис. 17).
Рис. 17. Успешный взлом пароля атакой по словарю утилитой hashcat
9. Брутфорс и атака по маске
При брутфорсе (англ. brute force) перебираются все возможные символы. Используя маски, мы сужаем диапазон подбираемых символов, например, только числа или только числа и строчные символы. Таким образом на перебор требуется меньше времени. Этот подход удобен, если мы примерно знаем, как человек придумывает пароли. Из атаки по маске можно сделать брутфорс, включив в перебор все символы.
Для атаки по маске введем следующую команду:
Значения опций:
-m2500 – тип взламываемого хеша, WPA-EAPOL-PBKDF2.
-a3 – атака по маске.
-1?l – маска по прописным латинскими буквам (прописная буква L ).
-2?d – маска по цифрам.
hs.hccapx – файл хеша.
?1werty?2?2 – предполагаемый пароль с неизвестными символами. В данном случае задача упрощена для экономии времени.
Рис. 18. Успешный взлом пароля атакой по маске утилитой hashcat
Команда для расчета через видеокарту:
Здесь -D2 – устройство для расчета, ГП.
Номер | Устройство |
1 | ЦП |
2 | ГП |
3 | FPGA, DSP, Co-Processor |
10. Комбинаторная атака
В комбинаторной атаке используются два словаря. Слова из двух словарей конкатенируются. Если словари содержат следующие слова:
то после их соединения получим такой словарь:
Запустим комбинаторную атаку:
/home/kali/dic1.txt – первый словарь.
/home/kali/dic2.txt – второй словарь.
Рис. 19. Успешный взлом пароля комбинаторной атакой утилитой hashcat
11. Куда сохраняется пароль
После удачной расшифровки пароль выводится на экран и записывается в файл
Откроем его в текстовом редакторе, чтобы посмотреть результат:
12. Онлайн-сервисы по расшифровке хеша
Платформа passcrack.online получила пароль за 5 минут (рис. 21). С отправки в онлайн-сервисы лучше начинать расшифровку, так как вычислительных ресурсов у них больше, чем у домашнего компьютера.
Рис. 21. Результаты взлома пароля с помощью сервиса passcrack.online
13. Разница между WPA2 и WPA3
В июле 2018 года Wi-Fi Alliance выпустил протокол беспроводной безопасности WPA3. Посмотрим, чем он отличается от своего предшественника.
- уязвим к взлому через WPS;
- возможен перехват рукопожатий и получение пароля с помощью брутфорса;
Преимущества WPA3 в сравнении с WPA2:
- устранена уязвимость четырехстороннего рукопожатия за счет применения технологии SAE (Simultaneous Authentication of Equals), которая защищает от офлайн атак по словарю.
- поддержка PMF (Protected Management Frames) для контроля целостности трафика;
- шифрование 192 бит в режиме WPA3-Enterprise и 128 бит в WPA3-Personal;
- упрощенная настройка IoT-устройств.
Общее уязвимое место у WPA 2 и 3 – WPS (Wi-Fi Protected Setup).
14. Дополнительные материалы
Файл .hccapx для практики
На сайте hashecat доступен для скачивания файл .hccapx , на котором можно попрактиковаться в расшифровке. Зашифрованный пароль: hashcat! .
Онлайн-конвертер .pcap в .hccapx
Словари
Онлайн-платформы для расшифровки хеша
Бесплатные
-
– принимает файлы .cap и .hccapx; – принимает только файлы .hccapx размером не более 5Кб. Ссылка на страницу загрузки файла для расшифровки придет в письме после регистрации; – бесплатно, если пароль простой «12345678» или он есть в словаре из 20 млн слов. В ином случае используется брутфорс на ГП 9$/час. – распределенная система; – распределенная система;
Платные
-
– в случае успеха нужно заплатить 0.001BTC; – 100 руб. за пароль.
Чем открыть большой текстовой файл
Бесплатные программы для чтения и редактирования больших txt-файлов.
Чтение
Редактирование
-
(Windows, macOS, Linux); (Windows, macOS, Linux); (Windows); (Windows); (Windows);
Полезные ссылки
-
– Awesome-список по взлому/безопасности Wi-Fi. – еще один Awesome-список по Wi-Fi;
Законодательство
- Статья 274 УК РФ о преступлениях в сфере компьютерной информации.
Саундтреки из сериала «Мистер Робот»
Мы научились мониторить Wi-Fi сети, проводить деаутентификацию подключенных к точке доступа устройств, перехватывать рукопожатия, получать пароли методом подбора по словарю и брутфорсом. Также узнали разницу между WPA2 и WPA3, и определили их общее уязвимое место.
Несколько рекомендаций, повышающих информационную безопасность:
- использовать сложный пароль и периодически менять его;
- отключить функцию WPS в роутере;
- регулярно обновлять прошивку роутера;
- использовать VPN (виртуальная частная сеть): OpenVPN, WireGuard и прочие.
Источники
[1] Самль, С. Д., Роуминг в защищенных беспроводных сетях с использованием IEEE 802.11i. «Научно-практический электронный журнал Аллея Науки» №6(22) 2018.
[2] Кухта А. И., Анализ методов защиты беспроводной сети Wi-Fi. «Молодой исследователь Дона» №2(23) 2020.
Атаки на основе обнаруженных критических уязвимостей в WPA2, получившие обобщенное название KRACK (Key Reinstallation Attacks), используют уязвимости в самом стандарте Wi-Fi, а не в отдельных продуктах или решениях, поэтому угрозе подверженная любая реализация WPA2. Другими словами, любое современное устройство, поддерживающее Wi-Fi, является уязвимым к атакам KRACK, не зависимо от производителя или того, какой операционной системой оно управляется: Android, iOS, macOS, Linux, Windows, OpenBSD и другие.
Взлом WPA2: хронология событий
Мэти Ванхоф (Mathy Vanhoef), бельгийский исследователь из Левенского католического университета, обнаружил данную проблему в конкретных решениях ряда производителей еще в прошлом году. Около года он занимался ее исследованием, после чего в середине июля 2017 года уведомил об уязвимости поставщиков оборудования, которое тестировал. Общение с последними убедило его, что проблема носит не локальный характер, связанный с конкретной ошибкой в реализации некоторых решений, а глобальный, относящийся к самому протоколу.
Любое современное устройство, поддерживающее WiFi, является уязвимым к атакам KRACK.
В известность был поставлен координационный центр CERT/CC по решениям проблем безопасности в Интернете, чьи специалисты присоединились к исследованию и взяли на себя управление по координации совместных действий широкого круга вовлеченных в процесс участников. В частности, CERT/CC разослал 28 августа 2017 года уведомления об уязвимости большому количеству производителей по всему миру, согласовал даты разглашения информации и выхода обновлений. Однако, не все прошло гладко, как хотелось исследователям. В частности, часть компаний и организаций, которые о проблеме узнали еще в июле, поспешили выпустить «молчаливые» обновления раньше согласованного срока раскрытия информации. Широкого резонанса они не вызвали, но повысили риски обнаружения проблемы сторонними лицами раньше намеченного срока.
Видео с демонстрацией взлома WPA2 с помощью атаки KRACK.
Общие сведения об уязвимости в протоколе WPA2
Исследователями была обнаружена возможность при установлении соединения между точкой доступа и клиентом проводить манипуляции с трафиком согласования (также часто называемым «рукопожатием» от англ. handshake) для стандарта WPA2 (Wi-Fi Protected Access II), а также более старой версии стандарта WPA. Они смогли добиться повторного использования параметра nonce и сессионного (сеансового) ключа в результате инициации процедуры переустановки ключа шифрования со стороны атакуемого клиента или точки доступа (в некоторых случаях).
Для документирования этих уязвимостей в протоколе WPA2 координационным центром CERT/CC были назначены следующие идентификаторы CVE:
- CVE-2017-13077: reinstallation of the pairwise key in the Four-way handshake;
- CVE-2017-13078: reinstallation of the group key in the Four-way handshake;
- CVE-2017-13079: reinstallation of the integrity group key in the Four-way handshake;
- CVE-2017-13080: reinstallation of the group key in the Group Key handshake;
- CVE-2017-13081: reinstallation of the integrity group key in the Group Key handshake;
- CVE-2017-13082: accepting a retransmitted Fast BSS Transition Reassociation Request and reinstalling the pairwise key while processing it;
- CVE-2017-13084: reinstallation of the STK key in the PeerKey handshake;
- CVE-2017-13086: reinstallation of the Tunneled Direct-Link Setup (TDLS) PeerKey (TPK) key in the TDLS handshake;
- CVE-2017-13087: reinstallation of the group key (GTK) when processing a Wireless Network Management (WNM) Sleep Mode Response frame;
- CVE-2017-13088: reinstallation of the integrity group key (IGTK) when processing a Wireless Network Management (WNM) Sleep Mode Response frame.
Суть атаки KRACK
Основная атака KRACK направлена против четырехэтапного рукопожатия протокола WPA2. Оно выполняется тогда, когда клиент хочет присоединиться к защищенной сети Wi-Fi, и используется для подтверждения того, что и клиент, и точка доступа имеют правильные учетные данные. Также четырехэтапное рукопожатие служит для утверждения нового сгенерированного ключа шифрования, который будет использоваться для шифрования всего последующего трафика.
Подобный принцип осуществления защищенного соединения (четырехэтапное рукопожатие) определяется текущей версией набора стандартов беспроводной связи IEEE 802.11, является обязательным при сертификации Wi-Fi-устройств и решений и, соответственно, используется всеми современными защищенными Wi-Fi-сетями. Это означает, что все защищенные WiFi-сети в мире уязвимы (с определенной вариативностью) к атакам KRACK. Так, например, атака работает против персональных и корпоративных сетей Wi-Fi, против старого стандарта WPA и современного WPA2, и даже против сетей, которые построены на использовании только защищенного стандарта шифрования ключей AES.
Последствия взлома WPA2
Атаки KRACK эффективны не зависимо от производителя и операционной системы, которой управляется устройство.
Влияние атаки может иметь особо катастрофичные последствия, если жертва использует протоколы шифрования WPA-TKIP или GCMP, а не AES-CCMP. В этом случае повторное использование nonce позволяет атакующему не только расшифровать, но и изменять передаваемые пакеты. Более того, GCMP использует один и тот же ключ аутентификации в обоих направлениях, и этот ключ может быть воссоздан благодаря данной атаке. Стоит также отметить, что протокол шифрования GCMP лежит в основе стандарта IEEE 802.11ad (более известный как Wireless Gigabit или WiGig), который, как ожидается, получит широкое распространение в ближайшие пару лет.
Направление, в котором пакеты могут быть скомпрометированы, зависит от рукопожатия, которое атаковано. При обычной атаке четырехэтапного рукопожатия злоумышленник получает возможность расшифровывать (и в некоторых случаях подделывать) пакеты, отправленные клиентом. Но при атаке рукопожатия стандарта IEEE 802.11r (Fast BSS Transition, известного также как быстрый роуминг), можно расшифровывать (и в некоторых случаях подделывать) пакеты, отправленные от точки доступа клиенту.
Атака KRACK имеет тяжелые последствия, если направлена против утилиты «wpa_supplicant» версии 2.4 и выше, которую обычно используют WiFi-клиенты под управлением разных дистрибутивов Linux, а также Android версии 6.0 и выше. Дополнительная проблема заключается в том, что ключ шифрования обнуляется, то есть очищается из памяти после установки в первый раз. Это облегчает атакующему перехват и управление трафиком, передаваемый устройствами под управлением этими операционными системами. Поэтому, как ожидается, процесс обновления смартфонов и других Android-устройств, который позволит эффективно противодействовать данной уязвимости, затянется. Таким образом, около 50% современных Android-устройств во всем мире крайне уязвимы к обнаруженной проблеме.
Стоит также отметить, что атака KRACK не способна определить пароль, каким защищена Wi-Fi-сеть. Также эта уязвимость не сможет как-либо помочь определить (полностью или даже частично) новый ключ шифрования (в том числе и выдать себя за точку доступа или клиента для получения нового сессионного ключа), который будет установлен во время следующего незаблокированного сеанса четырехэтапного рукопожатия. Таким образом, речь идет не о взломе протокола безопасности WPA2, чей процесс четырехэтапного рукопожатия остается надежно защищенным при условии ограничения на установление ключа шифрования одним разом, а о уязвимости, которая может быть нивелирована для конкретного устройства или решения с помощью обратно совместимого обновления.
Как защитится от уязвимости KRACK?
Собственно, так как проблема может быть решена с помощью обратно совместимого обновления (то есть обновленный, а значит уже защищенный клиент будет корректно, полноценно и безопасно для себя взаимодействовать с точкой доступа без установленного на ней обновления, как и наоборот), то речь о необходимости забыть о безопасном Wi-Fi до появления нового стандарта WPA3, к счастью, не идет.
Для полной защищенности от атаки KRACK достаточно установить обновления на все устройства, входящие в Wi-Fi-сеть (как точки доступа, так и клиентов).
Для полной защищенности от атаки KRACK достаточно установить обновления на все устройства, входящие в Wi-Fi-сеть (как точки доступа, так и клиентов) по мере появления соответствующих обновлений у производителей для конкретных решений. Обратите внимание, что обновление прошивки точки доступа не всегда может гарантировать безопасность подключенных к ней клиентских устройств без соответствующего патча, если об этом прямо не сказано в описании к обновлению прошивки точки доступа. Другими словами, внимательно читайте, от каких атак вас защитит свежее обновление прошивки, а от каких нет. И, конечно же, старайтесь устанавливать соответствующее обновление сразу, как только оно появится у вашего производителя.
Уже очевидно, что обновить операционные системы устройств и встроенное программное обеспечение точек доступа в вашей беспроводной сети удастся далеко не всегда. В этом, скорее всего, заключается основная проблема от обнаруженной уязвимости. И под угрозой не только устаревшие устройства и решения, которые уже не поддерживаются производителями, но и ставшие внезапно уязвимыми миллионы IoT-устройств, чье общение по защищенной Wi-Fi-сети часто происходит без какого-либо дополнительного шифрования, и которые могут так и никогда не получить своего обновления безопасности.
Что делать с этой проблемой, у специалистов по безопасности пока нет четкого ответа. Следите за нашими публикациями, мы будем держать вас в курсе событий.
Подписывайтесь на рассылку, делитесь статьями в соцсетях и задавайте вопросы в комментариях!
Читайте также: