Использование John the Ripper для взлома рукопожатий Wi-Fi WPA/WPA2

Kali LinuxBeginner
Практиковаться сейчас

Введение

В этой лабораторной работе вы изучите процесс взлома паролей Wi-Fi WPA/WPA2 с использованием распространенного инструмента для тестирования на проникновение, John the Ripper. Хотя основная цель является образовательной, понимание этих методов имеет решающее значение для улучшения безопасности сети. Вы узнаете, как захватить рукопожатие WPA/WPA2, которое содержит необходимую информацию для офлайн-взлома паролей, а затем использовать специализированные инструменты для преобразования этого рукопожатия в формат, который может обрабатывать John the Ripper. Наконец, вы попытаетесь взломать пароль с помощью словарной атаки. Эта лабораторная работа также охватит основные уязвимости в WPA/WPA2 и предоставит лучшие практики для создания надежных паролей Wi-Fi для защиты ваших собственных сетей.

Захват рукопожатия WPA/WPA2

На этом этапе вы поймете концепцию захвата рукопожатия WPA/WPA2. В реальном сценарии это включает перевод вашего беспроводного адаптера в режим мониторинга и использование таких инструментов, как airmon-ng и airodump-ng, для захвата 4-стороннего рукопожатия, которое происходит при подключении клиента к точке доступа Wi-Fi. Это рукопожатие содержит необходимый криптографический материал для выполнения офлайн-атаки методом перебора (brute-force) или словарной атаки на пароль Wi-Fi.

Для целей этой лабораторной работы мы симулируем наличие файла захваченного рукопожатия. Скрипт setup уже создал фиктивный файл .cap с именем dummy_capture.cap в вашем каталоге ~/project. Этот файл представляет собой захваченный файл сетевого трафика, который содержал бы рукопожатие WPA/WPA2.

Чтобы проверить наличие этого фиктивного файла захвата, используйте команду ls.

ls -lh ~/project/dummy_capture.cap

Вы должны увидеть вывод, похожий на этот, указывающий на существование файла:

-rw-r--r-- 1 labex labex 48 Oct 26 08:00 /home/labex/project/dummy_capture.cap

Этот шаг фокусируется на концептуальном понимании, поскольку фактическая манипуляция сетевым интерфейсом выходит за рамки этой виртуальной лабораторной среды.

Преобразование рукопожатия в формат John the Ripper

На этом этапе вы узнаете, как преобразовать захваченный файл рукопожатия WPA/WPA2 (обычно файл .cap) в формат, который может понять John the Ripper. John the Ripper по умолчанию не обрабатывает файлы .cap напрямую для взлома WPA/WPA2. Вместо этого ему требуется определенный формат хэша, часто генерируемый такими инструментами, как aircrack-ng или hcxpcaptool. Пакет aircrack-ng включает утилиту, которая может извлечь рукопожатие WPA/WPA2 из файла .cap и вывести его в формате, подходящем для взлома.

Для этой лабораторной работы скрипт setup уже создал фиктивный файл .hccapx с именем dummy_handshake.hccapx в вашем каталоге ~/project. Этот файл имитирует вывод такого процесса преобразования, содержащий извлеченную информацию рукопожатия в формате, готовом для John the Ripper.

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

ls -lh ~/project/dummy_handshake.hccapx

Вы должны увидеть вывод, похожий на этот, подтверждающий существование файла:

-rw-r--r-- 1 labex labex 78 Oct 26 08:00 /home/labex/project/dummy_handshake.hccapx

Этот шаг подчеркивает необходимость преобразования формата перед использованием John the Ripper для взлома WPA/WPA2.

Взлом рукопожатия WPA/WPA2 с помощью John the Ripper

На этом этапе вы будете использовать John the Ripper для попытки взломать пароль WPA/WPA2 из преобразованного файла рукопожатия. John the Ripper — это мощный инструмент для взлома паролей, поддерживающий различные режимы атак, включая словарные атаки. Словарная атака включает в себя перебор списка распространенных паролей (словарный файл) против захваченного рукопожатия.

Вы будете использовать команду john с опцией --wordlist, чтобы указать файл словарного списка и путь к файлу рукопожатия. Скрипт setup уже создал простой словарный список с именем wordlist.txt в вашем каталоге ~/project.

Выполните следующую команду, чтобы попытаться взломать фиктивное рукопожатие:

john --format=wpapsk --wordlist=~/project/wordlist.txt ~/project/dummy_handshake.hccapx
  • --format=wpapsk: Указывает формат хэша, который должен ожидать John the Ripper, что является WPA-PSK для рукопожатий Wi-Fi.
  • --wordlist=~/project/wordlist.txt: Указывает John путь к словарному файлу, содержащему потенциальные пароли.
  • ~/project/dummy_handshake.hccapx: Путь к преобразованному файлу рукопожатия.

После выполнения команды John the Ripper попытается взломать пароль. Если пароль из словарного списка совпадет, он будет отображен. Для нашего фиктивного рукопожатия и словарного списка должен быть найден пароль labex123.

Пример вывода:

Using default input encoding: UTF-8
Loaded 1 password hash (WPA-PSK [PBKDF2-SHA1 256/256 AVX2])
Will run till completion
Press 'q' or Ctrl-C to abort, almost any other key for status
labex123         (dummy_essid)
1g 0:00:00:00 DONE (2023-10-26 08:00) 100% (ETA: 08:00) 1.000g/s 5.000p/s 5.000c/s 5.000C/s labex123
Session completed.

Строка labex123 (dummy_essid) указывает, что пароль labex123 был успешно взломан для ESSID (имени сети) dummy_essid.

Понимание уязвимостей безопасности WPA/WPA2

На этом этапе вы получите более глубокое понимание присущих WPA/WPA2 (Wi-Fi Protected Access II) уязвимостей безопасности, которые делают возможным взлом рукопожатия. Хотя WPA2 стал значительным улучшением по сравнению с предшественниками (WEP и WPA), он по-прежнему подвержен определенным типам атак, в первую очередь офлайн-словарным атакам на 4-стороннее рукопожатие.

Основная уязвимость заключается в том, что Pairwise Master Key (PMK), из которого выводится Pairwise Transient Key (PTK), основан на Pre-Shared Key (PSK) и nonce, которыми обмениваются во время рукопожатия. Если злоумышленник захватит это 4-стороннее рукопожатие, он может выполнить офлайн-атаку методом полного перебора или словарную атаку на PMK. Это означает, что злоумышленнику не нужно активно подключаться к сети, чтобы перебирать разные пароли; ему достаточно захваченного рукопожатия.

Ключевые моменты для понимания:

  • Офлайн-атака: Процесс взлома происходит офлайн, что означает, что злоумышленник может взять захваченное рукопожатие и перебрать миллионы паролей, не взаимодействуя с целевой сетью. Это затрудняет обнаружение.
  • Словарная атака/Полный перебор: Успех этой атаки в значительной степени зависит от надежности пароля Wi-Fi. Если пароль слабый, распространенный или входит в словарь, его можно взломать относительно быстро.
  • Отсутствие прямого доступа: Злоумышленник не получает прямого доступа к сети в процессе взлома; он только получает пароль.

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

Внедрение надежных паролей Wi-Fi

На этом заключительном этапе вы узнаете и поймете лучшие практики внедрения надежных паролей Wi-Fi для снижения рисков взлома рукопожатия WPA/WPA2. Как было продемонстрировано на предыдущих этапах, слабый пароль является основной уязвимостью, позволяющей этим атакам увенчаться успехом.

Для эффективной защиты вашей сети Wi-Fi рассмотрите следующие рекомендации по созданию надежных паролей:

  1. Длина: Стремитесь к паролю длиной не менее 12-16 символов. Более длинные пароли значительно увеличивают время и вычислительные ресурсы, необходимые для взлома.
  2. Сложность: Используйте комбинацию прописных и строчных букв, цифр и специальных символов (например, !@#$%^&*). Это значительно затрудняет словарные атаки и атаки методом полного перебора.
  3. Уникальность: Не используйте одни и те же пароли для разных сервисов или сетей. Если один пароль скомпрометирован, другие останутся в безопасности.
  4. Избегайте распространенных слов/фраз: Не используйте словарные слова, распространенные фразы, личную информацию (например, дни рождения, имена) или последовательные числа (например, 12345678). Это первые цели в словарных атаках.
  5. Парольные фразы: Рассмотрите возможность использования парольной фразы — последовательности несвязанных слов. Например, CorrectHorseBatteryStaple намного надежнее и легче запоминается, чем P@$$w0rd!.
  6. Регулярные изменения: Хотя это и не строго необходимо для очень надежных паролей, периодическое изменение пароля Wi-Fi (например, раз в год) может добавить дополнительный уровень безопасности.

Следуя этим рекомендациям, вы можете значительно повысить безопасность вашей сети Wi-Fi и сделать ее чрезвычайно трудной для взломщиков, даже если им удастся захватить рукопожатие.

Резюме

В этой лабораторной работе вы получили практический опыт и теоретические знания по безопасности Wi-Fi WPA/WPA2. Вы изучили процесс захвата рукопожатия WPA/WPA2 (концептуально), преобразования его в формат, подходящий для John the Ripper, а затем использования John the Ripper для взлома пароля посредством словарной атаки. Кроме того, вы изучили основные уязвимости безопасности, которые делают эти атаки возможными, и, что самое важное, поняли критическую важность внедрения надежных, сложных и уникальных паролей Wi-Fi для защиты ваших сетей от подобных уязвимостей. Эти знания имеют решающее значение как для понимания наступательной безопасности, так и для защиты сети.