期待のネット新技術
A-MSDUを悪用する「Frame Aggregation」を利用した攻撃の流れ
【利便性を向上するWi-Fi規格】特別編(4)
2021年6月15日 06:00
【光Ethernetの歴史と発展】編も、そろそろ終盤に差し掛かったところではあるが、既報の通り、ニューヨーク大学アブダビ校のMathy Vanhoef氏が発見した、Wi-Fiのプロトコルそのものに起因する脆弱性の仕組みや対処法について、解説していきたい。
ちなみに、今回の脆弱性は、2017年に11月に「WPA2/WPA」の脆弱性を発見して公表したMathy Vanhoef氏が、オープンソースのWi-Fiスタックを分析し、IEEE 802.11の規格を体系的に調査していく中で新たに発見したものだそうだ。
「利便性を向上するWi-Fi規格」記事一覧
- Wi-Fiにおけるメッシュネットワークの必要性
- Wi-Fiメッシュ標準「IEEE 802.11s」策定の流れと採用技術
- Wi-Fiメッシュで通信コストを最小化する仕組みとは?
- 「IEEE 802.11s」策定までの流れと採用技術
- 11s非準拠のQualcomm「Wi-Fi SON」がWi-Fiメッシュの主流に
- 「Wi-Fi SON」製品は相互非互換、Wi-Fi Allianceは「EasyMesh」発表
- 最初のWi-Fi暗号化規格「WEP」、当初の目論見は“有線LAN同等のセキュリティ”
- Wi-Fi暗号化は「WPA」から「802.11i」を経て「WPA2」へ
- より強固になった「WPA」で採用された「TKIP」の4つの特徴
- 「AES」採用の「IEEE 802.11i」「WPA2」、11n普及で浸透
- WPA/WPA2の脆弱性“KRACKs”、悪用のハードルは?
- 4-way Handshake廃止で「SAE」採用の「WPA3」、登場は2018年末?
- SSID&パスフレーズをボタンを押してやり取りする標準規格「WPS」
- ボタンを押してSSID&パスフレーズをやり取りする「WPS」の接続手順
- WPSのPIN認証における脆弱性を解消した「WPS 2.0」
- フリーWi-Fi向け「Wi-Fi CERTIFIED Enhanced Open」で傍受が不可能に
- 暗号鍵を安全に共有する「Wi-Fi CERTIFIED Enhanced Open」
- 「IEEE 802.11u」がPasspoint仕様である「Hotspot 2.0」のベースに
- 国内キャリアも採用のホットスポット提供指標「WISPr」
- ホットスポットでの認証の問題を解消した「HotSpot 2.0」
- 【特別編1】全Wi-Fi機器に影響、脆弱性「FragAttack」の仕組みは?
- 【特別編2】脆弱性「FragAttack」悪用した攻撃手法とは?
- 【特別編3】脆弱性「FragAttack」を悪用する3つ目の攻撃シナリオとその手法
- 【特別編4】A-MSDUを悪用する「Frame Aggregation」を利用した攻撃の流れ
- 【特別編5】「Mixed Key Attack」を利用した攻撃シナリオとその手法
- 【特別編6】「FragAttack」を悪用した攻撃の足掛かりとなる脆弱性
- 【特別編7】Wi-Fiの脆弱性「FragAttack」を悪用した攻撃への対策とは?
Frame Aggregationを利用した攻撃の流れIPv4/v6クライアントのトラフィックを事実上全て傍受可能
前回までに3種類の攻撃手法を紹介し、最後に実証テストの結果だけをまとめて示したが、攻撃手法に関する話を、もう少し具体的に解説したい。
まず初回のFrame Aggregationを利用した攻撃について、その際にも掲載した以下の図にも少し出てくる攻撃の流れについて、細かく見ていこう。
まず、IPv4およびIPv6ホストに対しては、ポートスキャンを行い、暗号化されたTCP SYN/ACK応答の長さに基づいてオープンポートを検出した。一方、IPv4/v6のDual Stack構成のクライアントには、ICMPv6ルーターのアドバタイズメントを注入し、被害者を騙して攻撃者の管理下によるDNSサーバーを使用させることができる。
もう少し正確に言えば、IPv6のステートレスアドレス自動設定を悪用して、悪意のあるDNSサーバーを含むICMPv6ルーターのアドバタイズメントを注入する。これにより、Windows 10、macOS 10.15.4、Linux、Android 8.1およびiOS 13.4.1において、OSが利用しているDNSサーバーを「毒殺」できることが確認されている。
この方式では、被害者が一度でも攻撃者の設置した悪意のあるDNSサーバーを使用すると、攻撃者は全てのトラフィックを自身の管理する悪意のあるサーバーにリダイレクトできるので、事実上クライアントのIPベースのトラフィックを全て傍受できることになる。
ちなみに上では、IPv6ベースで悪意のあるDNSサーバーをホストするとしたが、必要ならばIPv4アドレスでDNS要求に応答させることも可能だ。
IPv4クライアントはトランザクション識別子を取得できれば同様に攻撃可能
一方、IPv4のみのクライアントに対しては、そのクライアントがDHCPの検出と要求に含める4バイトのトランザクション識別子を取得できれば、同様の方法で攻撃が可能である。ただ、このトランザクション識別子は「RFC2131」で定義される“xid(transaction ID)”であり、通常は予測不可能だ。
ところがiOSとmacOSでは、まず起動時にトランザクション識別子を生成した後は、DHCPリクエストを出すたびに、そのトランザクション識別子をインクリメントするという振る舞いが発見されている。また、MacOS Xではそもそもトランザクション識別子が予測可能であることが、「Cryptanalysis of IEEE 802.11i TKIP」という論文として既に発表されている。
あるいは、Xiaomiのセキュリティカメラなどでは、トランザクション識別子は電源投入時にランダムに生成されるが、全てのDHCPリクエストの際、このトランザクション識別子が再利用される問題もある。
そんなわけで、トランザクション識別子を何らかの方法で入手できたり、あるいはブルートフォースアタック(総当たり攻撃)によって力づくで見付けてしまえば、DHCPv4メッセージの偽造が可能となり、被害者に悪意のあるDHCPサーバーを使わせることができるわけだ。
ついでに言えば、Vanhoef氏が手持ちのWi-Fiモジュール「ESP-12F」(Raspberry PiやArduinoでも利用でき、Amazon.co.jpでも購入可能)の場合、再起動されても同じトランザクション識別子を使っているそうで、もうこうなると、トランザクション識別子を推測するのは極めて容易と言わざるを得ない。
A-MSDUが積極的に使われる11ad対応機器は市場に存在せず
もう1つ、特別編の第1回『全Wi-Fi機器に影響する脆弱性「FragAttack」の仕組みとは?』で、Frame AggregationではA-MSDUが悪用されやすいことを説明したが、「DMG(Directional Multi-Gigabit) Network」、要するに「IEEE 802.11ad」では、A-MSDUが積極的に使われる。
その際には、Subframeがデータ長+データのみで構成される「Short A-MSDU」の利用も可能だ。Short A-MSDU FlagはQoSフィールド内に定義されているため、Short A-MSDUは、DMG Frame内でのみカプセル化が可能であり、DMG Network内でのみ利用可能となっている。その結果、Short A-MSDU Flagは常に認証された状態で利用されることになるので、攻撃に用いることはできない。
ただし、これは仕様上の話で、実際には脆弱性を含む可能性がある。具体的には、ハードウェアとしてはShort A-MSDU Flagをサポートして認証も行っているが、ソフトウェアというかネットワークスタック側がShort A-MSDU Flagをサポートしていない(あるいはサポートし忘れた、などの)場合があり得る。
幸いというか不幸にもというか、「IEEE 802.11ad」は、2018年に公開した『60GHz帯の「IEEE 802.11ad」は普及進まず、「IEEE 802.11ax」の標準化進む』の段階でほとんど普及していないというか、普及に失敗していた規格だ。
現時点では、IEEE 802.11ad対応機器は市場に存在していないというのが正確なところで、購入するのは大変に難しい。このため、上の懸念が実際に脆弱性として存在し得るかどうかは、確認できていないという話だった。
一方、A-MSDU Frameを通常のFrameとして処理するよう、被害者を騙すという攻撃も理屈では考えられる。ただ、この場合、最初のA-MSDU Subframeの宛先MACアドレスがLLC/SNAPヘッダーの先頭として処理される関係上、宛先MACアドレスが「AA:AA:03:00:00:00」でないとLLC/SNAPヘッダーとしておかしくなるため、破棄されてしまうことになる。こうした制限が付く関係上、この攻撃が実際に行われる可能性は低いと判断できる。
さて、実際の攻撃を行ったデモの様子をVanhoef氏がYouTubeで公開している。その18秒~3分28秒までが、Frame Aggregationを悪用した攻撃例だ。実際Vanhoef氏がニューヨーク大学アブダビ校のサイトにログインしようとした際のユーザー名とパスワードが盗み出せる様子が順を追って示される。
この攻撃に対して脆弱性を持つのは、右表のA-MSDUの列に示された製品で、要するに試した全製品に脆弱性があったわけだ。コンシューマー向けのみならず、Aruba「AP-305」やCisco「Catalyst 9130」のような法人向けのアクセスポイントも例外ではない。
唯一この脆弱性と無縁だったのは、表で示されているように、NetBSD(と、表に示されてないがOpenBSD)であった。なぜかと言えば、そもそもA-MSDUに対応していないというのがその理由である。
テストは、TP-LinkのUSB Wi-Fiアダプター「TL-WN722N」2つでMulti-Channel MitM(Man-in-the-Middle)を実施している。説明によれば、「poc-aggregation.py」と言うツールでChannel Switchのアナウンスを偽造したそうで、動画で言えば59秒あたりからになる。
その直後に起動したOutlookでメールをチェックした状況で、既にダミーのウェブページへ誘導するためのhtmlコードがインラインで埋め込まれている様子が示されている。後はもう手順通りである。
ちなみに、これをFreeBSDおよびLinux 4.9以降でテストしたところ、A-MSDU Frameの先頭8Bytesが削除されていた。これは先頭8BytesをLLC/SNAPヘッダーと仮定し、これを削って残りを処理するという実装を行っていたためで、IEEE 802.11に規定されている処理としては正しくない。
なお、こうした処理を実行してしまうと、最初のA-MSDU Subframeの長さフィールドは、ソースIPアドレスの最初の2Bytesに対応することになる。もちろんこれはイレギュラーなので、結局Frameが破棄されて終わりということになってしまう。
また、被害者がファイアウォールを利用していない場合、IPv4パケットのソースIPアドレスを偽装することで、注入されたパケットが再び2番目のA-MSDU Subframeに含まれるようになる。
もし、被害者が偽装されたIPアドレスをブロックした場合、攻撃者はAmazon AWSのサーバーを借りて「3.5.0.0/16」のIPアドレスを利用することで、これを回避できるとしている。この場合、最初のA-MSDU Subframeの長さは733Bytesとなり、悪意のあるパケットを注入するのに十分なスペースがあるとのことだった。
「周波数帯を拡張するWi-Fi 6E」記事一覧
「Wi-Fi高速化への道」記事一覧
- 20年前、最初のWi-Fiは1Mbpsだった……「IEEE 802.11/a」
- ノートPCへの搭載で、ついにWi-Fi本格普及へ「IEEE 802.11b/g」
- 最大600Mbpsの「IEEE 802.11n」、MIMO規格分裂で策定に遅れ
- 1300Mbpsに到達した「IEEE 802.11ac」、2013年に最初の標準化
- 「IEEE 802.11ac」のOptional規格、理論値最大6933Mbps
- 「IEEE 802.11ac」でスループット大幅増、2012年に国内向け製品登場
- 11ac Wave 2認証と、ビームフォーミングの実装状況
- 「IEEE 802.11ad」普及進まず、「IEEE 802.11ax」標準化進む
- 「IEEE 802.11ax」は8ユーザーの同時通信可能、OFDMAも採用
- 「IEEE 802.11ax」チップベンダーとクライアントの製品動向
- 11ad同様に60GHz帯を用いる「WiGig」、UWBの失敗を糧に標準化へ
- 最大7GbpsのWiGig対応チップセットは11adとの両対応に
- 11adの推進役はIntelからQualcommへ
- 次世代の60GHz帯無線LAN規格「IEEE 802.11ay」
- 60GHz帯の次世代規格「IEEE 802.11ay」の機能要件
「利便性を向上するWi-Fi規格」記事一覧
- メッシュネットワーク編【1】【2】【3】【4】【5】【6】
- Wi-Fi暗号化編【1】【2】【3】【4】【5】【6】
- WPS(SSID&パスフレーズ交換)編【1】【2】【3】
- フリーWi-Fiスポット向け接続規格編【1】【2】【3】【4】【5】【6】
- スマホでQRコードを読み取り、ほかの機器をWi-Fi接続する「Wi-Fi Easy Connect」
- Wi-FiでVoIPを実現する音声伝達向け規格「Wi-Fi CERTIFIED Voice-Personal」
- Wi-Fi子機同士を直接接続する「Wi-Fi Direct」
- 高精度の屋内測位機能を提供する「Wi-Fi CERTIFIED Location」
- Wi-Fiで100μs精度の時刻同期ができる「Wi-Fi CERTIFIED TimeSync」
- 公衆Wi-Fiアクセスポイント向けの「Wi-Fi CERTIFIED Vantage」
- 同一LAN内移動時のローミングなどを規定した「Wi-Fi CERTIFIED Agile Multiband」
- 異なるESSIDのへの接続を高速化「Wi-Fi CERTIFIED Optimized Connectivity」
- 11axはCBRSとあわせて伸びる分野~Ruckus Networksインタビュー1
- 11axはCBRSとあわせて伸びる分野~Ruckus Networksインタビュー2