今回のWPA2の脆弱性の件、どういう動作で通信が傍受されるのか調べてみた

BBB日記

今回なかなかに騒動になっているWPA2の脆弱性について、とりあえずどんなふうに通信を傍受されるのか、クライアントを狙った攻撃って何?アクセスポイントの方は関係なさそうなのにどっちもアップデートが必要ってどういうこと?と混乱している人も多いと思います。

とりあえず自分なりに調べて理解したつもりのことを記載しておきますので、自己責任でお読みください。(内容についてはなるべく調べたつもりですが正確性を保証するものではありません)

WPA2とその脆弱性について

まず、今回の脆弱性について、どのような実害があるのかという説明をする前にWPA2とは何か、というところからもう一度簡単に説明します。
無線LANを利用する際に無線LANのアンテナ(以下アクセスポイント、APと記載)と端末との間の無線の通信を傍受されたり、盗聴されたりしないように、通信の暗号化を行います。
WPA2というのはその暗号化の規格の一つ。

実際の暗号化はAESという暗号化方式で行われている。
暗号化した通信を行う場合、そのデータを活用するためには必ず暗号化を解除する必要がある。(複合化)
複合化は双方で共通の暗号化の鍵を持ち、それを使って暗号化した情報を元に戻す。

WPA2はAPと端末間でどのように通信を確立するかだとか、暗号化にどのような方法を使うかなどを定めており、今回暗号化の鍵のやりとりの部分に脆弱性が見つかった。

具体的には、WPA2と端末は接続までに4回事前の通信を行い、3回目と4回目の通信でお互いに暗号化の鍵を交換し合う。
この3回目の通信になりすまして偽装した鍵を端末に送り付け、自身も偽装した鍵を用いて端末と接続する。

という事のようです。

どのようにして脆弱性を突くのか

上記の脆弱性によりどのような事が起こりえるかというと、脆弱性のあるクライアントがWiFiに接続している場合、悪意のある第三者によって偽の暗号化の鍵を埋め込まれ、それによって当該端末の通信が複合化されてしまい、通信が傍受される。

という事が起こりえる。

このように偽装した暗号化鍵をクライアントに埋め込もうとした場合。
悪意の第三者は自身をAPなどに偽装して当該端末に偽装した暗号化の鍵を渡し、当該端末と偽装AP間で通信を確立させNWに接続できたように偽装して通信を傍受する、というのが最も簡単な方法だといえる。

つまりWiFiを利用しているとAPに偽装した悪意の第三者に端末とAPの間に割って入られ、従来は

端末-AP-インターネット

の通信が

端末-攻撃者-AP-インターネット

という形式になり、通信を全部複合化されて盗み見られる可能性がある。(暗号化方式によっては改ざんなどもされる)

その他

今回の脆弱性は上記のように端末とAPの間に割り込んで端末の情報が盗まれるタイプの脆弱性。
例えばこの脆弱性によって会社の無線LANアクセスポイントに無断でアクセスされ、そこを経由して社内のサーバから情報が盗まれる、といった類の事象は起こらない。

しかしながら、例えば情報を盗まれた端末の通信の中に何らかのuserid/passwordが含まれる場合、それを傍受されて悪用される(例:同じID/passwordを使いまわしているため盗まれたID/Passwordで社内のWiFiに接続され、そこから情報が盗まれるなど)可能性がある。

アクセスポイントのアップデートは必要なのか不要なのか

今回の脆弱性について、クライアントを標的とする脆弱性なのは理解いただけたと思いますが、色々なところでAP側でも対応が必要、だとかクライアント側だけで十分、だとかいろいろな意見が聞こえてきます。

これについて少し調べてみました。

今回発見された脆弱性にはCVE番号が採番されています。
CVEは米MITRE社が1999年に開始した脆弱性情報データベースで、ソフトウェアの脆弱性について、国や企業などの違いに拠らず共通して利用できる識別番号を提供しています。

CVE-2017-13077
CVE-2017-13078
CVE-2017-13079
CVE-2017-13080
CVE-2017-13081
CVE-2017-13082
CVE-2017-13084
CVE-2017-13086
CVE-2017-13087
CVE-2017-13088

このうちのCVE-2017-13082だけがAP側の脆弱性で残りは全部クライアント側の脆弱性になります。
このAP側の脆弱性は無線LANの802.11r(複数AP間を渡り歩く際のAPの切り替え(ローミング)をスムーズに動かすための企画)に関する脆弱性で、802.11rを利用していない場合は適用する必要はないと言えそうです。(それでも脆弱性を塞ぐという意味では最新のファームにアップデートするのが良いですが)
また、そもそも802.11rをサポートしていない物は対応の必要は無さそうです。

例えばPocketWiFiの類についてはあまり関係がないかなと思っていますが、メーカーの公式発表を待ちましょう。

結局スマホユーザーは何をすればいいのか

まずは自分のAndroid端末にアップデートが降ってくるのを待ちましょう。2017年11月以降のバージョンにアップデート出きれば脆弱生体策は出来たと考えて良さそうです。

BlackBerryのAndroid端末はたぶん対応してくれるから大丈夫です。
あとXperiaやGalaxyなんかも最近の機種についてはたぶん対応してくれるんじゃないかと思います。

それ以外のメーカーの端末についてはわかりません。

以前から何度も声を大にしていっていますが、セキュリティ対策を定期的に行ってくれるというのは非常に重要な評価ポイントだと思います。

CPUが何でRAMが何でストレージがいくらでカメラがどうこう、それも大事ですが、定期的にセキュリティの対策をやってくれるかどうかというのはそれと同列か、それ以上に重要な評価ポイントです。

今回の脆弱性について、自分の端末にはそんなに大事なデータが入っていないからいいや、と思っている人がいるかもしれないですが。

そういう人はメールを見たり、オンラインのストレージに何かをアップロードしたり、銀行やクレジットカードの情報を見たり、といった事はしないんでしょうか。
WiFiにつなげてる間は見ないよ、という人がいるかもしれませんが、Androidなんか裏で何のアプリが動いているかわかりませんから、アプリを起動していなくてもWiFiに繋がっている間に裏で通信している可能性だってあります。

Googleに連絡先を登録している場合はメールのID/Passwordを元に連絡先が全部盗まれる可能性だってあります。

セキュリティ面を置き去りにスペックだけを紹介して端末を高い安い言って中華スマホとかを勧めている今のIT雑誌は、危険な端末の販売を幇助しているという自覚を持ってもらいたいです。

コメント

タイトルとURLをコピーしました