Apple、Intel、AMD、NVIDIA、Qualcomm、Armといった主要なサプライヤー6社のGPUを対象とした攻撃「GPU.zip」を発見したと、テキサス大学オースティン校の研究者らが発表しました。この攻撃によって、他のウェブサイトで表示されるユーザー名やパスワードなど個人情報のビジュアルデータを悪意のあるウェブサイトが読み取れるようになるとのことです。

GPU.zip

https://www.hertzbleed.com/gpu.zip/



GPU.zip: On the Side-Channel Implications of Hardware-Based Graphical Data Compression

(PDFファイル)https://www.hertzbleed.com/gpu.zip/GPU-zip.pdf



GPUs from all major suppliers are vulnerable to new pixel-stealing attack | Ars Technica

https://arstechnica.com/security/2023/09/gpus-from-all-major-suppliers-are-vulnerable-to-new-pixel-stealing-attack/

他のウェブサイトにホストされている広告、画像、その他のコンテンツを埋め込むことを可能にするHTML要素として、iframeが使われています。GPU.zipはこのiframe内に読み取りたいウェブページへのリンクを設置することで行う攻撃ですが、ブラウザはリソース取扱いに関するセキュリティの一環として「同一生成元ポリシー」を導入しており、本来はこの同一生成元ポリシーによってどちらかのサイトがもう一方のサイトのソースコードやコンテンツを検査することはできません。

しかし、研究チームによると、パフォーマンスを向上させるために内部GPUが使用するデータ圧縮から視覚データを抽出して盗み出すサイドチャネル攻撃が可能であることがわかったとのこと。iframeを用いたセキュリティ上の懸念は10年以上前から知られており、ほとんどのサイトではユーザー名やパスワード、その他の機密コンテンツを表示するページのクロスオリジンリソース共有のリクエストを制限しています。しかし、Wikipediaはログインしているユーザーのユーザー名が表示されてしまうなど、ごく一部のサイトでは制限されていないとのこと。

研究チームが行った概念実証では、Wikipediaユーザーのユーザー名を盗み出す実験が行われました。以下の画像の(a)がWikipediaにログインされた名前、(b)がAMD Ryzen 7 4800Uの内蔵GPUで再現した文字、(c)はIntel Core i7-8700の内蔵GPUで再現した文字です。研究チームは、AMD Ryzen 7 4800Uでは30分の攻撃で97%の精度の結果が、Intel Core i7-8700では215分の攻撃で98%の精度の結果が得られたと報告しています。研究チームによれば、Apple・Intel・AMD・NVIDIA・Qualcomm・ArmのGPUでGPU.zipを再現することができたとのこと。



GPU.zipは、「iframeでのクロスオリジンリソース共有を許可してCookieを読み込む」「iframe上でSVGフィルターをレンダリングできるようにする」「レンダリングタスクをGPUに任せる」という3つの段階で実行されます。そのため、GPU.zipはChromeあるいはEdgeなど、Chromiumエンジンのブラウザで実行されますが、FirefoxやSafariなど他のレンダリングエンジンのブラウザでは実行することができません。

テキサス大学オースティン校の研究者であるワン・インチェン氏は「データ圧縮はメモリ帯域幅を節約し、ブラウザのパフォーマンスを向上させるために行われます。データの圧縮率はデータに依存し、この最適化を悪用すれば、視覚情報を盗み出すサイドチャネル攻撃が可能になります」と述べています。

研究チームは概念実証のソースコードをGitHubに公開しています。研究チームは調査結果と概念実証のソースコードをApple、Intel、AMD、Nvidia、Arm、QualcommとGoogleに2023年3月に公開済みだそうですが、2023年9月時点でGPUベンダーは修正の適用に取り組んでおらず、Googleも問題の修正を行うかどうか、あるいはその方法を決定していないそうです。

GitHub - UT-Security/gpu-zip

https://github.com/UT-Security/gpu-zip



IT系ニュースサイトのArsTechnicaがGoogleに取材したところ、Googleは「私たちは報告を行っている研究者とコミュニケーションを取り、積極的に取り組んでいます。私たちは常にChromeユーザーの保護をさらに改善することを目指しています」と回答したものの、Chromeの動作を変更するかどうかへの言及は避けました。また、Intelは「根本原因はGPUではなく、サードパーティーのソフトウェアにあると判断しました。この問題はブラウザによって影響される問題で、ブラウザのアップデートによって解決できるため、当社の脅威には含まれておらず、変更の予定はありません」と回答しています。