Wi-Fi Protected Setup

Wi-Fi Protected Setupは、かつてWi-Fiアライアンスが提唱していた無線LAN機器同士の接続設定や暗号化設定を容易に行えるようにするための規格である。

最初のバージョンは、2006年8月16日に策定された。2007年1月8日に認定プログラムが開始され、最初の10製品が認定された。同年から順次、本規格対応製品が各社から発売されている。

策定中はWi-Fi Simple Configのコード名で呼ばれていた。また、WPS機能を実現するMicrosoftの実装はWindows Connect Nowの名前で呼ばれている。

1. 策定のきっかけ
----------

Wi-Fiアライアンスによって規格化された無線LANでは、傍受防止や不正接続防止のために暗号化することができる。しかし、接続時に長いパスワードを入力する手間があり、簡単な接続のために暗号化をOFFにする運用も散見された。

無線機器メーカーは、2003年頃から暗号化設定を簡単に使えるように独自で自動設定システムを開発したが、結果として互換性のない複数のシステムが乱立し、各メーカーによる独自規格による囲い込みが始まりつつあった。

これを受けWi-Fiアライアンスは、囲い込みではなく「どのメーカーの製品でも接続できる」ようにWPS規格を策定した。WPS対応機器同士ならメーカーが異なっても無線LANセキュリティの暗号化の複雑な設定を簡単に行なうことができる。

2. 更新履歴
-------

Version 1.0 - 2006年8月16日公開
Version 2.0.0 - 2010年12月20日公開。曖昧な点を明確にしたり、追加の改善をした。
Version 2.0.1 - 2011年8月11日公開。デバイスタイプにタブレットPCが追加された。
Version 2.0.2 - 2012年1月30日公開。PIN認証時、複数回失敗した場合には一定時間ロックするブルートフォース対策機能が必須となる。
Version 2.0.4 - 2014年3月21日公開。NFC認証など曖昧な点を明確化。
Version 2.0.5 - 2014年8月4日公開。Wi-Fi P2Pとの関係を明確化。
Version 2.0.6 - 2018年4月26日公開。Multi-AP識別子を追加。
Version 2.0.7 - 2019年12月9日公開。Multi-AP要素など細部追記。
Version 2.0.8 - 2020年12月1日公開。編集上の更新。

3. 接続方式
-------

規格上、PINコード認証方式のサポートは必須であり、その他の方式のサポートは任意である。

3.1. PINコード認証方式
---------------

3.1.1. 手順
---------

アクセスポイントかクライアントのどちらかの設定画面や本体貼付のラベルで表示されている数字4桁または8桁のPINコードを確認し、その数字を反対側の設定画面で入力する。

3.2. PBC方式
---------------------

3.2.1. 手順
---------

子機：クライアントのWPSプッシュボタンを押す。
Windows、Android、プリンタ、携帯ゲーム機ではそれぞれの設定画面でESSIDの検索をして、接続操作をするか「WPSボタン」「Wi-Fi簡単接続」などの語句の操作。
親機：アクセスポイントのWPSプッシュボタンを押す。
親機が無線LANルーターの場合はそれぞれの機種によって「SET」「AOSS」「らくらくスタートボタン」「WPSボタン」などの各メーカーの機能ボタンの操作を割り当てることもある。 物理ボタンの場合、数秒の「長押し」で誤操作を避ける。
親機がタッチパネル画面のあるモバイルルーターの場合、その画面で「WPSプッシュボタン方式のボタンを押す」ことと同等の操作に進める。
数十秒して、子機側でWi-Fiの接続の確立を示す表示となる。
親機側アクセスポイントが無線LANルーターの場合、WPSプッシュボタン操作の接続待機中にランプの点滅などで示していたものはその終了を示す。なお、バッファローのAirStationシリーズやNECプラットフォームズのAtermシリーズには「WPS」ボタンはなく、独自規格のボタンがWPSプッシュボタンを兼ねている。AirMacシリーズも「WPS」ボタンはなく、「AirMacユーティリティ」から「WPSプリンタを追加」を選択することでプリンタ以外の機器も含めて接続できる。

3.3. 近距離無線方式
-----------------

当初の検討には含まれていたが最終的には採用されず、オプション扱いである。

アクセスポイントとデバイスを近づけ、NFCで情報を交換する。

3.4. USB メモリ方式
--------------

当初の検討には含まれていたが最終的には採用されず、すでに廃止されている。使用することは非推奨である。

4. 脆弱性
------

4.1. PINのブルートフォース攻撃
-------------------

2011年12月27日、WPSのPINコード認証方式に脆弱性があることが公表された。PINコードは4桁または8桁の数字を用いて認証を行うが、PINコードが間違っていた場合に返される「EAP-NACK」メッセージを読むことで最初の4桁が合っているかどうかの判定ができてしまう。また、4桁または8桁のPINコードのうち最後の1桁はチェックサムのため実際の鍵は3桁または7桁でしかない。そのため8桁のPINコードを総当たりで解読を試みても最大1万1000通りの試行で正解を見つけることができ、約4時間の攻撃で解読ができる。

2012年1月30日に公開されたWPS 2.0.2では、複数回認証に失敗した場合には一定時間ロックするブルートフォース対策機能が必須となったが、少しの緩和にすぎず、数日あれば解読されてしまう。

WPSではPINコード認証のサポートが必須と定義されているため、この脆弱性に対する根本的な解決策はない。WPSを無効化することが推奨されている。厳格にはWPSの規格には違反していることになるが、一部のアクセスポイントはPINコード認証のみを無効にする機能を搭載している。

4.2. Pixie Dust attack
----------------------

2014年9月、Ralink、Broadcom、Realtekのチップセットを搭載した機器の生成する乱数が推測可能であることが公表された。1回の試行と一連のオフライン計算を実行するだけで正解のPINコードを見つけることができる。

これらのハードウェアを使う限り回避や緩和する方法は存在しなく、発見者はWPSを無効化することを推奨している。2015年4月には実証コードが公開された。

4.3. WPS PIN生成アルゴリズム
--------------------

2014年10月31日、D-LinkのWi-Fiルーターにデフォルトで設定されたWPS PINは完全なランダムな値ではなく、WAN側MACアドレスから一連の計算によって導かれているため、推測が可能であることが公表された。

2015年4月10日にはBelkinのWi-Fiルーターでも同様に推測が可能であることが公表された。

4.4. PINコードラベルの物理的な攻撃
---------------------

ルーターやアクセスポイントの多くの製品は本体に初期設定のWPS PINコードが記載されたラベルがついている。多くの場合はルーターの裏面に書かれているが、管理者の目を盗んでこのラベルを見ることができれば、許可されていない第三者であっても接続することが可能である。PINコードは初期設定から変更することが推奨されている。

4.5. プッシュボタンの物理的な攻撃
-------------------

プッシュボタン設定認証は、アクセスポイントの設置場所次第では脆弱である。許可されていない第三者であっても、管理者の目を盗んでプッシュボタンを押すことができれば接続できる。設置場所を工夫するか、プッシュボタン設定認証機能を無効にすることが推奨されている。

5. 衰退
-----

いくつかの脆弱性を受け、WPSは順次廃止の方向へ進んでいる。Wi-Fiアライアンスは代替としてWi-Fi Easy Connectと呼ばれるQRコードやNFCタグを用いた接続を提唱し、普及が進んでいる。

2018年6月にWi-Fiアライアンスが発表したWPA3では、WPSによる接続を許可していない。

2018年7月、Googleは次期OS Android 9.0では、セキュリティ上の理由からWPSをサポートしないことを公表した。

6. 脚注
-----

7. 関連項目
-------

IEEE 802.11
AirStation One-Touch Secure System  - バッファロー
らくらく無線スタート - NECプラットフォームズ
Wi-Fi Protected Access
Wi-Fi Easy Connect
Wi-Fi

8. 外部リンク
--------

[1] - Wi-Fi Alliance