家に落ちているWiFiドングルをMonitorモードにして飛びかうIEEE802.11フレームを覗いてみる
なぜそれをするのか
仕事ではしょっちゅうWiFiをMonitorモードでパケットとって、WiFiの暗号化強度の調査やCrack可否の可能性を報告したりするのだが、以下の理由でちょろっとメモしておく。
- MonitorモードになってくれるWiFiドングルばかりではない
- Ubuntuで余計なことせずにすんなり認識してくれるのが良い --(別に、WiFiの無線チップの型番とVID:PIDが分かれば普通に動かせるが、そんな一手間をかけることがクソめんどい)
- そういえば家に転がっているドングルってMonitorモードになるのかしら?
- ついでにコマンドいつも忘れるからメモしておこう
何をするのか
単にWiFiドングルをUbuntuにぶっさして、モニターモードにしてWiresharkでIEEE802.11フレームを見るというだけの話し。
どうするのか
挿す
うちに転がっていたのは以下。
- PLANEX
- VID:PID=2019:ab31
- GW-450D
- 11ac/n/a/g/b 433Mbps (え、ac使えるしこれ良い、仕事で使える)
挿しこんだ先は以下。
認識しているか見る
lsusb
するとか、dmesg | grep usb
する。
root@ubuntu:~# lsusb Bus 004 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 003 Device 006: ID 0e0f:0002 VMware, Inc. Virtual USB Hub Bus 003 Device 004: ID 0e0f:0002 VMware, Inc. Virtual USB Hub Bus 003 Device 020: ID 2019:ab31 PLANEX Bus 003 Device 003: ID 0e0f:0002 VMware, Inc. Virtual USB Hub Bus 003 Device 005: ID 0e0f:0003 VMware, Inc. Virtual Mouse Bus 003 Device 002: ID 0e0f:0002 VMware, Inc. Virtual USB Hub Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 002 Device 002: ID 0e0f:0002 VMware, Inc. Virtual USB Hub Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
root@ubuntu:~# dmesg | grep usb | tail -n20 [17209.410227] usb 3-2.1: Manufacturer: Planex [17209.410228] usb 3-2.1: SerialNumber: 1.0 [17209.738459] usb 3-2.1: reset high-speed USB device number 18 using xhci_hcd [17212.962750] usbcore: registered new interface driver mt76x0u [17233.536497] usb 3-2.1: USB disconnect, device number 18 [17267.412914] usb 3-2.1: new high-speed USB device number 19 using xhci_hcd [17267.461997] usb 3-2.1: New USB device found, idVendor=2019, idProduct=ab31, bcdDevice= 1.00 [17267.462004] usb 3-2.1: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [17267.462007] usb 3-2.1: Product: GW-450D [17267.462009] usb 3-2.1: Manufacturer: Planex [17267.462012] usb 3-2.1: SerialNumber: 1.0 [17267.761299] usb 3-2.1: reset high-speed USB device number 19 using xhci_hcd [17413.322695] usb 3-2.1: USB disconnect, device number 19 [17887.080169] usb 3-2.1: new high-speed USB device number 20 using xhci_hcd [17887.120467] usb 3-2.1: New USB device found, idVendor=2019, idProduct=ab31, bcdDevice= 1.00 [17887.120469] usb 3-2.1: New USB device strings: Mfr=1, Product=2, SerialNumber=3 [17887.120470] usb 3-2.1: Product: GW-450D [17887.120471] usb 3-2.1: Manufacturer: Planex [17887.120472] usb 3-2.1: SerialNumber: 1.0 [17887.400854] usb 3-2.1: reset high-speed USB device number 20 using xhci_hcd
Monitorモードにする
素晴らしい。挿すだけで認識される。
root@ubuntu:~# ifconfig ・・・ wlxcce1d5197ee7: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500 ether cc:e1:d5:19:7e:e7 txqueuelen 1000 (イーサネット) RX packets 0 bytes 0 (0.0 B) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 0 bytes 0 (0.0 B) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
IFを停止して、Monitorモードに変更してから、再度有効化する。
root@ubuntu:~# ifconfig wlx0022cfe64854 down
Monitorモードに変更する。
root@ubuntu:~# iwconfig wlx0022cfe64854 mode monitor root@ubuntu:~# iwconfig ens33 no wireless extensions. lo no wireless extensions. wlx0022cfe64854 IEEE 802.11 Mode:Monitor Tx-Power=7 dBm Retry short limit:7 RTS thr:off Fragment thr:off Power Management:off
有効化する。
root@ubuntu:~# ifconfig wlx0022cfe64854 up root@ubuntu:~# ifconfig ・・・ wlx0022cfe64854: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500 unspec 00-22-CF-E6-48-54-30-3A-00-00-00-00-00-00-00-00 txqueuelen 1000 (不明なネット) RX packets 168 bytes 21521 (21.5 KB) RX errors 0 dropped 168 overruns 0 frame 0 TX packets 0 bytes 0 (0.0 B) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
IEEE802.11フレームを見る
Wiresharkを起動して、「表示」>「無線ツールバー」として、 MonitorモードになっているIFを選択する。
IEEE802.11フレームが見えるので、WPA2の鍵交換の流れなどがモニタリングできるようになる。 通信しているチャネルが何なのかは別に特定する。
その他
Monitorモードにできるかどうかは無線用のプロセッサ次第。Atherosや、Realtekというキーワードで調べれば実績あるものがひっかる。
今回のPlanexではMedia Tek(MT)のmt7650というやつだった。
IntelのWiFiもMonitorモードに遷移できたりするが、今回は割愛。
おしまい。