Raspberr Pi 3でUSB無線LANアダプタ「WLI-UC-AG300N」をモニタモードにより動作させる

Raspberr Pi 3(バージョン:2018-04-18-raspbian-stretch)でBUFFALOのUSB無線LANアダプタ「WLI-UC-AG300N」をモニタモードで動作させます。Ubuntuでは、「Ubuntu 16.04 LTSでUSB無線LANアダプタ「WLI-UC-AG300N」をモニタモードにより動作させる」ですでに確認しました。

BUFFALOのUSB無線LANアダプタ「WLI-UC-AG300N」のセットアップ

次のコマンドでUSB無線LANアダプタ「WLI-UC-AG300N」の接続を確認します。「Bus 001 Device 006」に「WLI-UC-AG300N 」が接続されていることが確認できます。

$  lsusb
Bus 001 Device 005: ID 0566:3107 Monterey International Corp. Keyboard
Bus 001 Device 004: ID 046d:c018 Logitech, Inc. Optical Wheel Mouse
Bus 001 Device 006: ID 0411:012e BUFFALO INC. (formerly MelCo., Inc.) WLI-UC-AG300N Wireless LAN Adapter
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

ネットワークへの接続状況を次のコマンドで確認します。デバイス名「wlan1」がUSB無線LANアダプタ「WLI-UC-AG300N」に割り当てられたことが確認できます。

デバイス名「wlan1」とUSB無線LANアダプタ「WLI-UC-AG300N」の対応は、MACアドレスを使用します。BUFFALOのMACアドレスのベンダコードは「4C:E6:76:xxxx」になっています。ifconfigコマンドを使ってMACアドレスを調べ、対応するベンダーコードのデバイス名を探します。他の方法として「sudo airmon-ng」コマンドを実行して、表示されたInterfaceを調べます。

$ iwconfig
wlan0     IEEE 802.11  ESSID:"xxx"
          Mode:Managed  Frequency:2.447 GHz  Access Point: xxxx
          Bit Rate=72.2 Mb/s   Tx-Power=31 dBm
          Retry short limit:7   RTS thr:off   Fragment thr:off
          Power Management:on
          Link Quality=40/70  Signal level=-70 dBm
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:0   Missed beacon:0

lo        no wireless extensions.

eth0      no wireless extensions.

wlan1     IEEE 802.11  ESSID:"xxx"
          Mode:Managed  Frequency:2.447 GHz  Access Point: xxx
          Bit Rate=72.2 Mb/s   Tx-Power=20 dBm
          Retry short  long limit:2   RTS thr:off   Fragment thr:off
          Power Management:off
          Link Quality=46/70  Signal level=-64 dBm
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:30   Missed beacon:0

ESSIDが設定できていることから、USB無線LANアダプタ「WLI-UC-AG300N」のドライバがインストールできているようです。

USB無線LANアダプタ「WLI-UC-AG300N」のモニタモードの設定

aircrack-ngは、無線LANのパスワードを解析するために使われるツールで、次のコマンドでインストールします。「airmon-ng start」により、USB無線LANアダプタ「WLI-UC-AG300N」をモニタモードに設定します。「mac80211 monitor mode vif enabled for [phy1]wlan1 on [phy1]wlan1mon」のメッセージにより、「wlan1mon」でモニタモードが可能になったことが通知されています。

$ sudo apt-get install aircrack-ng
$ sudo airmon-ng check kill

Killing these processes:

  PID Name
  375 wpa_supplicant
  513 dhcpcd
 2046 wpa_supplicant

$ sudo airmon-ng start wlan1


PHY     Interface       Driver          Chipset

phy0    wlan0           brcmfmac        Broadcom 43430
phy1    wlan1           rt2800usb       BUFFALO INC. (formerly MelCo., Inc.) WLI-UC-AG300N Wireless LAN Adapter
grep: -P は1バイトの UTF-8 ロケールのみサポートします
Channel 10 does not appear to be supported by wlan1mon hardware, defaulting to channel 3.


                (mac80211 monitor mode vif enabled for [phy1]wlan1 on [phy1]wlan1mon)
                (mac80211 station mode vif disabled for [phy1]wlan1)

次のコマンドでネットワーク構成を確認します。デバイス名「wlan1mon」が「Mode:Monitor」(モニタモード)で動作していることが確認できます。

$ iwconfig
wlan1mon  IEEE 802.11  Mode:Monitor  Frequency:2.422 GHz  Tx-Power=20 dBm
          Retry short  long limit:2   RTS thr:off   Fragment thr:off
          Power Management:off

wlan0     IEEE 802.11  ESSID:"xxx"
          Mode:Managed  Frequency:2.447 GHz  Access Point: xxx
          Retry short limit:7   RTS thr:off   Fragment thr:off
          Power Management:on
          Link Quality=42/70  Signal level=-68 dBm
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:0   Missed beacon:0

lo        no wireless extensions.

eth0      no wireless extensions.

モニタモード動作の確認

モニタモードで動作させるには、airodump-ngコマンドを使用します。airodump-ngコマンドのパラメータを次に示します。

airodump-ng --channel aa --bssid bb -w cc mon0
 aa:対象のチャンネル
 bb:APのMACアドレス
 cc:保存ファイル名

コンソール端末から次のコマンドでモニタモードを起動します。

$ sudo airodump-ng  wlan1mon

すると今、現在いる所の周囲のWifiのAP(Access point)情報(SSID、チャネル、MACアドレス等)が次のように表示され、情報が追加/更新されていきます。

モニタモード動作の確認

airodump-ng 上段 検出されたアクセスポイント一覧が表示されます。

  • BSSID … ルーターの MAC アドレス
  • ENC, CIPHER, AUTH … Wi-Fi の暗号方式
  • ESSID … SSID (アクセスポイント名)

airodump-ng 下段 検出されたクライアント一覧が表示されます。

  • BSSID … 接続先ルーターの MAC アドレス
  • STATION … 接続元クライアント(スマホやラップトップ等)の MAC アドレス
  • Probe … 接続しようとしている SSID(その場に該当アクセスポイントが見つからない場合等にここが表示される)

airodump-ngのパラメータと表示される内容については、「Airodump-ng」を参照してください。