アメリカの4つの大学の研究者が、データ圧縮を利用し、ウェブページ閲覧時に最新のグラフィックカードから機密性の高いビジュアルデータを流出させる新しいGPUサイドチャネル攻撃「GPU.zip」を開発した。
研究者らは、この「GPU.zip」攻撃が有効であることを、ChromeブラウザでクロスオリジンSVGフィルター・ピクセル・スティール攻撃を行うことで実証している。
研究者らは2023年3月に、影響を受けるビデオカードメーカーにこの脆弱性を公表した。しかし、2023年9月現在、影響を受けるGPUベンダー(AMD、Apple、Arm、NVIDIA、Qualcomm)やGoogle(Chrome)は、この問題に対処するパッチを展開していない。
この新たな欠陥は、テキサス大学オースティン校、カーネギーメロン大学、ワシントン大学、イリノイ大学アーバナ・シャンペーン校の研究者による論文で概説されており、第45回IEEE Symposium on Security and Privacyに掲載される。
データ圧縮を悪用した漏洩
一般的に、データ圧縮はデータに依存したDRAMトラフィックとキャッシュ使用率を明確にし、機密漏えいに悪用される可能性があるため、ソフトウェアは機密データを扱う際には圧縮をオフにする。
GPU.zipの研究者は、最新のGPU(グラフィック・プロセッサー・ユニット)、特にIntelとAMDの統合型チップはすべて、明示的に要求されていない場合でも、ソフトウェアで可視化されたデータ圧縮を実行すると説明している。
最新のGPUは、最適化戦略としてこの危険な慣行に従っており、これはメモリ帯域幅を節約し、ソフトウェアなしでパフォーマンスを向上させるのに役立つためだ。
この圧縮は多くの場合、文書化されておらず、ベンダー固有である。研究者たちは、これを悪用してGPUからビジュアルデータをリークする方法を発見したとのことだ。
具体的には、以下のように、様々なデバイスとGPUアーキテクチャ上でウェブブラウザを通じて個々のピクセルデータを抽出する攻撃を実演している。
概念実証攻撃では、Wikipediaのiframeからユーザー名を盗むことを実証しており、Ryzen GPUでは30分以内、Intel GPUでは215分以内に、それぞれ97%と98.3%の精度で可能である。
iframeはクロスオリジンのウェブページをホストし、そのピクセルは分離され、バイナリに変換される。
次に、これらのピクセルを拡大し、特殊なSVGフィルタースタックを適用して、圧縮可能か不可能かのテクスチャを作成する。テクスチャのレンダリングにかかる時間を測定することで、研究者たちはターゲットピクセルの元の色/状態を推測することができる。
以前、当サイトでデータ依存の実行を誘発するためにSVGフィルタを適用し、ターゲットのブラウザに表示されたコンテンツからピクセルを取得し、ナビゲーション履歴を推測する「Hot Pixels」と呼ばれる新しい攻撃を紹介したが、「Hot Pixels」が最新のプロセッサにおけるデータ依存の計算時間を悪用しているのに対して、「GPU.zip」は同様の結果を達成するために文書化されていないGPUデータ圧縮に依存している。
GPU.zipの重大性
GPU.zipは、AMD、Apple、Arm、Intel、Qualcomm、NVIDIAを含む、ほぼすべての主要なGPUメーカーに影響を与えりが、すべてのカードが同じように影響を受けるわけではない。
影響を受けたベンダーのいずれも、データ圧縮アプローチを最適化し、その動作を非センシティブなケースに限定することで問題を修正することを決定していないという事実が、リスクをさらに高めているのだ。
GPU.zipは、世界中のノートPC、スマートフォン、タブレット、デスクトップPCの大部分に影響を与える可能性があるが、攻撃を実行するために必要な複雑さと時間によって、ユーザーへの直接的な影響は限定されている。
また、クロスオリジン iframe 埋め込みを拒否しているウェブサイトは、この攻撃や同様のサイドチャネル攻撃によるユーザデータの漏えいに使用することは出来ない。
「ほとんどの機密性の高いウェブサイトは、すでにクロスオリジンサイトによる埋め込みを拒否しています。その結果、GPU.zipを使ったピクセル窃取攻撃には脆弱ではありません」と、研究チームのウェブサイト上のFAQで説明されている。
最後に研究者は、FirefoxとSafariはGPU.zipが動作するために必要なすべての基準を満たしていないと指摘している。例えば、クロスオリジンのiframeがクッキーでロードされることを許可する、iframe上でSVGフィルタをレンダリングする、レンダリングタスクをGPUに委譲する、などである。
論文
- Hertzbleed Attack: GPU.zip on the Side-Channel Implications of Hardware-Based Graphical Data Compression (PDF)
参考文献
研究の要旨
圧縮は、現代のコンピューティング・スタック全体でデータ移動を削減する最適化として広く導入されている。残念なことに、圧縮は、基礎となるデータの(潜在的に)きめ細かな機能を漏洩させるサイド・チャネル・リークの原因としても知られている。しかし、救いもある。圧縮は通常、ソフトウェアによって可視化される。本稿では、圧縮のソフトウェア透過的な利用の存在を実証し、それを利用することで、上記の従来の常識に挑戦する。具体的には、IntelとAMDの統合GPUは、ソフトウェアが特に圧縮を要求していない場合でも、ベンダー固有の文書化されていない方法でグラフィックデータを圧縮することを発見した。圧縮により、データに依存したDRAMトラフィックとキャッシュ使用率が発生しますが、これはサイドチャネル解析によって測定することができます。このサイドチャネルの有効性を、ブラウザを介したクロスオリジンSVGフィルタによるピクセル窃取攻撃によって示す。
Sources
- GPU.zip
コメントを残す