WPA2とWPA3の違い ― 無線LANの暗号化と認証
WPA2と
WPA2とWPA3の違いは、パスワードから鍵を決める手順
WPA2とWPA3の主な違いは、パスワードから暗号化の鍵を決める手順にあります。WPA2のパーソナルでは、傍受されたやりとりをもとに、攻撃者の手元でパスワードを何度でも試されます。WPA3はSAEという手順に変えて、これを防いでいます。
WPA3でつなぐときは、接続や切断を伝える管理用の通信を守る仕組みも必須です。データの暗号化には、どちらもAESを使います。ここで比べるのは、家庭などで1つのパスワードを共有するパーソナルの方式です。家のWi-FiをWPA3に切り替えるか迷うときの判断材料になります。
WEP・WPA・WPA2・WPA3の違いと移り変わり
無線LANの暗号化は、WEP・WPA・WPA2・WPA3の順に作られてきました。WEPは、IEEE 802.11の規格に入っていた方式です。米国NISTの資料SP 800-97によると、WEPは暗号の使い方に弱点があり、少ない通信から鍵を割り出されます。鍵を長くしても、この弱点は解消しません。
WPAは、IEEEが改良版の規格を作っている間に、Wi-Fi Allianceが用意した暫定の方式です。既存のWEPの機器のまま、ソフトウェアの更新で使えるように作られました。改良版の規格が完成した後、それにもとづいて作られたのがWPA2です。
TKIPとAESの違い
WPAで必須のTKIPは、WEPと同じRC4という暗号を使っています。WPA2で必須になったCCMPは、共通鍵暗号のAESを使う方式です。SP 800-97は、TKIPは高い安全性が必要な環境には向かないとし、CCMPを長期的に使う方式と位置づけています。
WPA3の仕様の初版は、2018年に公開されました。WPA3は、WPA2と同じ4ウェイハンドシェイクを残し、その前の段階を入れ替えています。次の図で、5つの方式の暗号化の方式・鍵の決め方・辞書攻撃への強さなどを比べられます。
- 暗号化の
方式 - RC4と
いう 方式で 暗号化します。 鍵の 長さは 40ビットか 104ビットです。 - 鍵の
決め方 - 全員が
同じ WEPの 鍵を 持ちます。 接続ごとに 鍵を 新しく 決める 手順は ありません。 - 辞書攻撃への
強さ - 辞書攻撃以前の
問題が あります。 数分ほど 傍受した 通信から、 中身を 解読される ことがあります。 - 管理フレームの
保護 - ありません。
PMFは、 2012年に WPA2の 任意の 機能と して 追加された ものです。 - いまの
扱い - 選びません。
WPA3の 仕様は、 WPA3と 同じ ネットワークで WEPを 有効に する ことを 禁じています。
- 暗号化の
方式 - TKIPが
必須です。 TKIPの 土台は、 WEPと 同じ RC4です。 - 鍵の
決め方 - パスワードから
作った 共通の 鍵の 元を 使い、 4ウェイハンドシェイクで 通信の 鍵を 作ります。 WPA2と ほぼ 同じです。 - 辞書攻撃への
強さ - 鍵の
決め方が WPA2と 同じなので、 傍受した やりとりを もとに 手元で パスワードを 試されます。 - 管理フレームの
保護 - ありません。
PMFは、 2012年に WPA2の 任意の 機能と して 追加された ものです。 - いまの
扱い - 選びません。
WPA3の 仕様は、 WPA3と 同じ ネットワークで WPAや TKIPを 有効に する ことを 禁じています。
- 暗号化の
方式 - AESを
使う CCMPが 必須です。 TKIPは 任意で、 使わない 設定にします。 - 鍵の
決め方 - PSKです。
パスワードから 作った 鍵の 元を 全員で 共有し、 4ウェイハンドシェイクで 通信の 鍵を 作ります。 - 辞書攻撃への
強さ - 弱いです。
傍受した 4ウェイハンドシェイクを 使えば、 手元で パスワードの 候補を 何度でも 試せます。 - 管理フレームの
保護 - 任意です。
使うか どうかは 機器と 設定で 決まります。 - いまの
扱い - WPA3に
対応しない 端末を つなぐ ときに 使います。 パスワードは 長く、 推測されにくい ものにします。
- 暗号化の
方式 - AESを
使う 方式です。 WEPと TKIPは、 同じ ネットワークで 有効に できません。 - 鍵の
決め方 - SAEです。
パスワードを 知っている ことを 確かめ合い、 接続ごとに 新しい 鍵の 元を 決めます。 - 辞書攻撃への
強さ - 強いです。
傍受した やりとりでは 手元で 試せず、 1回の やりとりで 1つしか 試せません。 後で パスワードが 知られても、 傍受された 通信は 解読できません。 - 管理フレームの
保護 - 必須です。
PMFを 使わない 端末は 接続できません。 - いまの
扱い - すべての
端末が 対応していれば 選びます。 Wi-Fi 6の 認証を 受けた機器は、 WPA3に 対応しています。
- 暗号化の
方式 - WPA3と
同じです。 移行モードでも、 TKIPとは 組み合わせません。 - 鍵の
決め方 - WPA3に
対応する 端末は SAEで、 WPA2だけの 端末は PSKで つなぎます。 - 辞書攻撃への
強さ - WPA2で
つなぐ 端末の やりとりを もとに、 共通の パスワードを 手元で 試されます。 WPA3で つないだ端末の 通信は、 傍受されて パスワードが 知られても 解読できません。 - 管理フレームの
保護 - 使えますが、
必須ではありません。 WPA3で つなぐ 端末は、 必ず PMFを 使います。 - いまの
扱い - WPA2だけの
端末が 残る 間に 使います。 すべての 端末が 対応したら、 WPA3のみの モードに 切り替えます。
WPA2-PSKとは:パスワードから作った鍵の元を全員で使う
WPA2のパーソナルでは、アクセスポイントに設定したパスワードを、接続する人全員で共有します。端末とアクセスポイントは、パスワードから同じ計算で暗号化の鍵の元を作ります。この鍵の元をPMKと呼びます。
パスワードをあらかじめ共有しておくこの方式がPSKです。端末がつながると、両者は4ウェイハンドシェイクという4回のやりとりで、同じPMKを持っていることを確かめ合います。同時に、PMKと、やりとりの中で送り合う毎回変わる値から、通信に使う鍵を作ります。
オフラインの辞書攻撃が成り立つ理由
電波で流れるやりとりは、近くにいる人なら誰でも傍受できます。4ウェイハンドシェイクの一部には、PMKから作った鍵で計算した、改ざん検知用の値が付いています。攻撃者は、パスワードの候補からPMKを計算し、この値と一致するかを照合します。
この照合は、アクセスポイントとやりとりせずに、攻撃者の計算機だけで何度でもできます。よく使われる語の一覧から候補を選んで試す攻撃を、辞書攻撃と呼びます。攻撃者の手元だけで試す形を、オフラインの辞書攻撃と呼びます。Wi-Fi Allianceの導入ガイドにも、WPA2のパーソナルのパスワードはこの攻撃で割り出せると書かれています。
端末が接続するのを待つ代わりに、偽の切断通知を送って接続し直させ、やりとりを傍受する方法もあります。この偽の通知を防ぐのが、後で説明するPMFです。パスワードを保存する側で同じ攻撃に備える方法は、ハッシュ関数の記事で説明しています。
パスワードを知る人は、他人の通信も解読できる
RFC 8110によると、パスワードを知っている人は、他人の4ウェイハンドシェイクを傍受すれば、その人の通信の鍵も計算できます。SP 800-97も、1つのSSIDに1つのパスワードを使うと、利用者どうしで通信を解読できるとしています。家族や同僚のように、パスワードを共有する人どうしの通信は、互いに守られません。
WPA3のSAEとは:手元でパスワードを試せなくする
WPA3のパーソナルは、PSKの代わりにSAEという手順を使います。SAEは、パスワードだけで互いを確認し、2者だけが知る秘密を決める鍵交換の手順で、IEEE 802.11で定められています。
SAEでは、端末とアクセスポイントがそれぞれ乱数を選び、パスワードと組み合わせた値を送り合います。このやりとりから、接続ごとに新しいPMKが決まります。その後の4ウェイハンドシェイクはWPA2と同じです。Wi-Fi Allianceの説明によると、SAEのパスワードは鍵を作るためではなく、パスワードを知っていることを示すために使われます。
傍受したやりとりでは、パスワードを試せない
Wi-Fi Allianceによると、SAEのやりとりを傍受しても、手元でパスワードの候補を試すことはできません。パスワードを当てるには、アクセスポイントと実際にやりとりする必要があります。1回のやりとりで試せる候補は、1つだけです。
Wi-Fi Allianceの導入ガイドには、5,000個の候補から選んだパスワードを当てる例があります。WPA2では、傍受したやりとりをもとにすべての候補を手元で試せるので、必ず当たります。WPA3では、アクセスポイントへの攻撃を2,500回繰り返して、当たる確率がようやく半分になります。ガイドは、当たる確率が高くなる前に、失敗の続き方から攻撃に気づけるはずだとしています。
前方秘匿性:後でパスワードが知られても、傍受された通信は読めない
SAEには、前方秘匿性もあります。これは、後でパスワードが知られても、以前に傍受された通信の鍵は割り出せない性質です。WPA2のパーソナルでは、パスワードと傍受したやりとりから通信の鍵を計算できます。
ただし、WPA3でもパスワードは推測されにくいものにする必要があります。繰り返しの攻撃で当てられる確率は、パスワードの推測されにくさで決まるからです。
WPA3にも、実装の弱点は見つかっている
2019年には、SAEの計算にかかる時間の差などを手がかりに、WPA3の実装からパスワードを割り出す攻撃が報告されました。IEEE 802.11-2020は、この種の攻撃に強いHash-to-Elementという計算方法をSAEに追加しています。WPA3の機器も、ソフトウェアを更新して使いましょう。
PMFと移行モード:WPA2の端末が残るときの注意
PMFは、切断の通知などの管理フレームを守る
無線LANには、データのほかに、接続や切断を伝える管理フレームが流れます。PMFは、管理フレームのうち切断の通知などを、盗聴と偽造から守る仕組みです。PMFを使えば、前の節で説明した偽の切断通知を防げます。
PMFは、2012年にWPA2の任意の機能として追加されました。WPA3でつなぐ接続では、必ずPMFを使います。WPA3のみのモードでは、PMFを使わない端末はつながりません。
移行モードでは、WPA2の弱点が残る
WPA3のアクセスポイントには、WPA2の端末もつなげる移行モードがあります。同じSSIDと同じパスワードで、WPA3の端末はSAEで、WPA2だけの端末はPSKでつながります。移行モードでは、PMFは使えますが必須ではなく、PMFを使わないWPA2の端末も受け入れます。
その代わり、WPA2でつなぐ端末のやりとりをもとに、共通のパスワードをオフラインで試されます。パスワードを割り出した攻撃者は、WPA2でネットワークに接続できます。それでも、WPA3でつないだ端末の通信は、SAEの前方秘匿性で守られます。
Wi-Fi Allianceは、すべての端末がWPA3に対応したら、WPA3のみのモードに切り替えるよう勧めています。来客の端末のために移行モードが必要なら、来客用のネットワークを分けて移行モードで動かす例を挙げています。6 GHz帯では、移行モードもPSKも使えません。
パーソナルとエンタープライズの違い
ここまでは、パスワードを共有するパーソナルの方式でした。企業向けのエンタープライズでは、利用者を1人ずつ認証サーバで確認します。認証の手順とサーバの仕組みは、RADIUSの記事で説明しています。
WPA3のエンタープライズは、WPA2のエンタープライズの手順を置き換えるものではありません。使ってよい組み合わせを決め直し、WPA3でつなぐ接続ではPMFを必須にしたものです。192ビットのモードは、エンタープライズだけにある選択肢です。このモードは暗号化にGCMP-256を使い、ほかのモードの端末とは混在できません。
パスワードのない公衆無線LANを暗号化するOWE
カフェや空港には、パスワードを入れずにつなげる無線LANがよくあります。このような無線LANでは、電波の上の通信が暗号化されていません。パスワードを店内に掲示して守る方法もありますが、前に説明したとおり、パスワードを知っている人は他人の通信の鍵を計算できます。
OWEは、端末とアクセスポイントが接続のたびに鍵交換をして、電波の区間の通信を暗号化する方式です。RFC 8110で定められていて、Wi-Fi Allianceはこの方式をWi-Fi Enhanced Openと呼んでいます。
OWEは暗号化だけを行い、相手が本物のアクセスポイントかは確かめません。偽のアクセスポイントで通信の間に入る手口は、中間者攻撃の記事にまとめています。OWEが守るのは電波の区間だけなので、Webの通信はHTTPSでも保護する必要があります。
KRACKとWPA3の関係
KRACKは、2017年に公表された、WPA2の4ウェイハンドシェイクを狙う攻撃です。攻撃者は、やりとりの3通目を端末に再送し、同じ鍵を再設定させます。すると暗号化に使う番号が初期値に戻り、通信を解読されることがあります。暗号化の方式によっては、偽の通信を挿入されることもあります。
発見者の説明によると、KRACKはパスワードを割り出す攻撃ではないので、パスワードを変えても防げません。CCMPを使っていても成り立ち、対策は端末とアクセスポイントのソフトウェアの更新です。更新した機器は、更新していない機器ともそのままつながります。
発見者は、KRACKを防ぐためにWPA3は必要なく、更新で修正できると説明しています。WPA3も、SAEの後に同じ4ウェイハンドシェイクを使います。また、更新が出るまでWEPに戻すことは勧めず、WPA2を使い続けるよう答えています。
練習問題(全6問)
正解:WPA2は
WPA3の
正解:傍受した
パスワード
正解:WEPの
TKIPは、
正解:WPA2で
移行モードでは、
正解:端末と
KRACKは、
正解:エンタープライズの
192ビットの
選んでから「採点する」を押すと、解説つきで答え合わせができます。
参考にした資料
- Wi-Fi Alliance WPA3 Specification Version 3.5(各モードの要件、192ビットのモード、6 GHz帯の制約)
- Wi-Fi Alliance Wi-Fi CERTIFIED WPA3 Technology Overview(SAE、前方秘匿性、PMF、移行モード)
- Wi-Fi Alliance WPA3 and Wi-Fi Enhanced Open Deployment and Implementation Guide v1.1(辞書攻撃の例)
- NIST SP 800-97(WEP・TKIP・CCMPと、PSKの扱い)
- Vanhoef・Piessens「Key Reinstallation Attacks」(WPAとWPA2の違い、4ウェイハンドシェイク)
- KRACKの公式サイト(攻撃の概要と対策)
- Dragonblood(WPA3の実装の弱点の報告)
- RFC 8110 Opportunistic Wireless Encryption(OWEと、公開のパスワードの弱点)
関連記事
おすすめの本 PR
ネットワークを初めて学ぶ人向けの入門書です。
![『[改訂新版]3分間ネットワーク基礎講座』の表紙](https://m.media-amazon.com/images/P/4774143731.09.MZZZZZZZ.jpg)
