パケットキャプチャソフトのWireShark導入しました。
MacBook Air 13-inch, Mid 2012
ソフトウェア OS X 10.8.2(12C3103)
動作環境にX11が必須だけど、Mountain LionにはX11はインストールされていないようで、別途インストールが必要
X11(XQuartz)と
WireSharkをダウンロードしてインストール。
NICが表示されない場合は下記を参照にしました。
http://apple.stackexchange.com/questions/7913/how-can-i-use-wireshark-on-a-macbook-air
cd /Library/StartupItems
sudo chown -R root:wheel ChmodBPF
または
sudo open /Applications/Wireshark.app/
MacOS環境においては、Wireshark1.8.x以降の環境で比較的簡単に無線LANのパケットキャプチャできる。
(参考)
http://wiki.wireshark.org/CaptureSetup/WLAN
http://ch.nicovideo.jp/ikeriri/blomaga/ar199685
Monitor Modeに変更することで802.11のパケットを直接確認することが可能となる。
- キャプチャオプション画面を表示
- 無線LANをキャプチャしたい無線インタフェース(例en0)をダブルクリックして、「Edit Capture Interface」画面を表示
- 「capture packets in monitor mode」にチェック
無線LANインタフェースをモニターモードに変更するとこの際、今まで接続していた無線LANアクセスポイントとはdeassociateされてしまうため注意
キャプチャしたいチャンネルに変更するためには、下記のリンクを参考に変更する必要があります。
http://wiki.wireshark.org/CaptureSetup/WLAN#Mac_OS_X
MACの無線環境をコマンドライン(airport)から知る方法について記述されています。
まずはシンボリックリンクを作成します。
sudo ln -s /System/Library/PrivateFrameworks/Apple80211.framework/Versions/Current/Resources/airport
現在のチャンネルの状況を表示
$airport -I
agrCtlRSSI: -50
agrExtRSSI: 0
agrCtlNoise: -89
agrExtNoise: 0
state: running
op mode: station
lastTxRate: 65
maxRate: 72
lastAssocStatus: 0
802.11 auth: open
link auth: wpa2-psk
BSSID: 20:2:af:18:c7:f7
SSID: SC06D
MCS: 7
channel: 6
すべてのネットワークからdisassociate
$airport -z
チャンネルを7にセット
参考情報
プロミスキャスモードの説明は下記
プロミスキャスモード 【 promiscuous mode 】
ネットワークカードの動作モードの一つで、ネットワークを流れるすべてのパケットを受信して読み込むモード。
ネットワークカードは通常、宛先が自分になっているパケットのみを受信するよう設定されており、ケーブルから別の宛先のパケットが届いても読み込まずに破棄するようになっている。プロミスキャスモードに設定したカードでは、宛先に関わらずすべての受信パケットを上位レイヤのソフトウェアに引き渡すため、そのセグメントを流れるすべてのデータを監視することが可能となる。
プロミスキャスモードはパケットアナライザなどが利用するモードで、本来はトラブルの原因調査といったネットワーク管理のためのモードだが、送信者や受信者に気付かれずにデータを傍受することができるため、悪用されると危険。