メディア
連載
» 2017年12月19日 10時00分 公開

WPA2の脆弱性「KRACKs」とは何か?セキュリティ強化塾

無線LANで利用される通信規格「WPA2」で、「暗号化通信が破られる脆弱性が見つかった」というニュースが世界中を駆け巡った。

[キーマンズネット]

 無線LANで利用されている通信規格「WPA2」で、「暗号化通信が破られる脆弱(ぜいじゃく)性が見つかった」というニュースが世界中を駆け巡った。一部では「壊滅的」ともいわれたKRACKsがどのような脆弱性なのかを確認してみよう。

暗号化通信でも情報が盗聴される可能性

 2017年10月、無線LANで利用されている通信規格「WPA2」(Wi-Fi Protected Access II)で利用される暗号鍵の交換プロトコルに脆弱性が見つかった。悪用されると、暗号化通信が復号されてしまい、通信内容を盗聴される恐れがある。

 この脆弱性は、通信のセッション内で暗号鍵を強制的に再インストールすることから、「Key Reinstallation Attacks(暗号鍵再インストール攻撃、通称:KRACKs)」と呼ばれ、その恐怖とともにニュースはあっという間に広がった。発見したのはベルギーにあるルーヴェン・カトリック大学の研究者、マシー・ヴァンホフ(Mathy Vanhoef)氏だ

「KRACKs」の攻撃イメージ 図1 「KRACKs」の攻撃イメージ(出典:IPA「WPA2 における複数の脆弱性について」)

 KRACKsに関するレポートは、情報処理推進機構(IPA)をはじめ、多くのセキュリティベンダーがまとめている。影響を受けるのは、アクセスポイント(ルーターなど)とそこに接続する端末(iOS、Android、Windows、Linux)と幅広い。既に関係するベンダーが、修正パッチやアップデートファイルの提供に動いている。

 本件に関しては、各社が迅速に動いたことで「思ったほど致命的ではなかった」という印象を抱いたセキュリティ担当者も多いようだ。そこで今回は、大騒ぎとなったKRACKsという脆弱性を振り返ることで、あるべき「心構え」はどのような形だったのかを考えてみたい。

再確認:KRACKsによる攻撃が成功するためには

 KRACKsは、無線LANのプロトコルに起因する脆弱性だ。主に無線LANクライアント側のアルゴリズムにおいて、暗号鍵を管理する部分を攻撃し、盗聴を可能にする。本来、暗号鍵を作るための変数(nonce)は都度生成されるが、この脆弱性を攻撃されることにより、同じものが何度も再利用されてしまう。

 本脆弱性は、あくまで暗号化のための鍵を盗むという点がポイントであり、AESなどの暗号化アルゴリズムそのものが破られたわけではない。また、無線LANアクセスポイントとそこに接続する機器との間の暗号化された無線通信が復号されるのであって、その中を流れているHTTPSの通信が復号されるものではない。

 これまでの脆弱性とは異なる点として、特定のOSだけの問題ではなく、WPA2を利用する機器であれば影響を受けることが挙げられる。また、WPA2を利用する時には「パスワード」を設定するが、どのようなパスワードを用いたとしてもKRACKsの影響から逃れることはできない。つまり、強固なパスワードへの変更は本件に限れば対処にならない。

 攻撃は通信の盗聴が可能になるものだが、盗聴を行うためにはターゲットとなる無線LANネットワークの電波が届く範囲に存在しなければならない。まず、対象となるSSIDと同一の無線ネットワークを立ち上げ、通信の「中間」に入り込む必要がある。その後、脆弱性を用いて暗号鍵を書き換え、通信内容を傍受する。

脆弱性悪用フロー 図2 4-Way HandShakeの場合の悪用例(出典:NTTデータ先端技術「【緊急レポート】KRACKs(key reinstallation attacks:鍵再インストール攻撃)について」)

 KRACKsの対応策だが、まずは無線LAN利用機器の修正プログラムを適用したい。何らかの事情によって、アップデートが行えない場合の回避策が幾つか紹介されているので参考にしてほしい。

  • HTTPのWebサイトで重要な情報を送信しない(HTTPSが使われていることを確認する)
  • VPNを利用する
  • 電波が届く範囲を最小限にする

 なお、暗号化方式をWEPに切り替えてはならない。KRACKsへの対応ができていない場合でも、WPA2を使う方がよりセキュアであるからだ。

検証:KRACKsは本当に「致命的」で「壊滅的」だったのか

 まず、結論から述べよう。KRACKsは、その内容を把握さえできていれば対処が可能で、問題もある程度限定的だったといえる。KRACKsに限らず、「回避策が実行できる脆弱性」をそこまで恐れる必要はない。自社が取れる回避策を選び、それを粛々と進めればよい。

 あらためてKRACKs騒動を振り返ってみよう。最初の報道は2017年10月16日だったが、発見者のヴァンホフ氏は7月時点で関係するベンダーに対して脆弱性情報を提供している。当然、各ベンダーは修正プログラムの準備に着手していたはずだ。

 騒動となってしまった理由は、ヴァンホフ氏の発表方法が本人の意思に反して悪目立ちしてしまったからだ。きっかけは世界的なセキュリティイベント「Blackhat」の告知ツイートだった。10月6日に「2017年12月に開催されるBlackhatで、ヴァンホフ氏がWPA2をテーマにした発表を行う」という案内が流れると、これがあっという間にSNSで拡散され、当の本人も驚いているというコメントを出すまでに至った。

 しかも、この段階では、あくまで「理論」にすぎず、ヴァンホフ氏が動画で発表した実証コード(現在では非公開)はあるものの、インターネット上にKRACKsを悪用したマルウェアは存在しないという状況だった。

 さらに、KRACKsを実際に悪用するには、ハードルが高いことにも注目したい。「盗聴」や「改ざん」が可能だという点に注目されがちだが、そのためには通信の「中間」にいる必要がある。しかも、インターネットを経由した攻撃ではなく、実際にターゲットとなるオフィスのフロア近くに入り込まなければ攻撃が成立しない。

 回避策の1つとして上述したが、「無線LANアクセスポイントの出力をフロア内のみに限定する(弱める)」ことは、多くの業務用無線LAN機器が備える機能だ。これを機に適切な出力を見直しておきたい。また、「HTTPS通信を利用する」「VPNを利用する」という対策もKRACKsのためというよりは、企業の基本的なセキュリティ対策に含まれるべきものだ。

結論:どんなに「致命的」「壊滅的打撃」と話題になっても冷静な分析を

 KRACKsに限らず、WannaCryやBlueBorneなど、PCやスマホの脆弱性が一般報道で大きく取り上げられるようになった。しかも、詳細な情報がほとんどない状態での速報は、危機をあおりがちだ。だからこそ、セキュリティ担当者は冷静であるべきだろう。

 KRACKsが「騒動になった後」に注目してみよう。それは既に「回避策はある」「攻撃コードはまだ野に放たれていない」「アップデートも用意されつつある」という状況だった。落ち着いて対処すれば、致命的にも壊滅的にもならずに乗り切れるものだと分かったはずだ。

 あのWannaCryですら、対策のためのアップデートは存在していたし、ポートを閉じるなどの回避策も発表されていた。こちらは危機が現実のものとなるまで対応を後回しにしていた人が多かったため実際に大きな被害が生じたが、「いたずらに騒ぎすぎ」という点では反省が生かされていない感がある。

 今後も「インターネットが終わる」「全デバイスが壊滅的」といったアオリ文句を伴った脆弱性が登場するだろう。その時には焦らず騒がず、情報収集を行ってほしい。実現可能な対処方法は必ずあるはずだ。そして肝心なのは、平常時からセキュリティ情報を得るためのアンテナの感度を磨いておくことだろう。

Copyright © ITmedia, Inc. All Rights Reserved.

会員登録(無料)

製品カタログや技術資料、導入事例など、IT導入の課題解決に役立つ資料を簡単に入手できます。