はじめに:Aircrack-ngとは何か?🤔
Aircrack-ngは、Wi-Fiネットワークのセキュリティを評価(監査)するために設計された、強力なオープンソースのツールスイートです。ネットワークの監視、攻撃、テスト、そしてパスワードクラッキング(WEP、WPA/WPA2-PSK)といった多様な機能を提供します。
主にLinuxで利用されますが、Windows、macOS、FreeBSDなど、多くのプラットフォームに対応しています。全てのツールはコマンドラインで動作するため、スクリプトによる自動化も容易です。
⚠️ 重要:Aircrack-ngは、あくまで自身が管理するネットワークのセキュリティ評価や、許可を得た上でのペネトレーションテストなど、合法的かつ倫理的な目的でのみ使用してください。許可なく他者のネットワークに対して使用することは、不正アクセス禁止法などの法律に抵触する可能性があり、重大な結果を招くことがあります。このガイドは教育目的であり、不正行為を推奨するものではありません。
Aircrack-ngを始める前の準備 🛠️
必要なもの
- 対応OS: Linux (Kali LinuxやParrot Security OSなどのセキュリティに特化したディストリビューションが推奨されます。これらにはAircrack-ngがプリインストールされています)。WindowsやmacOSでも利用可能ですが、機能に制限がある場合があります。
- 無線LANアダプター: モニターモードとパケットインジェクションに対応している必要があります。すべてのアダプターが対応しているわけではないため、事前に確認が必要です。(例: Alfa AWUS036ACHなど)
- 十分な知識: 無線LAN(IEEE 802.11)、ネットワークプロトコル、Linuxコマンドラインに関する基本的な知識。
- Aircrack-ngスイート: Kali Linuxなどには含まれていますが、他のOSでは別途インストールが必要です。
# Debian/Ubuntu系の場合 sudo apt update sudo apt install aircrack-ng
互換性のあるアダプターやチップセットの情報は、Aircrack-ngの公式ドキュメントやコミュニティで確認できます。
Aircrack-ngスイートの主要ツール紹介 🔧
Aircrack-ngは単一のツールではなく、複数のコマンドラインツールで構成されています。主要なものをいくつか紹介します。
ツール名 | 主な機能 | 説明 |
---|---|---|
airmon-ng |
モニターモード管理 | 無線LANインターフェースをモニターモードに設定・解除します。パケットキャプチャやインジェクションの前提となります。 |
airodump-ng |
パケットキャプチャ | 周辺のWi-Fiネットワークをスキャンし、アクセスポイントや接続クライアントの情報を表示します。WEPのIV(初期化ベクタ)やWPA/WPA2のハンドシェイクをキャプチャするために使用します。 |
aireplay-ng |
パケットインジェクション | ネットワークに特定のフレーム(パケット)を注入(送信)します。Deauthentication攻撃(クライアントの接続解除)やARPリクエストリプレイ攻撃などに使用し、ハンドシェイクの取得やWEPクラックを高速化します。 |
aircrack-ng |
パスワードクラッキング | キャプチャしたデータ(WEP IVやWPA/WPA2ハンドシェイク)を元に、パスワード(キー)を解析(クラック)します。WEPの場合は統計的な手法、WPA/WPA2の場合は辞書攻撃やブルートフォース攻撃を用います。 |
airbase-ng |
偽アクセスポイント作成 | 偽のアクセスポイントを作成し、クライアントを攻撃対象とします。 |
airolib-ng |
辞書管理 | WPA/WPA2クラック用のパスワードリスト(辞書)を管理し、事前計算(PMK)を行うことでクラック速度を向上させます。 |
他にも、特定の攻撃や解析に特化したツールが多数含まれています。
実践!Aircrack-ngを使ったWi-Fiセキュリティ監査手順 🚀
ここでは、最も一般的なユースケースであるWPA/WPA2-PSKネットワークのパスワード強度評価の手順を解説します。
Step 1: 無線LANアダプターをモニターモードにする
-
インターフェース名の確認: まず、使用する無線LANアダプターのインターフェース名を確認します。
iwconfig
(例: `wlan0`, `wlan1` など)
-
干渉プロセスの停止 (推奨): モニターモードへの移行を妨げる可能性のあるプロセス(Network Managerなど)を停止します。
sudo airmon-ng check kill
これにより、一時的にネットワーク接続が切断される場合があります。
-
モニターモードの有効化: `airmon-ng` を使ってモニターモードを開始します。
sudo airmon-ng start wlan0
(`wlan0` は実際のインターフェース名に置き換えてください)
成功すると、新しいモニターモード用のインターフェース名(例: `wlan0mon`)が表示されることがあります。以降はこの新しい名前を使用します。
-
確認: モニターモードになっているか確認します。
iwconfig wlan0mon
(`Mode:Monitor` と表示されていればOK)
Step 2: ターゲットネットワークのスキャンとハンドシェイクキャプチャ
-
周辺ネットワークのスキャン: `airodump-ng` を使って、周辺のアクセスポイントと接続しているクライアントをリストアップします。
sudo airodump-ng wlan0mon
表示される情報から、ターゲットとするネットワークの BSSID (アクセスポイントのMACアドレス) と CH (チャンネル) をメモします。また、ENC が WPA または WPA2 であること、AUTH が PSK であることを確認します。
Airodump-ngの表示項目例:
- BSSID: アクセスポイントのMACアドレス
- PWR: 信号強度 (数値が大きいほど強い)
- Beacons: アクセスポイントから送信されたビーコンフレーム数
- #Data: キャプチャされたデータパケット数
- CH: チャンネル
- ENC: 暗号化方式 (WEP, WPA, WPA2など)
- CIPHER: 暗号化アルゴリズム (CCMP, TKIPなど)
- AUTH: 認証方式 (PSK, MGTなど)
- ESSID: ネットワーク名 (SSID)
- STATION: 接続されているクライアントのMACアドレス
-
ターゲットを絞ってキャプチャ開始: ターゲットのチャンネルとBSSIDを指定し、ハンドシェイクを含むパケットをファイルに保存します。
sudo airodump-ng -c [チャンネル] --bssid [ターゲットBSSID] -w [保存ファイル名プレフィックス] wlan0mon
例:
sudo airodump-ng -c 6 --bssid 00:11:22:33:44:55 -w capture_handshake wlan0mon
このコマンドを実行すると、ターゲットネットワークの通信のみが表示され、キャプチャしたデータが `capture_handshake-01.cap` のようなファイル名で保存されます。
-
ハンドシェイクの待機: クライアントがネットワークに接続または再接続する際にWPA/WPA2ハンドシェイクが行われます。`airodump-ng` の画面右上に
WPA handshake: [ターゲットBSSID]
と表示されれば、ハンドシェイクのキャプチャに成功です 🎉。自然にハンドシェイクが発生するのを待つか、次のステップで強制的に発生させます。
Step 3: Deauthentication攻撃 (ハンドシェイク取得の高速化 – オプション)
ハンドシェイクがなかなかキャプチャできない場合、`aireplay-ng` を使ってターゲットネットワークに接続中のクライアントを強制的に一時切断させ、再接続を促すことでハンドシェイクを意図的に発生させることができます。
⚠️ この操作はターゲットネットワークの通信を一時的に妨害します。必ず許可された環境でのみ実行してください。
-
Deauthenticationパケットの送信: 別のターミナルを開き、以下のコマンドを実行します。
sudo aireplay-ng --deauth [送信回数] -a [ターゲットBSSID] -c [クライアントMACアドレス] wlan0mon
- `[送信回数]`: 送信するDeauthenticationパケットの数 (例: 5)。0を指定すると無限に送信します。
- `-a [ターゲットBSSID]`: アクセスポイントのBSSID。
- `-c [クライアントMACアドレス]`: (オプション) 特定のクライアントを切断させる場合に指定します。指定しない場合、ブロードキャストで接続中の全クライアントに送信されますが、無視されることもあります。ターゲットクライアントのMACアドレスは `airodump-ng` の表示 (`STATION` 列) で確認できます。
例 (特定のクライアントへ5回送信):
sudo aireplay-ng --deauth 5 -a 00:11:22:33:44:55 -c AA:BB:CC:DD:EE:FF wlan0mon
例 (ブロードキャストで10回送信):
sudo aireplay-ng --deauth 10 -a 00:11:22:33:44:55 wlan0mon
-
ハンドシェイク確認: `airodump-ng` を実行しているターミナルに戻り、`WPA handshake: [ターゲットBSSID]` が表示されるのを確認します。表示されたら `airodump-ng` と `aireplay-ng` を `Ctrl+C` で停止します。
Step 4: パスワードクラッキング
キャプチャしたハンドシェイクファイルと辞書ファイル(パスワード候補リスト)を使って、`aircrack-ng` でパスワードの解析を試みます。
-
辞書ファイルの準備: パスワードクラックには、パスワード候補が大量に記載された「辞書ファイル(Wordlist)」が必要です。一般的な単語、よく使われるパスワード、過去に漏洩したパスワードリストなどが利用されます。Kali Linuxには `rockyou.txt` などの有名な辞書ファイルが含まれていることがあります (`/usr/share/wordlists/` 配下など)。より強力な辞書はインターネット上で見つけることもできますが、サイズが非常に大きくなる場合があります。
-
クラッキングの実行:
aircrack-ng -w [辞書ファイルへのパス] -b [ターゲットBSSID] [キャプチャファイル名.cap]
例:
aircrack-ng -w /usr/share/wordlists/rockyou.txt -b 00:11:22:33:44:55 capture_handshake-01.cap
Aircrack-ngは辞書ファイル内のパスワード候補を一つずつ試し、ハンドシェイクと照合します。辞書内に正しいパスワードが含まれていれば、`KEY FOUND! [ パスワード ]` と表示されます 🎉。
辞書攻撃は非常に時間がかかることがあります。辞書のサイズやCPUの性能に大きく依存します。辞書にパスワードが含まれていなければ、クラックは成功しません。
Step 5: クリーンアップ
テストが終了したら、モニターモードを解除して通常のネットワーク接続状態に戻します。
sudo airmon-ng stop wlan0mon
sudo systemctl restart NetworkManager # または他のネットワーク管理サービス
(Network Managerを `check kill` で停止した場合)
WEPクラッキングについて (補足) 🕰️
WEPは古い暗号化方式であり、深刻な脆弱性が存在するため、現在では使用すべきではありません。Aircrack-ngはWEPクラック機能も備えています。
WEPクラックはWPA/WPA2とは異なり、ハンドシェイクではなくIV (Initialization Vector) と呼ばれるデータを大量に収集し、統計的な解析(FMS攻撃、PTW攻撃など)によってキーを特定します。十分な量のIV(通常、数万~数十万)があれば、比較的短時間でキーを特定できます。
主な手順:
- モニターモード有効化 (`airmon-ng`)
- ターゲットネットワークのIV収集 (`airodump-ng –ivs -w capture_wep …`)
- (オプション) ARPリクエストリプレイなどでIV収集を高速化 (`aireplay-ng -3 …`)
- 収集したIVファイルでクラック (`aircrack-ng capture_wep*.ivs`)
WEPは容易に破られるため、もし現在WEPを使用しているネットワークがあれば、直ちにWPA2またはWPA3に移行することを強く推奨します。
倫理的考察と法的側面 ⚖️
改めて強調しますが、Aircrack-ngを含むいかなるセキュリティツールも、自身が所有または管理するネットワーク、あるいは明示的な許可を得たネットワーク以外に対して使用することは絶対に避けてください。
許可なく他者のWi-Fiネットワークにアクセスを試みたり、パスワードを解析したりする行為は、多くの国や地域で不正アクセス行為とみなされ、法的な罰則(懲役や罰金など)の対象となります。日本においては不正アクセス禁止法などが該当します。
セキュリティ専門家や学習者は、常に倫理的なガイドラインと法律を遵守し、責任ある行動を心がける必要があります。技術的な好奇心や学習意欲が、他者に損害を与えたり、法を犯したりする言い訳にはなりません。
自身のネットワークのセキュリティをテストすることは、脆弱性を発見し対策を講じる上で非常に有益ですが、その際も意図しない影響がないか慎重に行うべきです。
まとめと対策 💪
Aircrack-ngはWi-Fiセキュリティ評価のための強力なツールスイートですが、その使用には技術的な知識と倫理的な配慮、そして法遵守が不可欠です。
このツールを使って学んだ知識を活かし、自身のWi-Fiネットワークのセキュリティを強化しましょう。
推奨されるWi-Fiセキュリティ対策:
- 暗号化方式: WPA3 を使用する。対応していない場合は WPA2-PSK (AES/CCMP) を使用する。WEPやWPA (TKIP) は使用しない。
- パスワード: 長く、複雑で、推測困難なパスワード(大文字、小文字、数字、記号を組み合わせた15文字以上推奨)を設定する。辞書に載っているような単語や簡単なフレーズは避ける。
- ルーターファームウェア: 常に最新の状態にアップデートする。
- WPS (Wi-Fi Protected Setup): 脆弱性が指摘されているため、無効にすることを検討する。
- SSIDステルス・MACアドレスフィルタリング: これらは補助的な対策であり、本格的な攻撃に対しては効果が限定的ですが、設定しないよりは良いでしょう。
- ゲストネットワーク: 来客用にゲストネットワークを提供し、メインネットワークから分離する。
- 定期的な監視: 接続デバイスリストなどを定期的に確認し、不審な接続がないかチェックする。
適切な知識とツールを用いて、安全な無線LAN環境を構築・維持しましょう!
参考情報 📚
-
Aircrack-ng 公式サイト:
https://www.aircrack-ng.org/
使い方、チュートリアル、互換性情報などが豊富に掲載されています。
-
Kali Linux Tools – Aircrack-ng:
https://www.kali.org/tools/aircrack-ng/
Kali LinuxにおけるAircrack-ngの概要説明があります。
コメント