脆弱性 Kr00k への対策
2020 年 2 月 28 日 Trevor Collins 著
Matthew Terry 署名記事
ESET 社が最近発見した脆弱性 Kr00k が悪用されると、Wi-Fi 経由でトラフィックを送信するデバイスから、暗号化されていないデータが送信されます。これは、KRACK という脆弱性と類似しています。ただ、KRACK はすべてゼロ値の暗号鍵をインストールすることによりデバイスのセキュリティを侵害しますが、Kr00k はクライアントまたはアクセスポイント(AP)が接続を完了する前に鍵を削除するタイミングの問題を悪用して、すべてゼロ値の暗号鍵が使用されます。いずれの脆弱性も、結果としてトラフィックが暗号化されずに Wi-Fi 経由で送信されます。ESET 社は、この脆弱性が悪用された場合、Broadcom 社および Cypress 社の Wi-Fi チップを搭載した数十億台のデバイスが、暗号化されていないトラフィックをWi-Fi 経由で送信することになると推測しています。ウォッチガードの製品には Broadcom 社のチップ、Cypress chips 社のチップはどちらも使われていないことを確認しているため、この脆弱性はありません。しかし接続されたデバイスに関しては、この攻撃の被害を受ける恐れがあります。
Wi-Fi 通信は通常、接続されたアクセスポイントと、複数のクライアントが順番にやりとりをすることで機能します。公共 Wi-Fi ネットワークを使用する場合を除き、デバイスは WPA2 や WPA3 などの標準を使用して無線で安全に通信します。クライアントと AP は通信を暗号化するため、Wi-Fi ネットワークの事前共有鍵(PSK)または 802.1x で認証を行う Wi-Fi ネットワークの拡張認証プロトコル(EAP)パラメータから、一意のキーを作成します。デバイスは通信の順番を待つ間、データのチャンクをバッファに保存します。いざデバイスの順番が来ると、ネゴシエートした鍵を使用してデータを暗号化し、送信します。
この通信は、各デバイスが順番にデータの送受信を行いながら続けることができます。1 つのデバイスがネットワークからの切断を決定すると、クライアントと AP 間の通信が停止します。これが発生する際には、デバイスのうち 1 つがワイヤレスネットワークから切断するメッセージを送信するのが普通です。
接続、または切断の際には、AP とクライアントは認証、または認証解除を行います。セッションが終了すると、クライアントは管理フレームを使用して AP で認証解除します。さらに、Wi-Fi 経由で管理フレームを送信するクライアントや AP は、鍵のネゴシエートが完了していないため、このトラフィックは暗号化されません。そのため、認証解除のパケットを偽装してクライアントを切断することができます。Kr00k は、認証解除パケットのタイミングを利用することにより、一部のデバイスをさらに悪用します。Broadcom 社やCypress 社の一部のチップが送信バッファ内のデータを含む認証解除パケットを受信すると、鍵をクリアしてから送信バッファ内のデータを送信し、送信バッファ内のトラフィックを暗号化せずに送信します。
攻撃者は、Wi-Fi Pineapple のような単純なデバイスでも、この脆弱性を簡単に悪用できるでしょう。認証解除パケットを送信し、トラフィックを監視するだけでよいのです。通常、バッファが保持するのは最大数キロバイトのデータです。大した量ではないようにも思えますが、タイミングが適切であれば、たとえばログイン情報の詳細も把握できます。また、攻撃者がこの問題を繰り返し悪用することで、時間をかけて大量のデータを盗み出して蓄積する可能性もあります。
クライアントが送信する可能性がある暗号化されていないトラフィックは少量であるため、Kr00k は KRACK ほど深刻な脆弱性ではないとウォッチガードは判断しています。また、クライアントが個人情報の載ったトラフィックを送信するタイミングを正確に判断することもできません。しかしこの攻撃は数十億台のデバイスに影響を与える上に、少しの知識があれば悪用できます。この脆弱性の悪用は、成功する確率こそ低いものの、実行しやすく、信頼性が高く、個人情報の詳細の収集を簡単に試行できます。
Broadcom 社と Cypress 社は両社のチップを搭載している製造メーカが利用できるパッチを公開しています。パッチを適用する以外には、ユーザ側で WPA3 のみを使用するように構成にするか、Wi-Fi SSID において 802.11w で保護された管理フレームを有効にすることによって、Kr00k のリスクを緩和できます。ウォッチガードの Wi-Fi Cloud ソリューションでは、802.11w で保護された管理フレームを有効にする設定もサポートしています。また、ワイヤレス侵入防止システム(WIPS)は攻撃者がクライアントやアクセスポイントに認証解除、関連付け解除フレームを送信することを防げませんが、ウォッチガードのクラウドマネージドアクセスポイント Wi-Fi Cloudには、攻撃者がこの脆弱性を利用しようとする際に発生する認証解除のフラッド攻撃を検出して、管理者に通知する機能があります。クライアント側では、HTTPS トラフィックの SSL 暗号化を行えば、ほとんどのデータをこの脆弱性の悪用から保護できますが、暗号化されていないトラフィックについては、信頼できる VPN を使用することで保護しましょう。