Wireless・のおと

無線 LAN が目指すもの(5)

ブログ
セキュリティ 無線LANが目指すもの

「より速く」「より安く」「より遠くへ」と続けてきたこのシリーズ、今回は「より安全に」をテーマにしたいと思います。ただし今回は未来の話というより、今までの経緯を説明することに多くを割くことになりますのでご了承ください。今回のトピックは「WEP とは何だったのか」「WPA/WPA2 をめぐる混乱」「救世主 WPS」「無線 LAN セキュリティの現在、過去、未来」です。

WEP とは何だったのか

 

WEP は Wired Equivalent Privacy(有線相当の安全性)の略で、1997 年に元祖 802.11 無線 LAN 規格が制定されたときから含まれていたセキュリティ仕様です。WEP の目的はその名が示すように「有線相当の安全性」を提供することでしたが、どちらかと言えば「最低限のセキュリティを最低限のコストで実現する」という作り手の事情が多く影響していた感は否めません。

WEP の暗号化メカニズムは非常にシンプルなもので、RC4 と呼ばれるアルゴリズムに秘密鍵を与えてパケットデータを暗号化させるだけです。ただし同じ鍵を何度も繰り返し利用することによる鍵情報の推定を避けるため、IV(Initialization Vector)と呼ばれる乱数情報をパケット先頭に付加し、これを毎回変化させることで鍵の推定を困難にするつもりでした。

WEP の問題はまず、この IV が充分な長さを持っていなかったことでした。WEP の IV 長は 24bit で、これは 1677 万パケット毎に同じ値が巡ってくることを意味します。1677 万といえば「凄く大きな数字」に思えますが、11Mbps ÷ 1500 バイト/パケットで計算すれば流量は 960 パケット毎秒となり、この調子で通信が続けば 5 時間弱の周期で 1677 万パケットが流れる計算になります。もっとも同じ鍵を二度使ったからといってすぐに鍵情報が推定できる訳ではありませんが、長期間にわたって盗聴を続けることができれば同じ鍵で暗号化された情報を数十、数百と集めることができ、それを統計解析にかけることで容易に暗号鍵を逆算することができてしまいます。

しかし WEP の問題は IV 周期が短いだけでなく、IV と秘密鍵の組み合わせが単純な結合演算によってなされていたことにもありました。このため特定の IV パターンでは秘密鍵の情報が推定しやすい「Weak IV」という落とし穴があり、2001 年頃には Weak IV を選択的に待ち受けることにより数時間程度の盗聴で秘密鍵が判明してしまうことが明らかにされました。その後も WEP セキュリティホールの指摘は相次ぎ、市販のノートパソコンでも数分程度で解読できることが発表されるに至って WEP に対する信用は地に墜ちました。今日ではもはや、WEP による安全性は「気休め」以上のものだとは考えられていません。

WEP の脆弱性は「暗号アルゴリズム実装の失敗例」「繰り返してはならぬ教訓」として多くの場で取り上げられています。とはいえ、実装と運用が比較的容易で仕様の混乱も少なく、「無いよりマシ」程度とはいえ Wi-Fi 無線 LAN 普及初期からセキュリティ機能を与えていた事実には一定の評価を与えて良いのではないか、と私は思います。

 

 

TKIP の功罪

 

WEP の脆弱性は早い時期から指摘されており、WEP に代わるセキュリティ機構を標準化すべく IEEE802.11i 分科会がスタートしたものの、その制定は難航し最終標準の確定まで時間がかかると思われました。しかし WEP の脆弱性問題を座視するわけにもゆかなかったため、2003 年に Wi-Fi Alliance において独自に制定されたセキュリティ規格が WPA (Wi-Fi Protected Access)です。

WPA は 802.11i のドラフト案をベースとしており、将来規定される 802.11i 標準にできる限り近い(可能であれば全く同じ)仕様となることが考慮されていました。WPA には当時判明していた WEP の弱点をカバーするとともに、既存のハードウェア上でドライバ/ファームウェアをアップデートするだけで適用可能なことが求められました。そのため暗号アルゴリズムは WEP と同じ RC4 を使い、ただし秘密鍵と暗号鍵の関係をより複雑にすることで逆算を困難にする TKIP (Temporal Key Integrity Protocol)という機構が採用されました。

かくして WEP に代わるセキュリティ標準として登場した WPA でしたが、期待に反して(?) IEEE802.11i の制定はスムーズに進み、2004 年には仕様公開に漕ぎ付けました。この 802.11i に基づき、Wi-Fi Alliance によって改めて規定されたセキュリティ標準が WPA2 です。WPA2 では TKIP に代わり、より安全性の高い次世代暗号 AES (Advanced Encryption Standard) が標準実装として採用されました。

しかし「WPA」と「WPA2」という2つのセキュリティ「標準」が相次いで登場したことは、ユーザーの間に混乱を招くことになってしまいました。WPA と WPA2 に互換性はあるのか無いのか?互換性が無いなら一体何が違う?WPA2 のほうが新しくて良いものなの?そうだとすれば、WPA を使う意味はどこにあるの?等々...。WEP 脆弱性を早急に対策すべく導入された WPA-TKIP でしたが、中途半端な時期に中途半端な仕様を導入してしまったことは功罪相反する結果になってしまったのかも知れません。

 

 

WPA と WPA2 をめぐる混乱

 

WPA と WPA2 は「似て非なるもの」です。ヘッダフォーマットや鍵交換方式が異なるため直接の互換性はありません。しかし、両者で定義されている機能はほぼ同等です。暗号アルゴリズムとして WPA では RC4(TKIP)、WPA2 では AES(CCMP) の実装が義務付けられていますが、オプションとして WPA-AES や WPA2-TKIP の存在も認められています。同じ暗号アルゴリズムで使うかぎり両者の安全性に大差はなく、「同じ AES でも WPA2 のほうが鍵長が長い」とか「WPA2 では二重に暗号化する」「WPA2 にはデータ改竄検査機能があるが、WPA には無い」といったような解説は何かの誤解か間違いです。

しかしながら、「WPA/WPA2」「TKIP/AES」の有意組み合わせだけで4種類もあることは、それ自体が既に混乱のもとです。WPA-TKIP, WPA2-AES の組み合わせでしか使えない製品も少なくありませんが(※註)、その表記は「WPA」「WPA2」としか書かれていなかったり、あるいは「TKIP」「AES」としか書かれていなかったりで統一されていません。一部のメーカーでは TKIP/AES を自動認識する「WPA-AUTO」だとか、WPA/WPA2 を同時稼動させる「WPA-MIXED」といったモードを設けているところもありますが、その機能の意味するところがユーザーに正しく伝わらなかった場合には、更なる混乱を招いてしまう事もあります。

 

(※註)そもそも WPA2-TKIP で動く製品は多くありませんし、AES が使えるのにわざわざ TKIP を使う意義も疑問です。ですが著名な実装系の幾つか...端的に言えば Windows7 では WPA2-TKIP がサポートされています。[表示]

 

WPA/WPA2 に絡んでもうひとつややこしい話題は、WPA/WPA2 ともに「WPA(WPA2)-Personal」と「WPA(WPA2)-Enterprise」という2つの動作モードがあることです。しかし Personal と Enterprise の違いは暗号強度の強弱ではなく、鍵情報を個別に管理するか、集中管理するかという違いだけです。

Personal 版は PSK(Pre Shared Key) と呼ばれることもあり、要するに AP 側・クライアント側ともに暗号鍵を手動設定するモードのことを指しています。これに対して Enterprise 版のほうは「認証サーバ」と呼ばれる仕組みを用い、一箇所のサーバで集中的に鍵管理を行うモードのことを指しています。認証サーバの設定運用は楽ではないので、十数台程度の機械しか扱わない場合は PSK で個別に設定管理したほうが良く、逆に数百台の機械を扱う場合には認証サーバを立てて一括管理したほうが良い、という風に使い分けられます。

なお WPA-Enterprise には「EAP認証方式の乱立」という頭の痛い問題があるのですが、長くなりすぎるので今回は触れません。

 

 

救世主?WPS

 

歴史的経緯や TKIP の功罪はともかく、無線 LAN のセキュリティ規格について「混乱がある」のは事実であり、そして改善されなければならない課題でした。理想的には、店で買ってきた製品を箱から出して電源を入れればすぐにつながることが望まれます。しかし本当にそうしてしまうと、隣の部屋の住人やら、誰かのデータを盗聴しようとする悪い人にも「すぐに」つながってしまうことになってしまい、それはそれで困ります。いかにして「簡便性」と「安全性」を両立するかが最大の課題でした。

この問題に対しては 2005 年頃から各社さまざまな方式が提案され、一時期は似て非なる標準が乱立する様相を呈していましたが、2007 年に Wi-Fi Alliance による WPS(Wi-Fi Protected Setup) として標準化されました(※註)。WPS では当初「USB メモリ方式」「近距離無線方式(NFC)」「押しボタン方式(PBC)」「暗証コード方式(PIN)」の4方式が検討されていましたが、最終的には PBC と PIN 方式の2つに絞られました。

 

(※註)企画当初には Wi-Fi Simple Config と呼ばれていたため、略して WSC と呼ばれることもあります。また、Microsoft 社は WPS 互換の機能を Windows Connect Now 略して WCN と呼んだりもしています。WPS に WSC に WCN...似て非なる略称が氾濫するのは勘弁して欲しい、と私も思います。

 

PBC 方式の場合、アクセスポイントと端末のそれぞれについて「ほぼ同時(30秒~3分くらい)」にボタンを押すことで「接続したがっている相手がいる」と識別し、特殊なパケットを交換して秘密情報を共有します。

PIN 方式の場合はもう少し複雑で、少なくともどちらか一方(普通は AP 側、設定用 WEB 画面を流用する)に入力機構が必要となります。デバイス側に LCD 等が付いている場合は乱数生成された PIN コードが、表示器を持たないデバイスでは製造時に付加された PIN コードがラベルに印刷されているので、これを AP の WPS 設定用 WEB 画面から入力することによって「正しい接続相手」を識別し秘密情報を共有します。

いずれの方式も、「部屋の外で盗聴しようとしている悪い人には知り得ない」情報を用いて安全な鍵交換を実現している事になります。PBC 方式の場合は「ボタンを押したという行為(が行われた時間)」、PIN 方式の場合は「PIN コード」がそれにあたります。

なお、Wi-Fi Alliance は先日(2010 年末)に WPS 2.0 仕様を公開しました。これは従来の WPS の仕様をより明確に再定義し、Wi-Fi Direct への対応など一部の新機能を取り込んだもので、WPA/WPA2 のように「似ているけど直接の互換性はない」ということはありません。

 

 

無線 LAN セキュリティの現在、過去、未来

 

WPA2-AES + WPS2.0 は Wi-Fi 登場から 10 年経って、ようやく辿りついた一つの到達点です。今後しばらくの間「WPA3」や「WPS3.0」が発表されることはないと思いますし、もしそういう場合にも従来製品との互換性が考慮されたものになるでしょう。

しかし、過去 10 年間の混乱はまだ収まっていません。全ての製品が WPA2 を実装している訳でもありませんし、新製品に WEP が搭載されなくなった訳でもありません。近年の話では携帯ゲーム機の某ベストセラー機種が「WEP のみ」の実装になっているがために、安全性が確保できないと判っていながら WEP を載せざるを/使わざるを得ない、というような事情もあったりします。結果としてユーザーの前には「WEP40」「WEP128」「WPA-TKIP」「WPA-AES」「WPA2-TKIP」「WPA2-AES」「WPA/WPA2-AUTO」「WEP/WPA-MIXED」のような選択肢が表示され、「わからない」「つながらない」「何なんだこれは」「結局どうしたらいいの?」という悲鳴がネット質問箱やカスタマーサポート電話に溢れることになっています。

当分のあいだ、WEP や WPA-TKIP など過去のシガラミが消えてゆくのを待ちながら、WPA2+WPS2.0 という標準が普及しデファクトスタンダードとなって、「無線 LAN 設定なんて簡単だよ」と言われるようになるのを待つことになるでしょう。

 

WPA2-AES はいつまで安全に使えるのでしょうか。今のところ、AES には有効な攻撃方法が発見されていません。力任せの総当たり攻撃で 256bit の鍵を破ろうと思えば、一回の演算が 1nsec で出来るとしても 10^68 秒という途方も無い時間がかかる計算になります。10^68 秒と言われてもピンときませんが 10^48 兆年で、演算を一兆倍に高速化し一兆台で並列演算してもまだ 10^24 兆年かかるという途方もなさです(※註)。今後解析が進めば幾つか脆弱性が判明してゆくかも知れませんが、鍵情報数十ビットを知る方法が明らかになった程度では AES 安全性は崩れません。控えめに見積もっても今後 10 年くらい、256bit AES には実用上充分な安全があると考えて良いでしょう。

 

(※註)WEP/TKIP で用いられている RC4 は鍵長 128bit なので AES に匹敵する暗号強度がありそうに思いますが、内部構造が単純なので逆算されやすく、相関統計や差分比較など「力任せの総当たり」以外の攻撃法で比較的簡単に破られてしまいます。

 

とはいえ、256bit AES とて未来永劫絶対に安全とは言えません。コンピュータが小型高速化し、より大量のデータをより高速に演算できるように進歩してゆく限り、いつかは 256bit AES の安全性も揺らぐ日が来るでしょう。その時には「WPA3.0」が出るのでしょうか?

個人的には、ネットワーク固有のデータリンク層ハードウェアへ一律に暗号化を任せるのはそろそろ止めにして、トランスポート層やネットワーク層のソフトウェア(IPsec や TLS)で動的にセキュリティパイプを確保するようにして欲しい、と思っています。そうしなければ、セキュリティ規格が変わるたびにまた上位互換性だとか機材の買い替えだとかで大騒ぎすることになりますから...。

もっともモノを売る製造業としては、数年に一度くらい「買い替え需要」が発生してくれた方が嬉しいのかも知れませんけど。


 

組込み無線LANモジュール製品ページ

関連記事

製品のご購入・サービスカスタマイズ・資料請求など
お気軽にお問い合わせください