Команда airmon-ng позволяет задействовать одноименный сценарий командной оболочки для перевода Wi-Fi адаптера в режим мониторинга (Monitor mode). Активация режима мониторинга позволяет прослушивать беспроводной трафик и осуществлять аудит беспроводных сетей. Кроме того, она способна перевести адаптер из режима мониторинга в режим обычной работы (Managed mode), вывести список сетевых интерфейсов, соответствующих Wi-Fi адаптерам, и завершить работу приложений и служб, потенциально препятствующих использованию адаптера в режиме мониторинга. Данный сценарий поставляется в комплекте утилит aircrack-ng для аудита безопасности беспроводных сетей и использует такие системные утилиты, как iw и ethtool со специальными параметрами для совместимости с максимальным количеством Wi-Fi адаптеров. Разумеется, вам понадобится Wi-Fi адаптер с поддержкой режима мониторинга на уровне драйвера для его успешного использования. Ну и не стоит забывать о том, что для работы с аппаратным обеспечением ПК необходимы права суперпользователя.
Базовый синтаксис команды выглядит следующим образом:
# airmon-ng [режим] [имя-интерфейса]
Команда может вызываться как без параметров, так и с параметрами. В случае вызова без параметров будет выведен список беспроводных сетевых интерфейсов. В случае вызова с параметрами должен использоваться один из следующих режимов: start с именем сетевого интерфейса адаптера для перевода последнего в режим мониторинга, stop с именем сетевого интерфейса адаптера для перевода последнего в режим обычной работы, check для вывода списка приложений и служб, потенциально препятствующих использованию сетевого интерфейса в режиме мониторинга или check kill для автоматического завершения работы данных приложений и служб. Двумя классическими параметрами сценария являются параметры --verbose и --debug для вывода меньшего или большего объема диагностических сообщений соответственно.
В первую очередь вам придется установить пакет утилит aircrack-ng; проще всего это сделать с помощью терминала путем исполнения соответствующей вашему дистрибутиву команды.
Команда для Linux Mint и Ubuntu
# apt install aircrack-ng
Команда для Fedora Workstation
# dnf install aircrack-ng
Для вывода списка сетевых интерфейсов следует использовать сценарий airmon-ng без каких-либо параметров:
# airmon-ng
PHY Interface Driver Chipset
phy0 wlx003676021e61 mt7601u Ralink Technology, Corp. MT7601U
Помимо имени сетевого интерфейса (wlx003676021e61 в столбце Interface) выведен идентификатор физического беспроводного устройства (phy0 в столбце PHY), название модуля ядра Linux с драйвером для устройства (mt7601u в столбце Driver) и название чипа Wi-Fi адаптера (Ralink Technology, Corp. MT7601U в столбце Chipset).
Примечание: идентификаторы физических беспроводных устройств выдаются как Wi-Fi, так и Bluetooth адаптерам. Рассматриваемый сценарий предназначен для Wi-Fi адаптеров.
Для перевода Wi-Fi адаптера в режим мониторинга следует использовать режим работы сценария start и указать имя соответствующего адаптеру сетевого интерфейса.
# airmon-ng start wlx003676021e61
Found 4 processes that could cause trouble.
Kill them using 'airmon-ng check kill' before putting
the card in monitor mode, they will interfere by changing channels
and sometimes putting the interface back in managed mode
PID Name
920 avahi-daemon
923 NetworkManager
960 wpa_supplicant
962 avahi-daemon
PHY Interface Driver Chipset
phy0 wlx003676021e61 mt7601u Ralink Technology, Corp. MT7601U
wlx003676021e61 is soft blocked, please run "rfkill unblock 0" to use this interface.
rfkill error, unable to start wlx003676021e61
Would you like to try and automatically resolve this? [y/n] y
(monitor mode enabled)
Мы использовали имя сетевого интерфейса wlx003676021e61, соответствующее нашему Wi-Fi адаптеру.
В первую очередь сценарий вывел список служб и приложений, которые могут потенциально препятствовать корректному использованию сетевого адаптера в режиме мониторинга, и предложил воспользоваться режимом сценария airmon-ng check kill для того, чтобы застраховаться от проблем со сменой каналов и работой адаптера в режиме мониторинга. В современных дистрибутивах Linux завершение работы перечисленных программных продуктов не является обязательным.
Далее сценарий вывел список доступных беспроводных интерфейсов и сообщение о том, что адаптер отключен на программном уровне. Это объясняется тем, что адаптер был вставлен в USB-разъем и не использовался для подключения к каким-либо беспроводным сетям. Для того, чтобы включить его, следует нажать клавиши Y и Enter. Если же вы предпочитаете делать все самостоятельно, вы можете осуществить аналогичную операцию вручную — нажмите клавиши N и Enter, после чего выполните следующую команду:
# rfkill unblock 0
Примечание: утилита rfkill работает с идентификаторами физических беспроводных устройств, поэтому в данном случае 0 — это phy0.
После выполнения команды следует снова попытаться перевести адаптер в режим мониторинга.
Если же адаптер отключен на аппаратном уровне, вам придется найти переключатель на корпусе ноутбука и включить его.
Сообщение (monitor mode enabled) говорит о том, что адаптер был переведен в режим мониторинга. В актуальных версиях Linux после перевода адаптера в режим мониторинга имя сетевого интерфейса не изменяется, в более старых — изменяется. В любом случае, при изменении имени сетевого интерфейса сценарий выведет соответствующее сообщение. Ну а сама активация режима мониторинга позволяет прослушивать беспроводной трафик и осуществлять аудит беспроводных сетей, к примеру, с помощью утилит airodump-ng и aireplay-ng.
Для перевода Wi-Fi адаптера в режим обычной работы достаточно использовать режим работы сценария stop и указать имя соответствующего адаптеру сетевого интерфейса.
# airmon-ng stop wlx003676021e61
PHY Interface Driver Chipset
phy0 wlx003676021e61 mt7601u Ralink Technology, Corp. MT7601U
(monitor mode disabled)
Сообщение (monitor mode disabled) указывает на то, что адаптер переведен в обычный режим работы.
Для вывода списка приложений и служб, которые могут потенциально помешать работе с Wi-Fi адаптером в режиме мониторинга, достаточно использовать режим работы сценария check:
# airmon-ng check
Found 4 processes that could cause trouble.
Kill them using 'airmon-ng check kill' before putting
the card in monitor mode, they will interfere by changing channels
and sometimes putting the interface back in managed mode
PID Name
920 avahi-daemon
923 NetworkManager
960 wpa_supplicant
962 avahi-daemon
Как очевидно из вывода, сценарий обнаружил 4 потенциально конфликтных исполняющихся программных продукта и предложил использовать команду для завершения их работы. Эта команда:
# airmon-ng check kill
Настоятельно не рекомендую использовать ее за исключением тех случаев, когда режим мониторинга либо вообще не работает, либо начинает работать некорректно по истечении некоторого времени.