WPA / WPA2 — это следующая эволюция защищенной беспроводной сети, которая возникла после того, как WEP оказался небезопасным. Алгоритмы, используемые этими протоколами, намного более безопасны (WPA: TKIP и WPA2: CCMP / AES), что делает невозможным взлом сети, используя тот же подход, который мы использовали с WEP.
Взлом WPA / WPA2 основан на той же идее — отнюдь первоначальное четырехстороннее рукопожатие и применение атаки методом перебора для взлома зашифрованного пароля.
Чтобы проиллюстрировать этот пример, я еще раз буду использовать WLAN «LAB-test», на этот раз защищенный с помощью WPA2 с помощью следующего ключа — «F8BE4A2C». Как вы помните из предыдущих глав, успех и время, необходимое для перебора пароля, зависят от сложности пароля. Пароль, который я здесь использовал, достаточно слабый, чтобы его можно было взломать за относительно разумное время. В реальных условиях вы должны видеть только пароль длиной более 10 символов и включающий в себя все типы буквенно-цифровых знаков — таким образом, на его взлом потребуются годы.
Как и в прошлом примере, мы начнем с airodump-ng, чтобы пассивно собирать некоторую информацию о WLAN.
Как вы можете заметить, действительно, он имеет «LAB-тест» SSID, защищенный WPA2 с шифрованием CCMP. Клиент, подключенный к LAB-тесту, в настоящее время является моим другим ПК с MAC-адресом 84: A6: C8: 9B: 84:76.
Первый шаг — включить анализ трафика (на этот раз нас не волнуют пакеты данных). LAB-тест предназначен для сбора первоначального четырехстороннего рукопожатия между точкой доступа и беспроводным клиентом (мой ПК).
Как вы можете видеть ниже, каждый раз, когда новый пользователь присоединяется к сети, airodump прослушивает 4-стороннее рукопожатие.
Поскольку эти рукопожатия собраны в файле, мы готовы взломать пароль. Единственный отсутствующий элемент — это файл словаря с возможными паролями. Существует множество инструментов, которые вы можете использовать, например, john, crunch, или вы можете даже загрузить файл словаря из Интернета. В этом примере я покажу хруст, но не стесняйтесь экспериментировать со всеми решениями, которые вы можете найти. Помните, небо это предел.
Как видите, crunch может создать словарь для вас. Давайте предположим, что мы хотим иметь все пароли с цифрами и буквами длиной до 8 символов. И давайте предположим, что число может быть от 0 до 9 и буквы от A до F. Почему мы делаем это ограничения (предположение о пароле)? — потому что, если вы хотите, чтобы файл со всеми комбинациями паролей состоял из цифр 0-9, букв az и AZ, вам нужно пространство 18566719 ГБ (!!!).
Итак, сначала мы создаем все комбинации и помещаем их в файл словаря.
Затем мы ссылаемся на этот файл словаря при помощи утилиты aircrack, чтобы попытаться получить правильный ключ, как показано ниже:
Aircrack-ng обнаружил в файле 8 BSSID, поэтому он спрашивает вас — какой WLAN вы хотите взломать — я ссылался на номер 2 — сеть «LAB-test».
Проверка каждого из паролей по одному — очень долгий процесс. Время нахождения правильного пароля зависит от того, как далеко в файле словаря находится пароль (если вам повезет, вы можете найти пароль в своем первом предположении, если пароль указан в 1-й строке файла словаря). В этом примере, как вы можете видеть, я нашел пароль, но это заняло 8 часов и 47 минут (!!!). Использование пароля из 10 символов вместо 8 увеличит время, вероятно, до дней или, возможно, недели.
Следует помнить, что чем длиннее словарь, тем больше времени потребуется для взлома пароля. И, как я подчеркивал несколько раз ранее, если пароль довольно сложный и длинный, в вычислительном отношении вообще невозможно выполнить взлом (в ограниченное время, скажем, менее 10 лет).