PR

 無線LANで高速性と並んで重要視されてきたのがセキュリティだ。無線LANのセキュリティ規格として長年使われてきて実質的な標準となっているWPAに、最新版となるWPA3が14年ぶりに登場した。

脆弱性や攻撃を新規格で克服

 無線LANにおけるセキュリティは、新しい脆弱性や攻撃との戦いの歴史だった(図3-1)。

図3-1●無線LANセキュリティの歴史
図3-1●無線LANセキュリティの歴史
暗号を破られる攻撃手法が見つかるたびに、より強力な暗号方式を採用してきた。
[画像のクリックで拡大表示]

 無線LANの登場とともに開発されたセキュリティ規格WEPはアクセスポイント側に任意のパスワード(WEPキー)を設定し、同じパスワードを設定した端末からアクセスできるという方式である。

 WEPは通信の暗号化にも同じパスワードを使い、しかも変更せず使い続けるという問題の多い実装だった。暗号化アルゴリズムとして脆弱なRC4を使っていたこともあって、解読するツールが公開されるなど、あっさりと破られてしまう。そのため2004年には破棄され、現在では利用しなくなっている。

 このWEPに代わる規格として、2002年に登場したのがWPAだ。WPAでは、暗号化に使う鍵を一定時間ごとに更新する仕組みに変更して、安全性を大幅に高めた。利用する暗号化アルゴリズムにはWEPと同じRC4を使いながら、暗号方式の部分としてはWEPよりも安全性を高めたTKIPを採用した。

 だが、WPAもRC4を使っているためセキュリティ強度に不安が残った。そこで、2004年に登場したWPA2では米国政府の公式暗号方式として採用されたAESを標準で使うことで、さらに安全性を高めた。

 そして、14年ぶりに2018年に登場したのがWPA3だ。実際の製品での対応はこれからで、2019年からアクセスポイントや端末などの製品に順次採用される見込みだ。WPA3対応製品の多くは、現在も広く使われているWPA/WPA2対応製品との相互接続性を確保するための移行モードを用意し、当面は共存するとみられる。

 業界団体のWi-Fiアライアンスが無線LANの相互接続性を保証するための「Wi-Fi CERTIFIED」認定についても、当面はWPA2が必須要件のままだ。WPA3対応製品が増えるにしたがって、将来的にはWPA3が認定条件になると考えられる。

WPA2の脆弱性が突かれる

 WPA3の開発が進められた背景には、2017年10月に明らかになった「KRACKs」攻撃がある。WPA2の脆弱性を突く攻撃で、端末とアクセスポイントの間で最初に接続する際に使う「4ウエイハンドシェーク」という手順の途中に攻撃者が割り込む中間者攻撃の一種である(図3-2)。

図3-2●KRACKsによるWPA2への攻撃
図3-2●KRACKsによるWPA2への攻撃
攻撃者が間に入り、最初にやり取りする4ウエイハンドシェークの4番目のメッセージを妨害する。すると、3番目のメッセージがアクセスポイントから再送されて、クライアントにキーの再インストールを促して通信状態を初期化してしまい、改めて同じパラメーターを使って暗号化する。これにより、簡単に暗号を解読できてしまう。
[画像のクリックで拡大表示]

 具体的には、4ウエイハンドシェークの最後のメッセージ(図3-2のメッセージ4)の通信を妨害する。すると、アクセスポイントは3番目のメッセージがうまく送れなかったと判断し、端末に対して暗号化のキーを再送する。

 この再送された暗号化キーを改めてインストールする際に、本来は違うパラメーターを乱数で発生させなければいけないのに、同じものを使ってしまう製品があった。こうした製品では、再利用してはいけないパラメーターを何度も繰り返し使うことになるので、攻撃者から暗号化した通信を復号したり別のコンテンツを挿入されたりする危険性が高まる。

▼WEP
Wired Equivalent Privacyの略。
▼RC4
RCはRivest Cipherの略。
▼TKIP
Temporal Key Integrity Protocol の略。WPAではTKIPの利用が必須とされており、AESはオプションとなっている。
▼AES
Advanced Encryption Standard の略。WPA2でもオプションでTKIP が使える。
▼KRACKs
Key Reinstallation AttaCKsの略。
▼同じものを使ってしまう製品
例えば、Android 6.0では再インストールの際に、暗号化に使う鍵として「すべてのビットが0になっている鍵」がインストールされるようになっていた。このため、攻撃者が簡単に暗号を解読できてしまう。