はじめに
Wi-Fi Protected Setup (WPS) は、デバイスをワイヤレスネットワークに簡単に接続できるように設計された機能です。しかし、WPS の一部の実装には設計上の欠陥があり、ブルートフォース攻撃に対して脆弱であるため、攻撃者がネットワークの WPA/WPA2 パスワードを発見できるようになっています。
このような攻撃を試みる前に、まず近くのどのネットワークで WPS が有効になっており、ロックされていないかを特定する必要があります。Reaver スイートの一部である wash ツールは、この目的のために特別に設計されています。これは、WPS 対応のアクセスポイントを無線でスキャンし、そのステータスを報告します。
この実験では、wash を使用して潜在的なターゲットを見つけることで、ワイヤレス偵察の基本的な手順を学びます。必要なツールをインストールし、シミュレートされたワイヤレスカードをモニターモードにし、その後 wash スキャンの実行と出力の解釈を行います。
Reaver スイートのインストールを確認する
このステップでは、必要なソフトウェアパッケージをインストールします。wash コマンドは reaver パッケージの一部です。また、Wi-Fi ネットワークセキュリティのためのツールスイートである aircrack-ng もインストールします。これには、次のステップで必要となる airmon-ng ユーティリティが含まれています。
まず、パッケージリストを更新し、次に apt パッケージマネージャーを使用して reaver をインストールします。-y フラグは、インストールの確認を自動的に行います。
sudo apt update
sudo apt install reaver -y
パッケージマネージャーが reaver とその依存関係を取得してインストールする際の出力が表示されます。
次に、aircrack-ng スイートをインストールします。
sudo apt install aircrack-ng -y
両方のコマンドが正常に完了すると、この実験に必要なすべてのツールが揃います。
ワイヤレスカードをモニターモードにする
このステップでは、ワイヤレスインターフェイスで「モニターモード」を有効にします。「マネージドモード」として知られる標準の Wi-Fi モードは、デバイス宛てのパケットのみをキャプチャします。モニターモードは、指定されたチャネル上のすべてのワイヤレストラフィックをキャプチャするプロミスキャスモードであり、wash のようなツールには不可欠です。
このタスクには airmon-ng ユーティリティを使用します。まず、モニターモードに干渉する可能性のあるプロセスを確認して停止することが良い習慣です。
以下のコマンドを実行して、競合する可能性のあるプロセスを停止します。
sudo airmon-ng check kill
wpa_supplicant のようなプロセスが停止したことを示すシミュレートされた出力が表示されるはずです。
Killing these processes:
PID Name
123 wpa_supplicant
次に、シミュレートされたワイヤレスインターフェイス wlan0 でモニターモードを開始します。このコマンドは、通常 wlan0mon という名前の新しい仮想インターフェイスを作成します。これは、スキャンに使用するインターフェイスです。
sudo airmon-ng start wlan0
出力は、wlan0mon という名前の新しいインターフェイスでモニターモードが有効になったことを確認します。
PHY Interface Driver Chipset
phy0 wlan0 ath9k Atheros Communications Inc. AR9271 802.11n
(mac80211 monitor mode vif enabled for [phy0]wlan0 on [phy0]wlan0mon)
(mac80211 station mode vif disabled for [phy0]wlan0)
これで、ワイヤレスカードは近くのすべてのトラフィックをスキャンする準備ができました。
-i フラグを使用してモニターインターフェイスで wash を実行する
このステップでは、インターフェイスがモニターモードになっているので、wash を使用して WPS 対応ネットワークのスキャンを開始できます。
wash の基本的な構文では、-i フラグを使用してモニターモードインターフェイスを指定する必要があります。前のステップで確立したように、私たちのモニターインターフェイスは wlan0mon です。
スキャンを開始するには、ターミナルで次のコマンドを実行します。
sudo wash -i wlan0mon
wash はスキャンを開始し、検出したネットワークのリストをリアルタイムで表示します。出力は次のようになります。
Wash v1.6.5 WiFi Protected Setup Scan Tool
Copyright (c) 2011, Tactical Network Solutions, Craig Heffner <cheffner@tacnetsol.com>
BSSID Channel RSSI WPS Version WPS Locked ESSID
--------------------------------------------------------------------------------
C4:01:A3:1E:B4:29 1 -65 1.0 No TestNet-WPS-Unlocked
A0:B2:C3:D4:E5:F6 6 -78 1.0 Yes Home-Network-5G
12:34:56:78:90:AB 11 -52 1.0 No CoffeeShop-WiFi
DE:AD:BE:EF:00:11 1 -81 1.0 Yes Locked-AP
スキャンは無期限に実行されます。リストを充実させるために約 10〜15 秒間実行し、その後 Ctrl+C を押してプロセスを停止し、コマンドプロンプトに戻ります。
BSSID や WPS Locked などの wash 出力列の解釈
このステップでは、wash によって提供される情報を解釈する方法を学びます。この出力を理解することは、実行可能なターゲットを選択するために不可欠です。このステップで実行するコマンドはありません。前の出力の列の内訳を確認するだけです。
列を分析しましょう。
- BSSID: これは Basic Service Set Identifier であり、ワイヤレスアクセスポイント (AP) の一意の MAC (Media Access Control) アドレスです。
reaverのようなツールで特定のネットワークをターゲットにするには、このアドレスが必要です。 - Channel: AP が動作しているワイヤレスチャネル (例:1、6、11)。
- RSSI: Received Signal Strength Indicator。この値は、AP からの信号の強さを示します。これは負の数値であり、0 に近い値ほど信号が強いことを示します (例:-50 は -80 より強い)。信頼性の高い接続には、より強い信号が適しています。
- WPS Version: AP が使用している WPS プロトコルのバージョン。
- WPS Locked: これは、私たちの目的のために最も重要な列です。
No: AP の WPS 機能がロックされていないことを示します。これは潜在的に脆弱なターゲットです。Yes: AP が以前のブルートフォース試行を検出した可能性があり、WPS 機能を一時的または永続的にロックしたことを示します。これらのターゲットは、現在 WPS PIN 攻撃に対して脆弱ではありません。
- ESSID: これは Extended Service Set Identifier であり、Wi-Fi ネットワークの人間が読める名前 (例:"CoffeeShop-WiFi") です。
これらのフィールドを理解することで、さらに調査する価値のあるネットワークを迅速に評価できます。
WPS 攻撃に適したロックされていないターゲットの特定
この最後の実践的なステップでは、前のセクションの知識を応用してスキャン結果を分析し、WPS 攻撃に最適な潜在的ターゲットを特定します。これは、収集したデータに基づいたクリティカルシンキングのステップです。
ステップ 3 の wash スキャンの出力を確認します。
BSSID Channel RSSI WPS Version WPS Locked ESSID
--------------------------------------------------------------------------------
C4:01:A3:1E:B4:29 1 -65 1.0 No TestNet-WPS-Unlocked
A0:B2:C3:D4:E5:F6 6 -78 1.0 Yes Home-Network-5G
12:34:56:78:90:AB 11 -52 1.0 No CoffeeShop-WiFi
DE:AD:BE:EF:00:11 1 -81 1.0 Yes Locked-AP
適切なターゲットを特定するには、次の 2 つの重要な特性を探す必要があります。
WPS LockedがNoであること: これは必須条件です。WPS 状態がロックされている AP は攻撃できません。- 強い
RSSI: より強い信号 (0 に近い数値) は、攻撃が成功し、より速く完了する可能性を高めます。
これらの基準に基づいて、リストを分析しましょう。
Home-Network-5GとLocked-APは、WPS Lockedの状態がYesであるため、実行可能なターゲットではありません。TestNet-WPS-UnlockedとCoffeeShop-WiFiは、どちらもWPS Lockedの状態がNoであるため、実行可能なターゲットです。
この 2 つの間では、CoffeeShop-WiFi の方が TestNet-WPS-Unlocked (-65) と比較して信号が強い (-52) ため、理想的なプライマリターゲットとなります。
これで、脆弱なターゲットを正常に特定できました。実際のペネトレーションテストにおける次の論理的なステップ (この実験の範囲外です) は、ターゲットの BSSID (12:34:56:78:90:AB) を使用して reaver ツールを実行し、PIN クラッキングプロセスを開始することです。
まとめ
この実験では、WPS 対応ネットワークのセキュリティを評価するための最初の重要なステップを学びました。aircrack-ng および reaver スイートのツールの組み合わせを正常に使用して、シミュレートされたワイヤレス環境での偵察を実行しました。
以下のことを学びました。
reaverおよびaircrack-ngパッケージのインストール。airmon-ngを使用してワイヤレスインターフェイスをモニターモードに配置する方法。これは、ほとんどのワイヤレスセキュリティタスクの前提条件です。washコマンドを実行して、WPS 対応アクセスポイントをスキャンおよび検出する方法。washからの詳細な出力を解釈し、特に重要なWPS LockedおよびRSSIフィールドに注意を払う方法。- スキャン結果を分析して、潜在的な WPS 攻撃に最も有望なターゲットを特定する方法。
この基礎的なスキルは、Wi-Fi ネットワークの脆弱性を理解しテストしたいネットワークセキュリティの専門家や愛好家にとって非常に重要です。
