WIFIアダプターをモニターモードにする(WIFIクラッキングに必須)

Masashi Nakane
暗号通貨 とセキュリティ
9 min readMar 11, 2018

--

Kali linuxを使って無線LAN/Wifiでホワイトハッキング/ペネトレーションテストをする時には、モニターモード/インジェクションの機能が付いたWifiアダプターが必要だ。ノートブック内蔵/マザーボード内臓のWifiアダプターはモニターモードの機能はない。Kaliで使うのに、便利なのは、USBタイプのWifiアダプターだ。検索するとKaliで利用可能なモデルやチップセットの情報がたくさん落ちている(が、まとめサイトはないし、相性でうまくいかない時もよくある)。

モニターモードの状態のWifiアダプターにできること。

  1. 周りのWifiネットワークのSSIDや、そこにつないでいるクライアントデバイス情報を取得する
  2. 行き来しているデータ/パケットを読み、ファイルに落とし、Wifiネットワークのパスワードのクラッキングするためのパケット解析につかう
  3. ARP(MACアドレスとIPのマッピングテーブル)を外部から操作するパケットの注入してからの、Man-In-The-Middle攻撃でネットワーク通信の真ん中に入り、HTTPSに対する攻撃であるSSLStripからトロイの木馬へのすり替を行う。

等々、すべてのWifiハッキングの基礎となる。自分のKaliからモニターモードが使用できるWifiアダプターを見つけることは、ハッキングを習得するための最初の難関でもある。

このブログのシリーズでは、上記の全ての用語の意味と実際の攻撃方法を自分の実験環境で行い、どうすれば攻撃ができるかを知識と体験で知ること、その上で、何をしておけば、攻撃から身を守れるかまでを理解する。無知で無防備でもなく、逆に、ただ恐れ使わないでもなく、知って手を動かし、自分の身を守り、そして、身近なひとたちの身をも守りながらインターネットの恩恵を享受することが目的だ。

ここでは、Wifiペネトレーションテスト用のデファクトスタンダードのツールが大量に入ったKali Linuxを使用して、Wifiアダプターをモニターモードにしてみる。

モニターモードにできるアダプターで、かつ、Kali Linuxと互換性の高いWifiアダプターの入手は少し気をつけたほうが良い。他にもたくさんありそうだが、少なくとも以下の3つは、筆者が購入してやって見た経験で、モニターモードにできることを確認した。

  1. Alfa AWUS036NEH (Chipset : Ralink 3070)
  2. Alfa AWUS036NHA (Chipset : Atheros AR9271 )
  3. ̶E̶D̶U̶P̶ ̶U̶S̶B̶ ̶3̶.̶0̶ ̶(̶C̶h̶i̶p̶s̶e̶t̶:̶ ̶R̶T̶L̶8̶8̶1̶2̶ ̶)̶ ̶ Kali 2019.2で出来なかった2019年7月

上記リストの右側に書いたように、メーカーやモデルというよりも中に入っているWifiアダプターのチップセットの機能であるので、購入時は、チップセットの確認が大事だ。メーカーは急に内部のチップセットを変えたりするので、モデル名だけでは、確実な保証はできない。チップセットが以下のいずれかであれば、Kali Linuxにドライバーが入っていて、かつモニターモードにできる。

  1. Atheros AR9271
  2. Ralink 3070

なので、残念ながら、これを買えば、確実にKaliでモニターモードにできると100%保証できないので、上記モデルはあくまで参考までに。自己責任で購入を。自分も2つほど無駄に買ってしまった。自分で調べたい場合は、英語のAmazon.comでwifi アダプターの口コミによく”Kaliで使えたよ!”とあるので、その場合にはうまくいく確率は高いと思う。

さて、それでは、本筋へ。

以降は、自分のWindows PCかMacにKali Linuxの最新版がインストールされている前提で話が進むので、別の記事の”Kali Linuxをインストールする”を最後まで終わらせておいてほしい。

USB WifiアダプターをKali Linuxでモニターモードにするおおまかな手順は、以下。

  1. モニターモード可なUSB Wifiアダプターをコンピュータに挿し、VMのSettingからKali LinuxにUSBデバイスとして認識させる。
  2. Kali Linuxのairomon-ngもしくはiwconfig コマンドでモニターモードに変更する。
  3. airodump-ngコマンドで周囲のWifiをモニタして動作確認する

ちなみに筆者の環境は、

Windows PC
CPU : i7–6700HQ(8core)
Memory : 16GB

Mac Book Pro
CPU : i7 2.8GHz
Memory : 16GB

少々パワフルなノートブックにVirtualBoxをいれて使用しているが、仮想マシンが1つ余裕で走るくらいのWindowsやMac、すなわち、2GBくらいのメモリをKaliのVMに占有させる余裕のあるスペックがあれば良いと思われる。

1. USB Wifiアダプターをパソコンに挿し、Kali Linuxにアタッチする

一旦、Kali Linuxをシャットダウンし、USB Wifiアダプター(以下の例では、Alfa AWUS036NHAを使用)をさす前の状態で、Virtual Boxから右クリックでKali仮想マシンのUSBのセッティングに行く(下の写真)、アダプターがUSB3.0対応であればUSB3.0を選択する。

プラスアイコンを押すと現在アタッチ可能なUSBデバイスのリストがみえるので、覚えておく(この時点ではUSB Wifiアダプタは見えてない状態にしたい)。次に、USB WifiアダプターをUSBに挿し、再度、プラスアイコンをおすと、入れたWifiアダプターのチップセットの名前が見えるはず。それを選択して、追加する。

追加されるとこんな感じ。OKして、Kali Linuxを起動し通常通りrootでログイン。

PCのUSBの口が足らないので、USB HUBを経由でAlfa AWUS036NHAをつないでいる様子。

2. airmon-ngもしくはiwconfigでモニターモードにする

Kali Linuxが起動したら、デスクトップの左の黒いアイコンからTerminalを開き、ifconfigコマンドを実行し利用可能な、有線/無線ネットワークカードの一覧を確認する。

wlan0がWifiアダプターのデバイス名だ。以下の赤四角で囲まれたようにに、wlan0の情報が出ていればKali LinuxにWifiアダプターが認識されている。

次に、iwconfigコマンドを実行して、Wifiカードの状態を詳しくみてみる。

Modeのところを見ると、Managedモードになっているのが分かる。Managedは通常のモードで、普通に1つのSSIDへ接続するモードなので、次の方法でモードをモニターモードにする。

2種類のやり方があり、アダプターのモデルもしくはチップセットにより、どちらかになる。

やり方1.airmon-ngコマンドで変更する方法

airmon-ng check kill
airmon-ng start wlan0

やり方2.iwconfigで変更する方法

iwconfig wlan0 mode monitor

下のスクリーンショットでは、最初にManagedモードだったwlan0がモード変更により、Monitorモードになったことがわかるだろう。このチップセットの場合、interface名がwlan0 →wlan0monに変更になった。(そうじゃない場合もあるので、iwconfigで確認すること)

3. airodump-ngで周囲のWifiをモニタする

モニターモードになったら、こっちのもんだ。ターミナルで、以下のコマンドを実行する。

#airodump-ng <interface>
airodump-ng wlan0mon

すると今、現在いる所の周囲のWifiのAP(Access point)情報(SSID、チャネル、MACアドレス等)が表示され、情報が追加/更新されていく。上の方が電波が強い。ENCは暗号化方式。ほとんどがWPA2だと思う。

これでモニターモードへの変更が確認できた。

次に、特定のSSID/AP(アクセスポイント)に絞ってモニターしてみる。
自分が見えているWIFIのひとつ(自宅のSSIDを選ぼうね)を選んでそれにつながっているデバイスの情報をみてみよう。

#airodump-ng --bssid <AP MAC address> --channel <channel No> <dev>
airodump-ng --bssid D8:EB:97:B1:BA:76 --channel 11 wlan0mon

このように特定のAPに接続しているコンピューター/デバイスの台数やMAC アドレス が確認できた。MACアドレスとはIPアドレスの下位に位置するハードウエアレベルのアドレスである。これらを使えばWIFIのネットワークの弱いセキュリティを突破できる。

さて、基本のモニターモードへの変更とモニタリングのスキルが手に入ったので、次は、WEP暗号のクラッキングだ。

--

--