aircrack-ng で Wi-Fiパケットをキャプチャする

Linux 関連ノウハウ
Raspberry Pi + ParrotOS
aircrack-ng Wi-Fiパケットのキャプチャ
 
Raspberry Pi の ParrotOS に標準でインストールされている「aircrack-ng」を使って、自宅内のWi-Fi情報を収集してみる。
 
「airodump-ng」を実行してネットワークを検出する
 
以下、「aircrack-ng」の使い方を記録。
 
 

 

スポンサー リンク

 

 
 
 
 
 
1. Aircrack-ngとは
 

 Aircrack-ngとは
 WiFiネットワークに対するセキュリティ監査ツールで、 パケット解析やWEPやWPA、WPA2解読といった無線LANを分析するフトウェア群で構成される。
 これらの機能を使って、ネットワーク上の弱点を特定することが出来る。

 
 
aircrack-ngを構成するソフトウェア群には以下のものがある。
名前説明
aircrack-ngWEPキーをFMS攻撃、PTW、Korek、辞書攻撃でクラックする。また、WPA/WPA2-PSKを辞書攻撃する。
airdecap-ng既知のキーを使用してWEPまたはWPA暗号化キャプチャファイルを復号する。
airmon-ng異なるカードをモニターモードにする。
aireplay-ngパケットインジェクター(Linux、およびCommViewドライバーを備えたWindows)。
airodump-ngパケットスニファ:エアトラフィックをpcapまたはIVSファイルに配置し、ネットワークに関する情報を表示する。
airtun-ng仮想トンネルインターフェースクリエーター。
packetforge-ngインジェクション用の暗号化されたパケットを作成する。
ivstoolsマージおよび変換するツール。
airbase-ngアクセスポイントではなく、クライアントを攻撃するための手法を組み込んでいる。
airdecloak-ngpcapファイルからWEPクローキングを削除する。
airolib-ngESSIDとパスワードのリストを保存および管理し、ペアワイズマスターキーを計算する。
airserv-ng他のコンピュータからワイヤレスカードにアクセスできる。
buddy-ngeasside-ngのためのヘルパーサーバー、リモートコンピューターで実行。
easside-ngWEPキーを使用せずにアクセスポイントと通信するためのツール。
tkiptun-ngWPA/TKIP攻撃ツール。
wesside-ngWEPキー回復のための自動ツール。
 
今回使用したツール。
airmon-ng:無線LANインターフェースのステータス確認やモードの切り替え。
airodump-ng:端末周辺の Wi-Fi 情報の表示やパケットのキャプチャ。
aircrack-ng:収集したデータの解析。
 
 
 
2. Wi-Fiパケットのキャプチャ環境
 
Wi-Fiパケットのキャプチャ環境
 
Raspberry Pi:Raspberry Pi 4 Model B Rev 1.2
Wi-Fiアダプター:Buffalo WLI-UC-GNM
 
OS:Linux ParrotOS 6.6.20
OS:Linux ParrotOS 6.6.20
 
 
無線NICの状態を確認する。
 
ifconfigを置き換えるipコマンドでの確認。
ip a
 
ifconfigを置き換えるipコマンドでの確認
 
wlan0が内蔵のwifiチップで、Broadcom BCM43438。
wlan1が外付けしているUSB wifiアダプタで、BuffaloのWLI-UC-GNM。
 
 
無線関連の情報取得・設定を行うiwconfigを置き換えるiwコマンドでの確認。
iw dev
 

無線関連の情報取得・設定を行うiwconfigを置き換えるiwコマンドでの確認

phy#1:wlan1が外付けしているUSB wifiアダプタ。
インターフェースのタイプが「type managed」となっている。
 
phy#0:wlan0が内蔵wifiチップ。
 
iw devコマンドで表示される項目の詳細。
Interface : インターフェースの名前(例えばwlan0など)。
ifindex : インターフェースのインデックス番号。システム内部での識別子。
wdev 0x: ワイヤレスデバイスID。内部で使用されるデバイスの識別子。
addr : インターフェースのMACアドレス。
ssid:無線ローカルエリアネットワークの名前。
type : インターフェースのタイプ(managed, monitor, AP, P2P-clientなど)。
wiphy : ワイヤレスデバイスの識別子。物理的な無
channel : 現在のチャンネルの詳細。周波数、帯域幅、センターチャンネル。
txpower : 現在設定されている送信パワー。
multicast TXQ:マルチキャストの送信キューに関する情報。
 
 
 
3. ネットワーク管理プロセスの停止
 
以下、Aircrack-ng関連コマンドのために「root権限」へ昇格しておく。
sudo su
 
 
「airmon-ng check」コマンドで airmon-ng へ影響を与える全プロセスを確認。
airmon-ng check
 
「airmon-ng check」コマンドにより airmon-ng へ影響を与える全プロセスを確認
 
ネットワーク管理プロセスが立ち上がっていると airmon-ng の動作が阻害されるので、ネットワーク管理プロセスを停止する。
 
「airmon-ng check kill」コマンドでの一括停止。
airmon-ng check kill
 
「airmon-ng check kill」コマンドにより一括停止
 
ネットワーク管理プロセスの再確認。
airmon-ng check
 
ネットワーク管理プロセスの再確認
 
すべてのプロセスが停止された。
 
 
 
4. 無線NICをモニタモードにする
 
無線NICをモニタモードに切り替える。
 
「airmon-ng start <ネ ットワークアダプタ名>」でモニタモードを開始する。
airmon-ng start wlan1
 
「airmon-ng start <ネ ットワークアダプタ名>」でモニタモードを開始する
 
無線NICの状態がどう変化したか、再確認する。
 
ipコマンドでの再確認。
無線NICの状態がどう変化したか、再確認する
 
インターフェース名に「wlan1mon」が追加された。
 
iwコマンドでの再確認。
無線NICの状態がどう変化したか、再確認する
 
インターフェース名が「wlan1mon」に変わり、インターフェースのタイプが「type monitor」となった。
 
 
 
5. 端末周辺の Wi-Fi 情報の表示
 
「airodump-ng」を実行してネットワークを検出する。
airodump-ng wlan1mon 
 
次のように、周囲を飛び交っている電波情報を集めて表示してくれる。
「airodump-ng」を実行してネットワークを検出する
 
上段にアクセスポイントの一覧が、下段にはクライアントの一覧が表示される。
 
上段の左端に「BSSID」欄があり、ルーターの MAC アドレスが表示される。
 
上段の右端には「ESSID」欄があり、アクセスポイント名である「SSID」が表示される。右端の「ESSID」の欄が文字列の長さのみになっている場合は、SSIDがステルスのネットワークです。
 
上記のアクセスポイント一覧の中から、Wi-Fiパケットをキャプチャーする対象のSSIDを決定し、【MAC アドレス】と【チャンネル番号】を控えて、「airodump-ng」を「Cntl+C」で一旦終了する。
 
airodump-ngコマンドで表示される項目の詳細。
BSSID:APのMACアドレス
PWR: 信号レベルの強さ
Beacons:APが送信したパケット数
#Data:キャプチャされたデータパケット数
#/s:1秒あたりのデータパケット数(過去10秒間)
CH:チャンネル番号
MB:APがサポートする最大速度
ENC:暗号化アルゴリズム(暗号化なしの場合は ” OPN ” )
CIPHER:検出された暗号
AUTH:使用されている認証プロトコル
ESSID:アクセスポイント名

STATION:各StationのMACアドレス
Rate:Stationの受信レート 及び送信レート
Lost:失われたパケット数(過去10秒間)
Frames:物理的な回線でやりとりするパケット
 
 
 
6. Wi-Fi パケットのキャプチャーとファイルへの保存
 
Wi-Fiパケットのキャプチャーとその結果をファイルに保存するために、対象ネットワークを指定して、新たに「airodump-ng」を起動する。
 
Wi-Fi パケットをキャプチャーし、ファイルに保存するコマンド。
airodump-ng --bssid 00:00:00:00:00:00 -c 13 wlan1mon -w wi-fi_cap_01
 
--bssid 00:00:00:00:00:00」:MAC アドレスを指定する。
 
-c 13】:チャンネル番号を指定する。
 
wlan1mon】:インターフェース名を指定する。
 
-w wi-fi_cap_01】:保存するファイル名を指定する。
 ※:指定したファイル名の末尾に、連番 -01 が自動で付与される。
 
Wi-Fi パケットのキャプチャーとファイルへの保存
 
「airodump-ng」が起動したら、クライアント(スマホやタブレット)から対象のSSIDにアクセスを行う。
 ・対象SSIDへのログイン
 ・接続が出来たら、ブラウザでのネットワークへのアクセス等.....etc
 
大量のパケットをキャプチャするに越したことはないが、適当な時間で終了(Cntl+C)する。
 
これで、
 ・[ファイル名].cap
 ・[ファイル名].csv
 ・[ファイル名].kismet.csv
 ・[ファイル名].kismet.netxml
の4つのファイルがカレントディレクトリに保存される。
 
4つのファイルが現在のディレクトリに保存される
 
 
 
7. パケットスニッフィングの終了
 
モニタモードの終了。
airmon-ng stop wlan1mon 
 
ネットワークマネージャの再起動。
systemctl restart NetworkManager
 
 
 
8. キャプチャーしたファイルの分析
 
fileコマンドでキャプチャーファイルを調べる。
file wi-fi_cap_01-01.cap
 
fileコマンドでキャプチャーファイルを調べる
 
capinfosコマンドでキャプチャーファイルを調べる。
capinfos wi-fi_cap_01-01.cap
 
capinfosコマンドでキャプチャーファイルを調べる
 
 
無線LANのパスワードを解析してみる。
 
参考:辞書ファイルの解凍。
gunzip rockyou.txt.gz
 
辞書ファイルの解凍
 
aircrack-ngコマンドでのパスワードの解析。
aircrack-ng wi-fi_cap_01-01.cap -w rockyou.txt
 
aircrack-ngコマンドでのパスワードの解析
 
長時間・・・経過。
 
aircrack-ngコマンドでのパスワードの解析
 
対象にしたアクセスポイントはWPA2の暗号化方式で、パスワードクラックは出来そうになかった・・・一安心。
 

以上。
(2024.06.29)

 

 

スポンサー リンク

 

             

 

 

 

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください