2021年5月、ニューヨーク大学アブダビ校の研究者、マシー・ヴァンホーフ(Mathy Vanhoef)氏が、Wi-Fi規格「IEEE802.11」の仕様に関する、複数の脆弱性を報告。この脆弱性群をまとめて「FragAttacks(フラグアタック)」と命名しました。
「FragAttacks」は、あらゆるWi-Fiデバイスに影響するとされる上、「FragAttacks」のうち3つは、Wi-Fi規格の仕様に関連する欠陥でした。
「IEEE802.11」の仕様に関する問題の一つ、「メモリからフラグメントのキャッシュがクリアされないことによる、情報窃取の問題 (CVE-2020-24586)」が悪用されることで引き起こされるサイバー攻撃が、「フラグメントキャッシュ攻撃(fragment cache attack)」です。本記事では、フラグメントキャッシュ攻撃とはどのような攻撃なのか、詳しく説明します。
フラグメントキャッシュ攻撃とは
ヴァンホーフ氏は、Wi-Fiの「フレームフラグメンテーション機能」に存在する欠陥について、万が一、この脆弱性が悪用された場合、情報漏えいや情報改ざんの被害を受ける可能性があることを指摘しています。
フレームフラグメンテーション機能とは?
本記事で紹介するフラグメントキャッシュ攻撃で悪用される機能が、「フレームフラグメンテーション機能」です。
アグリゲーション攻撃とは?仕組みと危険性、対策について徹底解説の記事で、小さなフレームを大きなフレームにまとめる「フレームアグリゲーション機能」に存在する脆弱性について、紹介しました。フレームフラグメンテーション機能は、フレームアグリゲーション機能の逆で、大きなフレームを小さなフラグメントに分割することで、接続の信頼性を高める機能です。
Wi-Fiを利用した通信では、フレームが大きい場合、フレームが破損したときには、完全なフレームを再送信する必要があります。大きいフレームでは、再送するのに非効率です。そこで、大きなフレームを小さなフラグメントに分割し、分割して個別に送信できるようにするのがフレームフラグメンテーション機能の役割です。
そして、保護されたWi-Fiネットワークにおいては、分割された各フラグメントは、個別に暗号化および認証されます。また、Wi-Fiフレームのヘッダには認証済みであることを示すメタデータが含まれます。すなわち、Wi-Fiヘッダには、受信者が安全に通信できるように、通信前におけるフレーム内でのフラグメントの場所を定義した情報が含まれることになります。通信が完了すると、すべてのフラグメントをつなぎ合わせて再構築し、フレームを分割前の状態に戻します。
フレームフラグメンテーション機能の問題点
ここで問題となるのが、通信切断後にも、メモリ・ネットワークからフラグメント情報が削除されないというWi-Fi規格の欠陥です。
規格では、ネットワークからクライアントが切断した場合、再構成されなかったフラグメントを、Wi-Fiデバイスのメモリから削除する必要がないとしています。よって、外部からメモリに不正なフラグメントを注入すれば、ユーザが意識することなく、メモリに残った未構成フラグメントと不正なフラグメントを組み合わせて、パケットを生成して流出させるということが可能になります。
フラグメントキャッシュ攻撃を受けると?
フラグメントキャッシュ攻撃の標的となってしまうと、ユーザにはどのような被害が及ぶのでしょうか。
フラグメントキャッシュ攻撃成立の条件
まず、フラグメントキャッシュ攻撃成立の前提条件は次のとおりです。
- 信頼性の低い不特定多数のユーザが利用する、ホットスポットのようなネットワーク
- クライアントユーザが分割したフレームを送信
次世代規格「Wi-Fi 6」を使用しない限り、クライアントが断片化したフレームを送信するという状況はほぼ発生しないため、フラグメントキャッシュ攻撃を受ける状況は限定的です。
フラグメントキャッシュ攻撃の被害
フラグメントキャッシュ攻撃を受けると、ユーザは次のような被害を受ける可能性があります。
- 機密情報を外部に流出
- 情報の改ざん
Wi-Fi規格上のこの欠陥を悪用して、フラグメントキャッシュ攻撃が行われる条件は限定的ですが、影響範囲が広い点には注意が必要です。非常に古いWEPプロトコルでさえ、この脆弱性の影響を受けることが判明しています。すなわち、WEPプロトコルが登場した1997年以降に発売されたWi-Fiデバイス全てが、影響範囲となります。
混合鍵攻撃(mixed key attack)とは
「FragAttacks」のうち、フレームフラグメンテーション機能の欠陥を悪用して行われる可能性がある攻撃が、もう一つあります。「混合鍵攻撃」です。
フレームフラグメンテーション機能により、大きなフレームを小さなフラグメントに分割したとき、各フラグメントは暗号化されると説明しました。ところが、同じフレームに属するフラグメントはすべて、同じキーで暗号化されます。一方、規格では、受信者側がすべてのフレームを同一のキーで復号することを要求していません。よって、異なるキーで暗号化したフレームが混在していたとしても、受信側は受け入れてしまいます。
なお、攻撃者がフレームフラグメンテーション機能に存在する欠陥を悪用して、混合鍵攻撃を行った場合、情報の流出という被害が発生する可能性があります。
フラグメントキャッシュ攻撃の対策
ヴァンホーフ氏は、フラグメントキャッシュ攻撃を避ける方法として「ネットワークを切断・再接続するたびにメモリからフラグメントを削除する」という方法を挙げています。ただ、一般のユーザには対応が難しいため、一般的には、次のような対策に取り組むことが推奨されています。
ヴァンホーフ氏は、CVE-2020-24586の他、「FragAttacks」に含まれる脆弱性の公表には、細心の注意を払っており、主要なデバイスベンダーに対し情報提供を行うと共に、情報公開方法も各社と協議していました。
このため、各ベンダーの製品について、修正パッチが揃いつつあります。使用中のデバイスの修正パッチが公開されていたら、速やかに適用しましょう。
そして、まだ修正パッチが公開されていないデバイスに対しては、まず、セキュリティに関する一般的な注意点を確認することをヴァンホーフ氏は提案しています。デバイスに修正パッチを適用する他、パスワードを使い回さない・重要なデータはバックアップする・不審なWebサイトにアクセスしない・アクセスしているWebサイトがHTTPSを使用していることを確認するなどです。
まとめ
Wi-Fi規格「IEEE802.11」の仕様に存在する脆弱性を悪用することで引き起こされる可能性のあるサイバー攻撃、「フラグメントキャッシュ攻撃」について紹介しました。
なお、フラグメントキャッシュ攻撃に関して、主要なIT/デバイスベンダーが公開している情報は次のとおりです。
参照Intel® PROSet/Wireless WiFi , Intel vPro® CSME WiFi and Killer™ WiFi Advisory/Intel
参照Multiple Vulnerabilities in Frame Aggregation and Fragmentation Implementations of 802.11 Specification Affecting Cisco Products: May 2021/Cisco
参照Wi-Fi Alliance® security update – May 11, 2021/Wi-Fi Alliance
参照DSA-2021-100: Dell Client Platform Security Update for Intel PROSet/Wireless WiFi and Intel vPro CSME WiFi Vulnerabilities/DELL
参照Intel® PROSet、ワイヤレスWiFi、Intel vPro® CSME WiFi、Intel® Killer™ WiFiのアドバイザリ/Lenovo